Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este artigo descreve a sintaxe para declarar as dependências da biblioteca dos Pacotes de Ativos do Databricks. Os pacotes permitem o gerenciamento programático de trabalhos do Lakeflow. Veja que são pacotes de ativos do Databricks?.
Além de notebooks e arquivos de origem, seus trabalhos provavelmente dependerão de bibliotecas para funcionar conforme o esperado. As dependências de biblioteca são declaradas em seus arquivos de configuração de pacote e geralmente são necessárias como parte da especificação do tipo de tarefa de trabalho .
Os pacotes oferecem suporte para as seguintes dependências de biblioteca:
- Arquivo wheel do Python
- Arquivo JAR (Java ou Scala)
- Pacotes PyPI, Maven ou CRAN
Para o Python, você também pode especificar dependências de tarefa de trabalho em um arquivo requirements.txt e incluí-lo em seu pacote. Consulte Python requirements.txt.
Observação
Se há suporte para uma biblioteca depende da configuração do cluster e da origem da biblioteca. Para obter informações completas de suporte à biblioteca, consulte Instalar bibliotecas.
Arquivo wheel do Python
Para adicionar um arquivo wheel do Python a uma tarefa de trabalho, em libraries, especifique um mapeamento whl para cada biblioteca a ser instalada. Você pode instalar um arquivo wheel de arquivos do workspace, de volumes do Catálogo do Unity, de armazenamento de objetos na nuvem ou de um caminho de arquivo local.
Importante
As bibliotecas podem ser instaladas a partir do DBFS ao usar o Databricks Runtime 14.3 LTS e inferior. Porém, qualquer usuário do espaço de trabalho pode modificar os arquivos de biblioteca armazenados no DBFS. Para melhorar a segurança das bibliotecas em um workspace do Azure Databricks, o armazenamento de arquivos de biblioteca na raiz do DBFS foi preterido e desabilitado por padrão no Databricks Runtime 15.1 e em versões posteriores. Consulte O armazenamento de bibliotecas na raiz do DBFS é preterido e desabilitado por padrão.
Em vez disso, o Databricks recomenda carregar todas as bibliotecas, incluindo bibliotecas python, arquivos JAR e conectores Spark, para arquivos de workspace ou volumes do Catálogo do Unity ou usando repositórios de pacotes de biblioteca. Se sua carga de trabalho não der suporte a esses padrões, você também poderá usar bibliotecas armazenadas no armazenamento de objetos de nuvem.
O exemplo a seguir mostra como instalar três arquivos wheel do Python de uma tarefa de trabalho.
- O primeiro arquivo wheel do Python foi carregado anteriormente no workspace do Azure Databricks ou adicionado como um item
includenosyncmapeamento e está na mesma pasta local que o arquivo de configuração do pacote. - O segundo arquivo wheel do Python está no local de arquivos do workspace especificado no workspace do Azure Databricks.
- O terceiro arquivo wheel do Python foi carregado anteriormente no volume nomeado
my-volumeno workspace do Azure Databricks.
resources:
jobs:
my_job:
# ...
tasks:
- task_key: my_task
# ...
libraries:
- whl: ./my-wheel-0.1.0.whl
- whl: /Workspace/Shared/Libraries/my-wheel-0.0.1-py3-none-any.whl
- whl: /Volumes/main/default/my-volume/my-wheel-0.1.0.whl
Arquivo JAR (Java ou Scala)
Para adicionar um arquivo JAR a uma tarefa de trabalho, em libraries, especifique um mapeamento jar para cada biblioteca a ser instalada. Você pode instalar um JAR de volumes do Catálogo do Unity, armazenamento de objetos na nuvem ou um caminho de arquivo local.
Importante
As bibliotecas podem ser instaladas a partir do DBFS ao usar o Databricks Runtime 14.3 LTS e inferior. Porém, qualquer usuário do espaço de trabalho pode modificar os arquivos de biblioteca armazenados no DBFS. Para melhorar a segurança das bibliotecas em um workspace do Azure Databricks, o armazenamento de arquivos de biblioteca na raiz do DBFS foi preterido e desabilitado por padrão no Databricks Runtime 15.1 e em versões posteriores. Consulte O armazenamento de bibliotecas na raiz do DBFS é preterido e desabilitado por padrão.
Em vez disso, o Databricks recomenda carregar todas as bibliotecas, incluindo bibliotecas python, arquivos JAR e conectores Spark, para arquivos de workspace ou volumes do Catálogo do Unity ou usando repositórios de pacotes de biblioteca. Se sua carga de trabalho não der suporte a esses padrões, você também poderá usar bibliotecas armazenadas no armazenamento de objetos de nuvem.
O exemplo a seguir mostra como instalar um arquivo JAR que foi carregado anteriormente no volume nomeado my-volume no workspace do Azure Databricks.
resources:
jobs:
my_job:
# ...
tasks:
- task_key: my_task
# ...
libraries:
- jar: /Volumes/main/default/my-volume/my-java-library-1.0.jar
Para um exemplo de configuração que compila e implanta o JAR, veja o Pacote que envia um arquivo JAR para o Unity Catalog. Para obter um tutorial que cria um projeto de pacote que compila e implanta um JAR do Scala, consulte Criar um JAR scala usando pacotes de ativos do Databricks.
Pacote PyPi
Para adicionar um pacote PyPI a uma definição de tarefa do trabalho, em libraries, especifique um mapeamento pypi para cada pacote PyPI a ser instalado. Para cada mapeamento, especifique o seguinte:
- Para
package, especifique o nome do pacote PyPI a ser instalado. Também há suporte para uma especificação de versão exata opcional. - Opcionalmente, para
repo, especifique o repositório onde o pacote PyPI pode ser encontrado. Se não for especificado, o índice depippadrão será usado (https://pypi.org/simple/).
O exemplo a seguir mostra como instalar dois pacotes PyPI.
- O primeiro pacote PyPI usa a versão do pacote especificado e o índice padrão
pip. - O segundo pacote PyPI usa a versão do pacote especificado e o índice explicitamente especificado
pip.
resources:
jobs:
my_job:
# ...
tasks:
- task_key: my_task
# ...
libraries:
- pypi:
package: wheel==0.41.2
- pypi:
package: numpy==1.25.2
repo: https://pypi.org/simple/
Pacote do Maven
Para adicionar um pacote Maven a uma definição de tarefa do trabalho, em libraries, especifique um mapeamento maven para cada pacote Maven a ser instalado. Para cada mapeamento, especifique o seguinte:
- Para
coordinates, especifique as coordenadas Maven no estilo Gradle para o pacote. - Opcionalmente, para
repo, especifique o repositório Maven do qual instalar o pacote Maven. Se omitido, o Repositório Central do Maven e o Repositório de Pacotes Spark serão pesquisados. - Opcionalmente, para
exclusions, especifique quaisquer dependências a serem excluídas explicitamente. Consulte exclusões de dependência do Maven.
O exemplo a seguir mostra como instalar dois pacotes Maven.
- O primeiro pacote do Maven usa as coordenadas de pacote especificadas e procura por esse pacote no Repositório Central do Maven e no Repositório de Pacotes do Spark.
- O segundo pacote Maven usa as coordenadas de pacote especificadas, pesquisa esse pacote somente no Repositório Central do Maven e não inclui nenhuma das dependências desse pacote que correspondam ao padrão especificado.
resources:
jobs:
my_job:
# ...
tasks:
- task_key: my_task
# ...
libraries:
- maven:
coordinates: com.databricks:databricks-sdk-java:0.8.1
- maven:
coordinates: com.databricks:databricks-dbutils-scala_2.13:0.1.4
repo: https://mvnrepository.com/
exclusions:
- org.scala-lang:scala-library:2.13.0-RC*
requirements.txt do Python
As dependências da biblioteca do Python também podem ser especificadas em um requirements*.txt arquivo incluído como parte da definição da tarefa de trabalho. O caminho para o arquivo pode ser um caminho local, um caminho do workspace ou um caminho do volume do Catálogo do Unity.
resources:
jobs:
my_job:
# ...
tasks:
- task_key: my_task
# ...
libraries:
- requirements: ./local/path/requirements.txt