Limitações do modo de acesso de computação para o Unity Catalog

A Databricks recomenda o uso do Unity Catalog e do modo de acesso compartilhado para a maioria das cargas de trabalho. Este artigo descreve as limitações e os requisitos de cada modo de acesso com Unity Catalog. Para obter detalhes sobre os modos de acesso, consulte Modos de acesso.

Databricks recomenda o uso de políticas compute para simplificar as opções de configuração para a maioria dos usuários. Consulte Criar e gerenciar políticas em compute .

Observação

O compartilhamento sem isolamento é um modo de acesso herdado que não oferece suporte ao Unity Catalog.

Importante

O script init e a biblioteca têm suporte diferente nos modos de acesso e nas versões do Databricks Runtime. Consulte Onde o script de inicialização pode ser instalado? e biblioteca com escopo de clusters.

Limitações do modo de acesso de usuário único no Unity Catalog

O modo de acesso de usuário único no Unity Catalog tem as seguintes limitações. Estas são adicionais às limitações gerais para todos os modos de acesso Unity Catalog . Consulte Limitações gerais do Unity Catalog.

Não há suporte para controle de acesso refinado em um único usuário compute. Especificamente:

Para consultar a exibição dinâmica, a exibição na qual o senhor não tem SELECT nas tabelas e exibições subjacentes e as tabelas com filtros de linha ou máscaras de coluna, use um dos seguintes procedimentos:

  • A SQL warehouse.

  • compute com modo de acesso compartilhado.

limitações de transmissão para o modo de acesso de usuário único do Unity Catalog

  • O ponto de verificação assíncrono não tem suporte no Databricks Runtime 11.3 LTS e abaixo.

  • StreamingQueryListener É necessário o Databricks Runtime 15.1 ou o acima para usar credenciais ou interagir com objetos gerenciados pelo Unity Catalog em um único usuário compute.

Limitações do modo de acesso compartilhado no Unity Catalog

O modo de acesso compartilhado no Unity Catalog tem as seguintes limitações. Essas limitações são adicionais às limitações gerais de todos os modos de acesso do Unity Catalog. Consulte Limitações gerais para o Unity Catalog.

  • Databricks Runtime ML e Spark biblioteca do machine learning (MLlib) não são suportados.

  • Trabalhos de envio do Spark não são suportados.

  • Em Databricks Runtime 13.3 e acima, as linhas individuais não podem exceder 128 MB.

  • PySpark Os UDFs não podem acessar as pastas Git, os arquivos workspace ou os volumes para importar módulos em Databricks Runtime 14.2 e abaixo.

  • DBFS root e as montagens não são compatíveis com o FUSE.

Suporte de idioma para o modo de acesso compartilhado do Unity Catalog

  • R não é compatível.

  • Scala é suportado em Databricks Runtime 13.3 e acima.

    • Em Databricks Runtime 15.4 LTS e acima, todas as bibliotecas Java ou Scala (arquivosJAR ) incluídas em Databricks Runtime estão disponíveis em compute nos modos de acesso Unity Catalog.

    • Para Databricks Runtime 15.3 ou abaixo em compute que usa o modo de acesso compartilhado, defina a configuração Spark spark.databricks.scala.kernel.fullClasspath.enabled para true.

Spark API limitações e requisitos para o modo de acesso compartilhado Unity Catalog

  • Não há suporte para APIs RDD.

  • O DBUtils e outros clientes que leem diretamente os dados do armazenamento cloud só são compatíveis quando o senhor usa um local externo para acessar o local de armazenamento. Consulte Criar um local externo para conectar o armazenamento em nuvem à Databricks.

  • Spark Context (sc),spark.sparkContext e sqlContext não são suportados para Scala em nenhum Databricks Runtime e não são suportados para Python no Databricks Runtime 14.0 e acima.

    • A Databricks recomenda usar a variável spark para interagir com a instância SparkSession .

    • As seguintes funções sc também não são suportadas: emptyRDD, range, init_batched_serializer, parallelize, pickleFile, textFile, wholeTextFiles, binaryFiles, binaryRecords, sequenceFile, newAPIHadoopFile, newAPIHadoopRDD, hadoopFile, hadoopRDD, union, runJob, setSystemProperty, uiWebUrl, stop, setJobGroup, setLocalProperty, getConf.

  • As seguintes Scala dataset API operações requerem Databricks Runtime 15.4 LTS ou acima: map, mapPartitions, foreachPartition, flatMap, reduce e filter.

Limitações e requisitos do UDF para o modo de acesso compartilhado do Unity Catalog

