Use código-fonte com controle de versão em um trabalho Databricks
O senhor pode executar o Job usando o Notebook ou o código Python localizado em um repositório Git remoto ou em uma pasta Databricks Git . Esse recurso simplifica a criação e o gerenciamento do trabalho de produção e automatiza a implementação contínua:
O senhor não precisa criar um repo de produção separado em Databricks, gerenciar suas permissões e mantê-lo atualizado.
O senhor pode evitar alterações não intencionais em um Job de produção, como edições locais no site de produção repo ou alterações provenientes da troca de um branch.
O processo de definição do trabalho tem uma única fonte de verdade no repositório remoto, e cada execução de trabalho está vinculada a um hash commit.
Para usar o código-fonte em um repositório Git remoto, o senhor deve configurar as pastas Git do Databricks (Repos).
Importante
Notebook criado por Databricks Job que a execução de Git repositórios remotos é efêmera e não é confiável para rastrear MLflow execuções, experimentos ou modelos. Ao criar um Notebook a partir de um Job, use um experimentoworkspace MLflow (em vez de um experimento Notebook MLflow ) e chame mlflow.set_experiment("/path/to/experiment")
no Notebook workspace antes de executar qualquer código de acompanhamento MLflow. Para obter mais detalhes, consulte Evitar a perda de dados em experimentos do MLflow.
Observação
Se o seu trabalho for executado usando uma entidade de serviço como identidade, o senhor poderá configurar a entidade de serviço na pasta Git que contém o código-fonte do trabalho. Consulte Usar uma entidade de serviço com pastas Git do Databricks.
Use um Notebook de um repositório remoto Git
Para criar uma tarefa com um Notebook localizado em um repositório Git remoto:
Clique em fluxo de trabalho na barra lateral e clique em ou vá para um trabalho existente e adicione uma nova tarefa.
Se este for um novo trabalho, substitua Add a name for your Job (Adicionar um nome para o trabalho ) pelo nome do trabalho.
Insira um nome para a tarefa no campo Nome da tarefa.
No menu suspenso Type (Tipo ), selecione Notebook.
No menu suspenso Source (Fonte ), selecione o provedor Git e clique em Edit (Editar ) ou Add a git reference (Adicionar uma referência git). A caixa de diálogo Git information é exibida.
Na caixa de diálogo Git information, insira os detalhes do repositório, incluindo o URL do repositório, o provedor Git e a referência Git. Essa referência do Git pode ser um branch, uma tag ou um commit.
Em Path (Caminho), digite um caminho relativo para o local do Notebook, como
etl/notebooks/
.Quando o senhor digitar o caminho relativo, não o inicie com
/
ou./
e não inclua a extensão do arquivo do Notebook, como.py
. Por exemplo, se o caminho absoluto para o Notebook que o senhor deseja acessar for/notebooks/covid_eda_raw.py
, digitenotebooks/covid_eda_raw
no campo Path (Caminho).Clique em Criar.
Importante
Se o senhor trabalhar com um Notebook Python diretamente de um repositório de código-fonte Git, a primeira linha do arquivo de código-fonte do Notebook deverá ser # Databricks notebook source
. Para um Notebook Scala, a primeira linha do arquivo de origem deve ser // Databricks notebook source
.
Use o código Python de um repositório Git remoto
Para criar uma tarefa com código Python localizado em um repositório Git remoto:
Clique em fluxo de trabalho na barra lateral e clique em ou vá para um trabalho existente e adicione uma nova tarefa.
Se este for um novo trabalho, substitua Add a name for your Job (Adicionar um nome para o trabalho ) pelo nome do trabalho.
Insira um nome para a tarefa no campo Nome da tarefa.
No menu suspenso Type (Tipo ), selecione Python script.
No menu suspenso Source (Fonte ), selecione o provedor Git e clique em Edit (Editar ) ou Add a git reference (Adicionar uma referência git). A caixa de diálogo Git information é exibida.
Na caixa de diálogo Git information, insira os detalhes do repositório, incluindo o URL do repositório, o provedor Git e a referência Git. Essa referência do Git pode ser um branch, uma tag ou um commit.
Em Path (Caminho), digite um caminho relativo para o local de origem, como
etl/python/python_etl.py
.Quando o senhor digitar o caminho relativo, não o inicie com
/
ou./
. Por exemplo, se o caminho absoluto para o código Python que o senhor deseja acessar for/python/covid_eda_raw.py
, digitepython/covid_eda_raw.py
no campo Path (Caminho).Clique em Criar.
Quando o senhor view o histórico de execução de uma tarefa que executa Python código armazenado em um repositório Git remoto, o painel de detalhes da execução da tarefa inclui Git detalhes, inclusive o commit SHA associado à execução.
Usar consultas SQL de um repositório Git remoto
Observação
Somente um comando SQL é aceito em um arquivo. Vários comandos SQL separados por ponto-e-vírgulas (;) não são permitidas.
Para executar consultas armazenadas em arquivos .sql
localizados em um repositório Git remoto:
Clique em fluxo de trabalho na barra lateral e clique em ou vá para um trabalho existente e adicione uma nova tarefa.
Se este for um novo trabalho, substitua Add a name for your Job (Adicionar um nome para o trabalho ) pelo nome do trabalho.
Insira um nome para a tarefa no campo Nome da tarefa.
No menu suspenso Type (Tipo ), selecione SQL.
No menu suspenso da tarefa SQL, selecione File.
No menu suspenso Source (Fonte ), selecione o provedor Git e clique em Edit (Editar ) ou Add a git reference (Adicionar uma referência git). A caixa de diálogo Git information é exibida.
Na caixa de diálogo Git information, insira os detalhes do repositório, incluindo o URL do repositório, o provedor Git e a referência Git. Essa referência do Git pode ser um branch, uma tag ou um commit.
Em Path (Caminho), digite um caminho relativo para o local de origem, como
queries/sql/myquery.sql
.Quando o senhor digitar o caminho relativo, não o inicie com
/
ou./
. Por exemplo, se o caminho absoluto da consulta SQL que o senhor deseja acessar for/sql/myqeury.sql
, digitesql/myquery.sql
no campo Path (Caminho).Selecione um SQL warehouse. O senhor deve selecionar um serverless SQL warehouse ou um pro SQL warehouse.
Clique em Criar.
Adicionar tarefa adicional de um repositório remoto Git
Tarefas adicionais em um trabalho multitarefa podem fazer referência ao mesmo commit no repositório remoto de uma das seguintes maneiras:
sha
de$branch/head
quandogit_branch
é definidosha
de$tag
quandogit_tag
é definidoo valor de
git_commit
O senhor pode misturar tarefas do Notebook e do Python em um trabalho do Databricks, mas elas devem usar a mesma referência do Git.
Usar uma pasta Git da Databricks
Se preferir usar a interface do usuário do Databricks para controlar a versão do seu código-fonte, clone seu repositório em uma pasta Git do Databricks. Para obter mais informações, consulte Opção 2: Configurar uma pasta de produção Git e automação Git .
Para adicionar um código do Notebook ou Python de uma pasta Git em uma tarefa de trabalho, no menu suspenso Source (Fonte ), selecione o espaço de trabalho e digite o caminho para o código do Notebook ou Python em Path (Caminho).
Acessar o Notebook a partir de um IDE
Se precisar acessar o Notebook a partir de um ambiente de desenvolvimento integrado, certifique-se de ter o comentário # Databricks notebook source
na parte superior do arquivo de código-fonte do Notebook. Para distinguir entre um arquivo Python normal e um Notebook Databricks Python-language exportado no formato de código-fonte, o Databricks adiciona a linha # Databricks notebook source
na parte superior do arquivo de código-fonte do Notebook. Quando o senhor importa o Notebook, o site Databricks o reconhece e o importa como um Notebook, e não como um módulo Python.
Solução de problemas
Observação
Git-based Job não oferecem suporte ao acesso de gravação aos arquivos workspace. Para gravar dados em um local de armazenamento temporário, use o armazenamento do driver. Para gravar dados persistentes de um Job Git, use um volume UC ou DBFS.
Mensagem de erro:
Run result unavailable: job failed with error message Notebook not found: path-to-your-notebook
Possíveis causas:
O Notebook não tem o comentário # Databricks notebook source
na parte superior do arquivo de código-fonte do Notebook ou, no comentário, notebook
está em maiúsculas quando deve começar com n
em minúsculas.