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:

  1. Clique em fluxo de trabalho Icon fluxo de trabalho na barra lateral e clique em Botão criar job ou vá para um trabalho existente e adicione uma nova tarefa.

  2. Se este for um novo trabalho, substitua Add a name for your Job (Adicionar um nome para o trabalho ) pelo nome do trabalho.

  3. Insira um nome para a tarefa no campo Nome da tarefa.

  4. No menu suspenso Type (Tipo ), selecione Notebook.

  5. 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.

  6. 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, digite notebooks/covid_eda_raw no campo Path (Caminho).

  7. 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:

  1. Clique em fluxo de trabalho Icon fluxo de trabalho na barra lateral e clique em Botão criar job ou vá para um trabalho existente e adicione uma nova tarefa.

  2. Se este for um novo trabalho, substitua Add a name for your Job (Adicionar um nome para o trabalho ) pelo nome do trabalho.

  3. Insira um nome para a tarefa no campo Nome da tarefa.

  4. No menu suspenso Type (Tipo ), selecione Python script.

  5. 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.

  6. 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, digite python/covid_eda_raw.py no campo Path (Caminho).

  7. 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:

  1. Clique em fluxo de trabalho Icon fluxo de trabalho na barra lateral e clique em Botão criar job ou vá para um trabalho existente e adicione uma nova tarefa.

  2. Se este for um novo trabalho, substitua Add a name for your Job (Adicionar um nome para o trabalho ) pelo nome do trabalho.

  3. Insira um nome para a tarefa no campo Nome da tarefa.

  4. No menu suspenso Type (Tipo ), selecione SQL.

  5. No menu suspenso da tarefa SQL, selecione File.

  6. 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.

  7. 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, digite sql/myquery.sql no campo Path (Caminho).

  8. Selecione um SQL warehouse. O senhor deve selecionar um serverless SQL warehouse ou um pro SQL warehouse.

  9. 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 quando git_branch é definido

  • sha de $tag quando git_tag é definido

  • o 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.