As funções definidas pelo usuário (UDFs) têm as seguintes limitações com o modo de acesso compartilhado:

  • Não há suporte para UDFs do Hive.

  • applyInPandas e mapInPandas requerem Databricks Runtime 14.3 ou acima.

  • Scala Os UDFs escalares exigem o site Databricks Runtime 14.2 ou acima. Não há suporte para outros UDFs e UDAFs do Scala.

  • Em Databricks Runtime 14.2 e abaixo, o uso de uma versão personalizada de grpc, pyarrow ou protobuf em uma biblioteca PySpark UDF até Notebook-scoped ou cluster-scoped não é suportado porque a versão instalada é sempre a preferida. Para encontrar a versão da biblioteca instalada, consulte a seção System Environment (Ambiente do sistema) da versão específica do site Databricks Runtime notas sobre a versão.

  • Python Os UDFs escalares e os UDFs do site Pandas exigem o site Databricks Runtime 14.1 ou o acima.

  • Os UDFs não escalares Python e Pandas, incluindo UDAFs, UDTFs e Pandas em Spark, exigem Databricks Runtime 14.3 LTS ou acima.

Consulte Funções definidas pelo usuário (UDFs) no Unity Catalog.

limitações e requisitos de transmissão para o modo de acesso compartilhado Unity Catalog

Observação

Algumas das opções do Kafka listadas têm suporte limitado quando usadas em configurações compatíveis no Databricks. Todas as limitações listadas em Kafka são válidas tanto para o processamento de lotes quanto para o de transmissão. Veja o processamento da transmissão com Apache Kafka e Databricks.

  • Para o Scala, foreach, foreachBatch e FlatMapGroupWithState não são compatíveis.

  • Para Python, foreachBatch tem as seguintes alterações de comportamento em Databricks Runtime 14.0 e acima:

    • print() comando write output to the driver logs.

    • O senhor não pode acessar o submódulo dbutils.widgets dentro da função.

    • Todos os arquivos, módulos ou objetos referenciados na função devem ser serializáveis e estar disponíveis no Spark.

  • Para Scala, from_avro requer Databricks Runtime 14.2 ou acima.

  • applyInPandasWithState requer Databricks Runtime 14.3 LTS ou acima.

  • Não há suporte para trabalhar com fontes de soquete.

  • O sourceArchiveDir deve estar no mesmo local externo que a origem quando você usa option("cleanSource", "archive") com uma fonte de dados gerenciada pelo Unity Catalog.

  • Para fontes e sumidouros do Kafka, não há suporte para as seguintes opções:

    • kafka.sasl.client.callback.handler.class

    • kafka.sasl.login.callback.handler.class

    • kafka.sasl.login.class

    • kafka.partition.assignment.strategy

  • As seguintes opções do Kafka não são compatíveis com o Databricks Runtime 13.3 LTS e o acima, mas não são compatíveis com o Databricks Runtime 12.2 LTS. O senhor só pode especificar locais externos gerenciar por Unity Catalog para essas opções:

    • kafka.ssl.truststore.location

    • kafka.ssl.keystore.location

  • Para Scala, StreamingQueryListener requer Databricks Runtime 16.1 e acima.

  • Para Python, StreamingQueryListener requer Databricks Runtime 14.3 LTS ou acima para usar credenciais ou interagir com objetos gerenciados por Unity Catalog em compute compartilhado.

Limitações e requisitos de acesso à rede e ao sistema de arquivos para o modo de acesso compartilhado do Unity Catalog

  • O senhor deve executar o comando em compute nós como um usuário de baixo privilégio, proibido de acessar partes confidenciais do sistema de arquivos.

  • No Databricks Runtime 11.3 LTS e abaixo, só é possível criar ligações de rede às portas 80 e 443.

  • O senhor não pode se conectar ao serviço de metadados da instância ou a qualquer serviço em execução no site Databricks VPC.

Limitações gerais do Unity Catalog

As limitações a seguir se aplicam a todos os modos de acesso habilitados para o Unity Catalog.

limitações de transmissão para o Unity Catalog

  • O modo de processamento contínuo do Apache Spark não é compatível. Consulte Processamento Contínuo no Guia de Programação do Spark transmissão estruturada.

Consulte também as limitações de transmissão para o modo de acesso de usuário único Unity Catalog e as limitações e requisitos de transmissão para o modo de acesso compartilhado Unity Catalog .

Para obter mais informações sobre transmissão com o Unity Catalog, consulte Usando o Unity Catalog com transmissão estruturada.