Limitações da computação sem servidor
Prévia
Esse recurso está em Pré-lançamento público.
Este artigo explica as limitações atuais do serverless compute para Notebook e Job. Ele começa com uma visão geral das considerações mais importantes e, em seguida, fornece uma lista de referência abrangente das limitações.
Visão geral das limitações
Antes de criar novas cargas de trabalho ou migrar cargas de trabalho para serverless compute, considere primeiro as seguintes limitações:
Python e SQL são as únicas linguagens suportadas.
Somente as APIs de conexão do Spark são compatíveis. Não há suporte para as APIs do Spark RDD.
JAR biblioteca não são suportados. Para soluções alternativas, consulte Práticas recomendadas para serverless compute .
serverless compute tem acesso irrestrito a todos os usuários do site workspace.
Notebook tags não são suportados.
Para a transmissão, somente a lógica de lotes incrementais pode ser usada. Não há suporte para default ou intervalos de acionamento baseados em tempo. Veja as limitações de transmissão.
Limitações Lista de referências
As seções a seguir listam as limitações atuais do site serverless compute.
serverless compute é baseado na arquitetura compute compartilhada. As limitações mais relevantes herdadas do compute compartilhado estão listadas abaixo, juntamente com outras limitações específicas do serverless. Para obter uma lista completa das limitações do compute compartilhado, consulte compute access mode limitations for Unity Catalog.
Limitações gerais
Não há suporte para Scala e R.
ANSI SQL é o default ao escrever SQL. Optar por sair do modo ANSI definindo
spark.sql.ansi.enabled
comofalse
.Não há suporte para as APIs do Spark RDD.
Não há suporte para Spark Context (sc),
spark.sparkContext
esqlContext
.
O terminal da Web não é compatível.
Nenhuma consulta pode ser executada por mais de 48 horas.
O senhor deve usar o site Unity Catalog para se conectar a uma fonte de dados externa. Use locais externos para acessar o armazenamento em nuvem.
O suporte para fontes de dados é limitado a AVRO, BINARYFILE, CSV, DELTA, JSON, Kafka, ORC, PARQUET, ORC, TEXT, e XML.
As funções definidas pelo usuário (UDFs) não podem acessar a Internet. Por esse motivo, o comando CREATE FUNCTION (External) não é compatível. A Databricks recomenda o uso de CREATE FUNCTION (SQL e Python) para criar UDFs.
As linhas individuais não devem exceder o tamanho máximo de 128 MB.
O site Spark UI não está disponível. Em vez disso, use o perfil de consulta para view informações sobre suas consultas Spark. Consulte Perfil de consulta.
Spark logs não estão disponíveis ao usar serverless Notebook e Job. Os usuários só têm acesso aos logs de aplicativos do lado do cliente.
O acesso entreworkspace é permitido somente se o espaço de trabalho estiver na mesma região e o destino workspace não tiver um IP ACL ou um PrivateLink front-end configurado.
Não há suporte para a visualização temporária global. A Databricks recomenda o uso de exibições temporárias de sessão ou a criação de tabelas em que a passagem de dados entre sessões é necessária.
limitações de transmissão
Não há suporte para default ou intervalos de acionamento baseados em tempo. Somente
Trigger.AvailableNow
é suportado. Consulte Configurar intervalos de acionamento da transmissão estruturada.Todas as limitações de transmissão no modo de acesso compartilhado também se aplicam. Consulte as limitações e os requisitos de transmissão para o modo de acesso compartilhado Unity Catalog .
Limitações do aprendizado de máquina
O Databricks Runtime for Machine Learning e o Apache Spark MLlib não são compatíveis.
Não há suporte para GPUs.
Limitações do notebook
O notebook tem acesso a 8 GB de memória que não pode ser configurada.
Notebook-As bibliotecas com escopo não são armazenadas em cache nas sessões de desenvolvimento.
compartilhamento de tabelas TEMP e visualização quando não há suporte para o compartilhamento de um Notebook entre usuários.
Não há suporte para o preenchimento automático e o Variable Explorer para quadros de dados no Notebook.
Limitações do fluxo de trabalho
O tamanho do driver para serverless compute for Job é fixo no momento e não pode ser alterado.
A tarefa logs não é isolada por tarefa execução. logs conterá a saída de várias tarefas.
tarefa biblioteca não são compatíveis com o site Notebook tarefa. Em vez disso, use Notebook-scoped biblioteca. Consulte Notebook-scoped Python biblioteca.
Limitações específicas do computador
Não há suporte para os seguintes recursos específicos do site compute:
compute políticas
computeScript de inicialização com escopo -scópico
computeBiblioteca com escopo, incluindo fonte de dados personalizada e extensões do site Spark. Em vez disso, use Notebook-scoped biblioteca.
compute-Configurações de acesso a dados em nível, incluindo o perfil da instância. Como consequência, o acesso a tabelas e arquivos via HMS em caminhos cloud ou com montagens DBFS que não tenham credenciais incorporadas não funcionará.
instânciaPools
compute evento logs
A maioria das configurações de Apache Spark compute . Para obter uma lista das configurações compatíveis, consulte Parâmetros de configuração do Spark compatíveis.
variável de ambiente. Em vez disso, o site Databricks recomenda o uso de widgets para criar parâmetros de trabalho e tarefa.
Limitações de cache
O Dataframe e o cache SQL APIs não são compatíveis com o serverless compute. O uso de qualquer um desses APIs ou SQL comando resultará em uma exceção.
Hive limitações
Não há suporte para as tabelas Hive SerDe. Além disso, não há suporte para o comando LOAD DATA correspondente, que carrega dados em uma tabela Hive SerDe. O uso do comando resultará em uma exceção.
O suporte para fontes de dados é limitado a AVRO, BINARYFILE, CSV, DELTA, JSON, Kafka, ORC, PARQUET, ORC, TEXT, e XML.
Não há suporte para variáveis de colmeia (por exemplo,
${env:var}
,${configName}
,${system:var}
espark.sql.variable
) ou referências a variáveis de configuração que usem a sintaxe${var}
. O uso de variáveis do Hive resultará em uma exceção.Em vez disso, use DECLARE VARIABLE, SET VARIABLE e referências a variáveis de sessão SQL e marcadores de parâmetros ('?' ou ':var') para declarar, modificar e referenciar o estado da sessão. Você também pode usar a cláusula IDENTIFIER para parametrizar nomes de objetos em muitos casos.