Partilhar via


Gerenciar dependências Python para pipelines Delta Live Tables

O Delta Live Tables suporta dependências externas em seus pipelines. O Databricks recomenda o uso de um dos dois padrões para instalar pacotes Python:

  1. Use o %pip install comando para instalar pacotes para todos os arquivos de origem em um pipeline.
  2. Importe módulos ou bibliotecas do código-fonte armazenado em arquivos de espaço de trabalho. Consulte Importar módulos Python de pastas Git ou arquivos de espaço de trabalho.

O Delta Live Tables também suporta o uso de scripts init globais e com escopo de cluster. No entanto, essas dependências externas, particularmente scripts init, aumentam o risco de problemas com atualizações de tempo de execução. Para reduzir esses riscos, minimize o uso de scripts init em seus pipelines. Se o seu processamento exigir scripts init, automatize os testes do seu pipeline para detetar problemas antecipadamente. Se você usar scripts init, o Databricks recomenda aumentar a frequência de teste.

Importante

Como as bibliotecas JVM não são suportadas nos pipelines Delta Live Tables, não use um script init para instalar bibliotecas JVM. No entanto, você pode instalar outros tipos de biblioteca, como bibliotecas Python, com um script init.

Bibliotecas Python

Para especificar bibliotecas Python externas, use o %pip install comando magic. Quando uma atualização é iniciada, o Delta Live Tables executa todas as células que contêm um %pip install comando antes de executar qualquer definição de tabela. Cada notebook Python incluído no pipeline compartilha um ambiente de biblioteca e tem acesso a todas as bibliotecas instaladas.

Importante

  • %pip install os comandos devem estar em uma célula separada na parte superior do seu bloco de anotações de pipeline Delta Live Tables. Não inclua nenhum outro código em células que contenham %pip install comandos.
  • Como cada bloco de anotações em um pipeline compartilha um ambiente de biblioteca, não é possível definir diferentes versões de biblioteca em um único pipeline. Se o processamento exigir versões de biblioteca diferentes, você deverá defini-las em pipelines diferentes.

O exemplo a seguir instala a numpy biblioteca e a torna globalmente disponível para qualquer bloco de anotações Python no pipeline:

%pip install simplejson

Para instalar um pacote de roda Python, adicione o %pip install caminho da roda Python ao comando. Os pacotes de roda Python instalados estão disponíveis para todas as tabelas no pipeline. O exemplo a seguir instala um arquivo de roda Python nomeado dltfns-1.0-py3-none-any.whl a partir do diretório /dbfs/dlt/DBFS :

%pip install /dbfs/dlt/dltfns-1.0-py3-none-any.whl

Consulte Instalar um pacote de roda Python com %pip.

Posso usar bibliotecas Scala ou Java em um pipeline Delta Live Tables?

Não, Delta Live Tables suporta apenas SQL e Python. Não é possível usar bibliotecas JVM em um pipeline. A instalação de bibliotecas JVM causará um comportamento imprevisível e poderá romper com versões futuras do Delta Live Tables. Se o pipeline usar um script init, você também deverá garantir que as bibliotecas JVM não sejam instaladas pelo script.