Partilhar via


Gerir as dependências do Python para os pipelines do 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 de inicialização 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 bibliotecas JVM não são suportadas 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 comando %pip install 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 comandos deverão estar numa célula separada no topo do seu notebook de pipeline Delta Live Tables. Não inclua nenhum outro código em células que contenham %pip install comandos.
  • Como cada notebook num pipeline partilha um ambiente das bibliotecas, não é possível definir diferentes versões de bibliotecas num ú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 chamado dltfns-1.0-py3-none-any.whl de um volume do Catálogo Unity:

%pip install /Volumes/my_catalog/my_schema/my_dlt_volume/dltfns-1.0-py3-none-any.whl

Consulte Instalar um pacote de roda Python com %pip.

Posso usar bibliotecas Scala ou Java num 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á comprometer 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.