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

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

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

Nota

No-isolation shared é um modo de acesso herdado que não suporta o Unity Catalog.

Importante

Os scripts e bibliotecas Init têm suporte diferente entre modos de acesso e versões do Databricks Runtime. Consulte Onde os scripts init podem ser instalados? e Bibliotecas com escopo de cluster.

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. Estes são adicionais às limitações gerais para todo o modo de acesso do Catálogo Unity. Consulte Limitações gerais do Catálogo Unity.

Limitações refinadas de controle de acesso para o modo de acesso de usuário único do Unity Catalog

  • Não há suporte para modos de exibição dinâmicos.

  • Para ler a partir de uma vista, tem de ter SELECT em todas as tabelas e vistas referenciadas.

  • Não é possível aceder a uma tabela que tenha um filtro de linha ou uma máscara de coluna.

  • Não é possível usar uma computação de usuário único para consultar tabelas criadas por um pipeline Delta Live Tables habilitado para Unity Catalog, incluindo tabelas de streaming e exibições materializadas criadas no Databricks SQL. Para consultar tabelas criadas por um pipeline Delta Live Tables, você deve usar uma computação compartilhada usando o Databricks Runtime 13.3 LTS e superior.

Limitações de streaming para o modo de acesso de usuário único do Unity Catalog

  • O ponto de verificação assíncrono não é suportado no Databricks Runtime 11.3 LTS e inferior.

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

O modo de acesso compartilhado no Unity Catalog tem as seguintes limitações. Estes são adicionais às limitações gerais para todo o modo de acesso do Catálogo Unity. Consulte Limitações gerais do Catálogo Unity.

  • O Databricks Runtime ML e o Spark Machine Learning Library (MLlib) não são suportados.

  • Os trabalhos spark-submit não são suportados.

  • No Databricks Runtime 13.3 e superior, as linhas individuais não devem exceder o tamanho máximo de 128MB.

  • Quando usado com passagem de credenciais, os recursos do Catálogo Unity são desativados.

  • Não há suporte para contêineres personalizados.

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

  • A linguagem R não é suportada.
  • O Scala é suportado no Databricks Runtime 13.3 e superior.

Limitações da API do Spark para o modo de acesso compartilhado do Unity Catalog

  • Não há suporte para APIs RDD.
  • DBUtils e outros clientes que leem diretamente os dados do armazenamento em nuvem só são suportados quando você usa um local externo para acessar o local de armazenamento. Consulte Criar um local externo para conectar o armazenamento em nuvem ao Azure Databricks.
  • Spark Context (sc),spark.sparkContext, e sqlContext não são suportados para Scala em qualquer Databricks Runtime e não são suportados para Python no Databricks Runtime 14.0 e superior.
    • O Databricks recomenda o uso da spark variável para interagir com a SparkSession instância.
    • As seguintes sc funções também não são suportadas: emptyRDD, range, init_batched_serializer, parallelize, textFilesetLocalPropertysetSystemPropertysetJobGrouprunJobgetConfstopuiWebUrlunionhadoopRDDhadoopFilenewAPIHadoopRDDsequenceFilebinaryFilesnewAPIHadoopFilepickleFilewholeTextFilesbinaryRecords.

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

Importante

O suporte para UDFs Scala na computação habilitada para catálogo Unity com modo de acesso compartilhado está em Visualização pública.

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

  • UDFs do Hive não são suportados.

  • applyInPandas e mapInPandas não são suportados no Databricks Runtime 14.2 e inferior.

  • No Databricks Runtime 14.2 e superior, UDFs escalares Scala são suportados. Não há suporte para UDFs e UDAFs do Scala.

  • No Databricks Runtime 13.3 LTS e superior, UDFs escalares Python e UDFs Pandas são suportados. Outros UDFs do Python, incluindo UDAFs, UDTFs e Pandas no Spark não são suportados.

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

Limitações de streaming para o modo de acesso compartilhado do Unity Catalog

Nota

Algumas das opções Kafka listadas têm suporte limitado quando usadas para configurações com suporte no Azure Databricks. Consulte Processamento de fluxo com Apache Kafka e Azure Databricks.

  • Para Scala, foreach e foreachBatch não são suportados.
  • Para Python, foreachBatch tem novo comportamento no Databricks Runtime 14.0 e superior. Consulte Alterações de comportamento para foreachBatch no Databricks Runtime 14.0.
  • Para Scala, from_avro requer Databricks Runtime 14.2 ou superior.
  • applyInPandasWithState não é suportado.
  • Não há suporte para trabalhar com fontes de soquete.
  • O sourceArchiveDir deve estar no mesmo local externo que a fonte quando você usa option("cleanSource", "archive") com uma fonte de dados gerenciada pelo Unity Catalog.
  • Para fontes e coletores Kafka, as seguintes opções não são suportadas:
    • 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 são suportadas no Databricks Runtime 13.3 LTS e superior, mas não são suportadas no Databricks Runtime 12.2 LTS. Você só pode especificar locais externos gerenciados pelo Unity Catalog para estas opções:
    • kafka.ssl.truststore.location
    • kafka.ssl.keystore.location

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

  • Deve executar comandos em nós de computação como um usuário de baixo privilégio proibido de acessar partes confidenciais do sistema de arquivos.

  • No Databricks Runtime 11.3 LTS e inferior, você só pode criar conexões de rede para as portas 80 e 443.

  • Não é possível conectar-se ao serviço de metadados da instância ou ao Azure WireServer.

Limitações gerais do Catálogo Unity

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

Limitações de streaming para o Unity Catalog

  • O modo de processamento contínuo Apache Spark não é suportado. Consulte Processamento contínuo no Guia de programação de streaming estruturado do Spark.
  • StreamingQueryListener não é possível usar credenciais ou interagir com objetos gerenciados pelo Unity Catalog.

Consulte também Limitações de streaming para o modo de acesso de usuário único do Unity Catalog e Limitações de streaming para o modo de acesso compartilhado do Unity Catalog.

Para obter mais informações sobre streaming com o Unity Catalog, consulte Usando o catálogo Unity com streaming estruturado.