Desenvolva pipelines Delta Live Tables com pacotes de ativos Databricks

Os Pacotes de Ativos Databricks, também conhecidos simplesmente como pacotes, permitem validar, implantar e executar recursos do Azure Databricks programaticamente, como pipelines Delta Live Tables. Você também pode usar pacotes para gerenciar programaticamente trabalhos do Azure Databricks e trabalhar com MLOps Stacks. Consulte O que são Databricks Asset Bundles?.

Este artigo descreve um conjunto de etapas que você pode concluir a partir de sua máquina de desenvolvimento local para usar um pacote que gerencia programaticamente um pipeline Delta Live Tables.

Requisitos

  • Databricks CLI versão 0.218.0 ou superior. Para verificar a versão instalada da CLI do Databricks, execute o comando databricks -v. Para instalar a CLI do Databricks, consulte Instalar ou atualizar a CLI do Databricks.
  • O espaço de trabalho remoto deve ter arquivos de espaço de trabalho habilitados. Consulte O que são arquivos de espaço de trabalho?.

(Opcional) Instalar um módulo Python para suportar o desenvolvimento de pipeline local

O Databricks fornece um módulo Python para ajudar no desenvolvimento local do código de pipeline Delta Live Tables, fornecendo verificação de sintaxe, preenchimento automático e verificação de tipo de dados enquanto você escreve código no IDE.

O módulo Python para desenvolvimento local está disponível no PyPi. Para instalar o módulo, consulte Python stub for Delta Live Tables.

Decisão: Crie o pacote usando um modelo ou manualmente

Decida se deseja criar o pacote usando um modelo ou manualmente:

Criar o pacote usando um modelo

Nestas etapas, você cria o pacote usando o modelo de pacote padrão do Azure Databricks para Python. Estas etapas orientam você a criar um pacote que consiste em um bloco de anotações que define um pipeline Delta Live Tables, que filtra dados do conjunto de dados original. Em seguida, você valida, implanta e executa o pipeline implantado em seu espaço de trabalho do Azure Databricks.

Etapa 1: configurar a autenticação

Nesta etapa, você configura a autenticação entre a CLI do Databricks em sua máquina de desenvolvimento e seu espaço de trabalho do Azure Databricks. Este artigo pressupõe que você deseja usar a autenticação de usuário para máquina (U2M) OAuth e um perfil de configuração do Azure Databricks correspondente nomeado DEFAULT para autenticação.

Nota

A autenticação U2M é apropriada para experimentar essas etapas em tempo real. Para fluxos de trabalho totalmente automatizados, o Databricks recomenda que você use a autenticação OAuth máquina-a-máquina (M2M). Consulte as instruções de configuração da autenticação M2M em Autenticação.

  1. Use a CLI do Databricks para iniciar o gerenciamento de token OAuth localmente executando o seguinte comando para cada espaço de trabalho de destino.

    No comando a seguir, substitua <workspace-url> pela URL do Azure Databricks por espaço de trabalho, por exemplohttps://adb-1234567890123456.7.azuredatabricks.net.

    databricks auth login --host <workspace-url>
    
  2. A CLI do Databricks solicita que você salve as informações inseridas como um perfil de configuração do Azure Databricks. Pressione Enter para aceitar o nome de perfil sugerido ou digite o nome de um perfil novo ou existente. Qualquer perfil existente com o mesmo nome é substituído pelas informações que você inseriu. Você pode usar perfis para alternar rapidamente seu contexto de autenticação em vários espaços de trabalho.

    Para obter uma lista de quaisquer perfis existentes, em um terminal ou prompt de comando separado, use a CLI do Databricks para executar o comando databricks auth profiles. Para visualizar as configurações existentes de um perfil específico, execute o comando databricks auth env --profile <profile-name>.

  3. No navegador da Web, conclua as instruções na tela para fazer logon no espaço de trabalho do Azure Databricks.

  4. Para exibir o valor atual do token OAuth de um perfil e o carimbo de data/hora de expiração do token, execute um dos seguintes comandos:

    • databricks auth token --host <workspace-url>
    • databricks auth token -p <profile-name>
    • databricks auth token --host <workspace-url> -p <profile-name>

    Se você tiver vários perfis com o mesmo --host valor, talvez seja necessário especificar as --host opções e -p juntas para ajudar a CLI do Databricks a encontrar as informações corretas do token OAuth.

Etapa 2: Criar o pacote

Um pacote contém os artefatos que você deseja implantar e as configurações para os fluxos de trabalho que deseja executar.

  1. Use seu terminal ou prompt de comando para alternar para um diretório em sua máquina de desenvolvimento local que conterá o pacote gerado pelo modelo.

  2. Use a CLI Dataricks para executar o bundle init comando:

    databricks bundle init
    
  3. Para Template to use, deixe o valor padrão de default-python pressionando Enter.

  4. Para Unique name for this project, deixe o valor padrão de my_project, ou digite um valor diferente e pressione Enter. Isso determina o nome do diretório raiz para este pacote. Este diretório raiz é criado dentro do seu diretório de trabalho atual.

  5. Para Include a stub (sample) notebook, selecione no e pressione Enter. Isso instrui a CLI do Databricks a não adicionar um bloco de anotações de exemplo neste momento, pois o bloco de anotações de exemplo associado a essa opção não tem nenhum código Delta Live Tables.

  6. Para Include a stub (sample) DLT pipeline, deixe o valor padrão de yes pressionando Enter. Isso instrui a CLI do Databricks a adicionar um bloco de anotações de exemplo que tenha o código Delta Live Tables.

  7. Para Include a stub (sample) Python package, selecione no e pressione Enter. Isso instrui a CLI do Databricks a não adicionar arquivos de pacote de roda Python de exemplo ou instruções de compilação relacionadas ao seu pacote.

Passo 3: Explore o pacote

Para exibir os arquivos que o modelo gerou, alterne para o diretório raiz do pacote recém-criado e abra esse diretório com seu IDE preferido, por exemplo, Visual Studio Code. Os ficheiros de particular interesse incluem o seguinte:

  • databricks.yml: Este arquivo especifica o nome programático do pacote, inclui uma referência à definição de pipeline e especifica configurações sobre o espaço de trabalho de destino.
  • resources/<project-name>_job.yml e resources/<project-name>_pipeline.yml: Este arquivo especifica as configurações do pipeline.
  • src/dlt_pipeline.ipynb: Este arquivo é um bloco de anotações que, quando executado, executa o pipeline.

Para personalizar pipelines, os mapeamentos dentro de uma declaração de pipeline correspondem à carga útil de solicitação da operação de criação de pipeline, conforme definido em POST /api/2.0/pipelines na referência da API REST, expressa no formato YAML.

Etapa 4: Validar o arquivo de configuração do pacote do projeto

Nesta etapa, você verifica se a configuração do pacote é válida.

  1. No diretório raiz, use a CLI do Databricks para executar o bundle validate comando, da seguinte maneira:

    databricks bundle validate
    
  2. Se um resumo da configuração do pacote for retornado, a validação será bem-sucedida. Se algum erro for retornado, corrija-os e repita esta etapa.

Se você fizer alguma alteração no pacote após esta etapa, repita esta etapa para verificar se a configuração do pacote ainda é válida.

Etapa 5: Implantar o projeto local no espaço de trabalho remoto

Nesta etapa, você implanta o bloco de anotações local em seu espaço de trabalho remoto do Azure Databricks e cria o pipeline Delta Live Tables em seu espaço de trabalho.

  1. Use a CLI do Databricks para executar o bundle validate comando da seguinte maneira:

    databricks bundle deploy -t dev
    
  2. Verifique se o bloco de anotações local foi implantado: na barra lateral do espaço de trabalho do Azure Databricks, clique em Espaço de trabalho.

  3. Clique na pasta Users ><your-username>> .bundle<project-name>>> dev > files > src. O bloco de notas deve estar nesta pasta.

  4. Verifique se o pipeline foi criado: na barra lateral do seu espaço de trabalho do Azure Databricks, clique em Delta Live Tables.

  5. Na guia Delta Live Tables, clique em [dev <your-username>] <project-name>_pipeline.

Se você fizer alterações no pacote após esta etapa, repita as etapas 4 a 5 para verificar se a configuração do pacote ainda é válida e, em seguida, reimplantar o projeto.

Etapa 6: Executar o projeto implantado

Nesta etapa, você executa o pipeline Delta Live Tables em seu espaço de trabalho.

  1. No diretório raiz, use a CLI do Databricks para executar o bundle run comando, da seguinte forma, substituindo <project-name> pelo nome do seu projeto da Etapa 2:

    databricks bundle run -t dev <project-name>_pipeline
    
  2. Copie o valor que aparece em seu terminal e cole esse valor em seu navegador da Web para abrir seu espaço de Update URL trabalho do Azure Databricks.

  3. Em seu espaço de trabalho do Azure Databricks, depois que o pipeline for concluído com êxito, clique no modo de exibição taxi_raw e no modo filtered_taxis materializado para ver os detalhes.

Se você fizer alterações no pacote após esta etapa, repita as etapas 4 a 6 para verificar se a configuração do pacote ainda é válida, reimplantar o projeto e executar o projeto reimplantado.

Passo 7: Limpar

Nesta etapa, você exclui o bloco de anotações implantado e o pipeline do espaço de trabalho.

  1. No diretório raiz, use a CLI do Databricks para executar o bundle destroy comando, da seguinte maneira:

    databricks bundle destroy -t dev
    
  2. Confirme a solicitação de exclusão do pipeline: Quando solicitado a destruir recursos permanentemente, digite y e pressione Enter.

  3. Confirme a solicitação de exclusão do bloco de anotações: Quando solicitado a destruir permanentemente a pasta implantada anteriormente e todos os seus arquivos, digite y e pressione Enter.

  4. Se você também quiser excluir o pacote da sua máquina de desenvolvimento, agora você pode excluir o diretório local da Etapa 2.

Você chegou ao final das etapas para criar um pacote usando um modelo.

Criar o pacote manualmente

Nestas etapas, você cria o pacote desde o início. Estas etapas orientam você a criar um pacote que consiste em um bloco de anotações com diretivas Delta Live Tables incorporadas e a definição de um pipeline Delta Live Tables para executar esse bloco de anotações. Em seguida, você valida, implanta e executa o bloco de anotações implantado a partir do pipeline em seu espaço de trabalho do Azure Databricks.

Etapa 1: Criar o pacote

Um pacote contém os artefatos que você deseja implantar e as configurações para os fluxos de trabalho que deseja executar.

  1. Crie ou identifique um diretório vazio em sua máquina de desenvolvimento.
  2. Mude para o diretório vazio no terminal ou abra o diretório vazio no IDE.

Gorjeta

Seu diretório vazio pode ser associado a um repositório clonado gerenciado por um provedor Git. Isso permite que você gerencie seu pacote com controle de versão externo e colabore mais facilmente com outros desenvolvedores e profissionais de TI em seu projeto. No entanto, para ajudar a simplificar essa demonstração, um repositório clonado não é usado aqui.

Se você optar por clonar um repositório para esta demonstração, o Databricks recomenda que o repositório esteja vazio ou tenha apenas arquivos básicos, como README e .gitignore. Caso contrário, quaisquer arquivos pré-existentes no repositório podem ser desnecessariamente sincronizados com seu espaço de trabalho do Azure Databricks.

Etapa 2: Adicionar um bloco de anotações ao projeto

Nesta etapa, você adiciona um bloco de anotações ao seu projeto. Este bloco de notas faz o seguinte:

  • Lê dados de clickstream JSON brutos de conjuntos de dados Databricks em uma tabela Delta bruta na pipelines pasta dentro da pasta raiz DBFS do seu espaço de trabalho Azure Databricks.
  • Lê registros da tabela Delta bruta e usa uma consulta Delta Live Tables e expectativas para criar uma nova tabela Delta com dados limpos e preparados.
  • Executa uma análise dos dados preparados na nova tabela Delta com uma consulta Delta Live Tables.
  1. A partir da raiz do diretório, crie um arquivo com o nome dlt-wikipedia-python.py.

  2. Adicione o seguinte código ao ficheiro dlt-wikipedia-python.py:

    # Databricks notebook source
    import dlt
    from pyspark.sql.functions import *
    
    # COMMAND ----------
    json_path = "/databricks-datasets/wikipedia-datasets/data-001/clickstream/raw-uncompressed-json/2015_2_clickstream.json"
    
    # COMMAND ----------
    @dlt.table(
      comment="The raw wikipedia clickstream dataset, ingested from /databricks-datasets."
    )
    def clickstream_raw():
      return (spark.read.format("json").load(json_path))
    
    # COMMAND ----------
    @dlt.table(
      comment="Wikipedia clickstream data cleaned and prepared for analysis."
    )
    @dlt.expect("valid_current_page_title", "current_page_title IS NOT NULL")
    @dlt.expect_or_fail("valid_count", "click_count > 0")
    def clickstream_prepared():
      return (
        dlt.read("clickstream_raw")
          .withColumn("click_count", expr("CAST(n AS INT)"))
          .withColumnRenamed("curr_title", "current_page_title")
          .withColumnRenamed("prev_title", "previous_page_title")
          .select("current_page_title", "click_count", "previous_page_title")
      )
    
    # COMMAND ----------
    @dlt.table(
      comment="A table containing the top pages linking to the Apache Spark page."
    )
    def top_spark_referrers():
      return (
        dlt.read("clickstream_prepared")
          .filter(expr("current_page_title == 'Apache_Spark'"))
          .withColumnRenamed("previous_page_title", "referrer")
          .sort(desc("click_count"))
          .select("referrer", "click_count")
          .limit(10)
      )
    

Etapa 3: Adicionar um arquivo de esquema de configuração de pacote ao projeto

Se você estiver usando um IDE como Visual Studio Code, PyCharm Professional ou IntelliJ IDEA Ultimate que fornecem suporte para arquivos YAML e arquivos de esquema JSON, você pode usar seu IDE não apenas para criar o arquivo de esquema de configuração do pacote, mas para verificar a sintaxe e a formatação do arquivo de configuração do pacote do seu projeto e fornecer dicas de conclusão de código, como se segue. Observe que, embora o arquivo de configuração do pacote que você criará posteriormente na Etapa 5 seja baseado em YAML, o arquivo de esquema de configuração do pacote nesta etapa é baseado em JSON.

Visual Studio Code

  1. Adicione suporte ao servidor de idiomas YAML ao Visual Studio Code, por exemplo, instalando a extensão YAML do Visual Studio Code Marketplace.

  2. Gere o arquivo de esquema JSON de configuração do Databricks Asset Bundle usando a CLI do Databricks para executar o bundle schema comando e redirecionar a saída para um arquivo JSON. Por exemplo, gere um arquivo nomeado bundle_config_schema.json dentro do diretório atual, da seguinte maneira:

    databricks bundle schema > bundle_config_schema.json
    
  3. Observe que, mais adiante na Etapa 5, você adicionará o seguinte comentário ao início do arquivo de configuração do pacote, que associa o arquivo de configuração do pacote ao arquivo de esquema JSON especificado:

    # yaml-language-server: $schema=bundle_config_schema.json
    

    Nota

    No comentário anterior, se o arquivo de esquema JSON de configuração do Databricks Asset Bundle estiver em um caminho diferente, substitua bundle_config_schema.json pelo caminho completo para o arquivo de esquema.

PyCharm Profissional

  1. Gere o arquivo de esquema JSON de configuração do Databricks Asset Bundle usando a CLI do Databricks para executar o bundle schema comando e redirecionar a saída para um arquivo JSON. Por exemplo, gere um arquivo nomeado bundle_config_schema.json dentro do diretório atual, da seguinte maneira:

    databricks bundle schema > bundle_config_schema.json
    
  2. Configure o PyCharm para reconhecer o arquivo de esquema JSON de configuração do pacote e, em seguida, conclua o mapeamento do esquema JSON, seguindo as instruções em Configurar um esquema JSON personalizado.

  3. Observe que, mais tarde, na Etapa 5, você usará o PyCharm para criar ou abrir um arquivo de configuração de pacote. Por convenção, esse arquivo é chamado databricks.ymlde .

IntelliJ IDEA Ultimate

  1. Gere o arquivo de esquema JSON de configuração do Databricks Asset Bundle usando a CLI do Databricks para executar o bundle schema comando e redirecionar a saída para um arquivo JSON. Por exemplo, gere um arquivo nomeado bundle_config_schema.json dentro do diretório atual, da seguinte maneira:

    databricks bundle schema > bundle_config_schema.json
    
  2. Configure o IntelliJ IDEA para reconhecer o arquivo de esquema JSON de configuração do pacote e, em seguida, conclua o mapeamento do esquema JSON, seguindo as instruções em Configurar um esquema JSON personalizado.

  3. Observe que, mais tarde, na Etapa 5, você usará o IntelliJ IDEA para criar ou abrir um arquivo de configuração de pacote. Por convenção, esse arquivo é chamado databricks.ymlde .

Etapa 4: Configurar a autenticação

Nesta etapa, você configura a autenticação entre a CLI do Databricks em sua máquina de desenvolvimento e seu espaço de trabalho do Azure Databricks. Este artigo pressupõe que você deseja usar a autenticação de usuário para máquina (U2M) OAuth e um perfil de configuração do Azure Databricks correspondente nomeado DEFAULT para autenticação.

Nota

A autenticação U2M é apropriada para experimentar essas etapas em tempo real. Para fluxos de trabalho totalmente automatizados, o Databricks recomenda que você use a autenticação OAuth máquina-a-máquina (M2M). Consulte as instruções de configuração da autenticação M2M em Autenticação.

  1. Use a CLI do Databricks para iniciar o gerenciamento de token OAuth localmente executando o seguinte comando para cada espaço de trabalho de destino.

    No comando a seguir, substitua <workspace-url> pela URL do Azure Databricks por espaço de trabalho, por exemplohttps://adb-1234567890123456.7.azuredatabricks.net.

    databricks auth login --host <workspace-url>
    
  2. A CLI do Databricks solicita que você salve as informações inseridas como um perfil de configuração do Azure Databricks. Pressione Enter para aceitar o nome de perfil sugerido ou digite o nome de um perfil novo ou existente. Qualquer perfil existente com o mesmo nome é substituído pelas informações que você inseriu. Você pode usar perfis para alternar rapidamente seu contexto de autenticação em vários espaços de trabalho.

    Para obter uma lista de quaisquer perfis existentes, em um terminal ou prompt de comando separado, use a CLI do Databricks para executar o comando databricks auth profiles. Para visualizar as configurações existentes de um perfil específico, execute o comando databricks auth env --profile <profile-name>.

  3. No navegador da Web, conclua as instruções na tela para fazer logon no espaço de trabalho do Azure Databricks.

  4. Para exibir o valor atual do token OAuth de um perfil e o carimbo de data/hora de expiração do token, execute um dos seguintes comandos:

    • databricks auth token --host <workspace-url>
    • databricks auth token -p <profile-name>
    • databricks auth token --host <workspace-url> -p <profile-name>

    Se você tiver vários perfis com o mesmo --host valor, talvez seja necessário especificar as --host opções e -p juntas para ajudar a CLI do Databricks a encontrar as informações corretas do token OAuth.

Etapa 5: Adicionar um arquivo de configuração de pacote ao projeto

Nesta etapa, você define como deseja implantar e executar este bloco de anotações. Para esta demonstração, você deseja usar um pipeline Delta Live Tables para executar o bloco de anotações. Você modela esse objetivo dentro de um arquivo de configuração de pacote em seu projeto.

  1. Na raiz do diretório, use seu editor de texto favorito ou seu IDE para criar o arquivo de configuração do pacote. Por convenção, esse arquivo é chamado databricks.ymlde .
  2. Adicione o seguinte código ao databricks.yml arquivo, substituindo <workspace-url> pelo URL por espaço de trabalho, por exemplo https://adb-1234567890123456.7.azuredatabricks.net. Este URL tem de corresponder ao do seu .databrickscfg ficheiro:

Gorjeta

A primeira linha, começando com # yaml-language-server, só é necessária se o IDE a suportar. Consulte a Etapa 3 anterior para obter detalhes.

# yaml-language-server: $schema=bundle_config_schema.json
bundle:
  name: dlt-wikipedia

resources:
  pipelines:
    dlt-wikipedia-pipeline:
      name: dlt-wikipedia-pipeline
      development: true
      continuous: false
      channel: "CURRENT"
      photon: false
      libraries:
        - notebook:
            path: ./dlt-wikipedia-python.py
      edition: "ADVANCED"
      clusters:
        - label: "default"
          num_workers: 1

targets:
  development:
    workspace:
      host: <workspace-url>

Para personalizar pipelines, os mapeamentos dentro de uma declaração de pipeline correspondem à carga útil de solicitação da operação de criação de pipeline, conforme definido em POST /api/2.0/pipelines na referência da API REST, expressa no formato YAML.

Etapa 6: Validar o arquivo de configuração do pacote do projeto

Nesta etapa, você verifica se a configuração do pacote é válida.

  1. Use a CLI do Databricks para executar o bundle validate comando, da seguinte maneira:

    databricks bundle validate
    
  2. Se um resumo da configuração do pacote for retornado, a validação será bem-sucedida. Se algum erro for retornado, corrija-os e repita esta etapa.

Se você fizer alguma alteração no pacote após esta etapa, repita esta etapa para verificar se a configuração do pacote ainda é válida.

Etapa 7: Implantar o projeto local no espaço de trabalho remoto

Nesta etapa, você implanta o bloco de anotações local em seu espaço de trabalho remoto do Azure Databricks e cria o pipeline Delta Live Tables em seu espaço de trabalho.

  1. Use a CLI do Databricks para executar o bundle validate comando da seguinte maneira:

    databricks bundle deploy -t development
    
  2. Verifique se o bloco de anotações local foi implantado: na barra lateral do espaço de trabalho do Azure Databricks, clique em Espaço de trabalho.

  3. Clique na pasta Users >><your-username>.bundle > dlt-wikipedia > development > files. O bloco de notas deve estar nesta pasta.

  4. Verifique se o pipeline Delta Live Tables foi criado: na barra lateral do espaço de trabalho do Azure Databricks, clique em Fluxos de trabalho.

  5. Na guia Delta Live Tables, clique em dlt-wikipedia-pipeline.

Se você fizer alguma alteração no pacote após esta etapa, repita as etapas 6 a 7 para verificar se a configuração do pacote ainda é válida e, em seguida, reimplantar o projeto.

Etapa 8: Executar o projeto implantado

Nesta etapa, você executa o trabalho do Azure Databricks em seu espaço de trabalho.

  1. Use a CLI do Databricks para executar o bundle run comando, da seguinte maneira:

    databricks bundle run -t development dlt-wikipedia-pipeline
    
  2. Copie o valor que aparece em seu terminal e cole esse valor em seu navegador da Web para abrir seu espaço de Update URL trabalho do Azure Databricks.

  3. Em seu espaço de trabalho do Azure Databricks, depois que o pipeline Delta Live Tables for concluído com êxito e mostrar barras de título verdes nas várias exibições materializadas, clique no clickstream_raw, clickstream_prepared ou top_spark_referrers exibições materializadas para ver mais detalhes.

  4. Antes de iniciar a próxima etapa de limpeza, observe o local das tabelas Delta criadas no DBFS da seguinte maneira. Você precisará dessas informações se quiser limpar manualmente essas tabelas Delta mais tarde:

    1. Com o pipeline Delta Live Tables ainda aberto, clique no botão Configurações (ao lado dos botões Permissões e Agendamento ).
    2. Na área Destino, anote o valor do campo Local de armazenamento. É aqui que as tabelas Delta foram criadas no DBFS.

Se você fizer alterações no pacote após esta etapa, repita as etapas 6 a 8 para verificar se a configuração do pacote ainda é válida, reimplantar o projeto e executar o projeto reimplantado.

Passo 9: Limpar

Nesta etapa, você exclui o bloco de anotações implantado e o pipeline Delta Live Tables do seu espaço de trabalho.

  1. Use a CLI do Databricks para executar o bundle destroy comando, da seguinte maneira:

    databricks bundle destroy
    
  2. Confirme a solicitação de exclusão do pipeline Delta Live Tables: Quando solicitado a destruir recursos permanentemente, digite y e pressione Enter.

  3. Confirme a solicitação de exclusão do bloco de anotações: Quando solicitado a destruir permanentemente a pasta implantada anteriormente e todos os seus arquivos, digite y e pressione Enter.

A execução do bundle destroy comando exclui apenas o pipeline Delta Live Tables implantado e a pasta que contém o bloco de anotações implantado. Este comando não exclui nenhum efeito colateral, como as tabelas Delta que o bloco de anotações criou no DBFS. Se você precisar excluir essas tabelas Delta, deverá fazê-lo manualmente.

Adicionar uma definição de pipeline existente a um pacote

Você pode usar uma definição de pipeline Delta Live Tables existente como base para definir um novo pipeline em um arquivo de configuração de pacote. Para o fazer, conclua os seguintes passos.

Nota

As etapas a seguir criam um novo pipeline com as mesmas configurações do pipeline existente. No entanto, o novo pipeline tem um ID de pipeline diferente do pipeline existente. Não é possível importar automaticamente um ID de pipeline existente para um pacote.

Etapa 1: Obter a definição de pipeline existente no formato JSON

Nesta etapa, você usa a interface do usuário do espaço de trabalho do Azure Databricks para obter a representação JSON da definição de pipeline existente.

  1. Na barra lateral do seu espaço de trabalho do Azure Databricks, clique em Fluxos de trabalho.
  2. Na guia Delta Live Tables, clique no link Nome do pipeline.
  3. Entre os botões Permissões e Agendar , clique no botão Configurações .
  4. Clique no botão JSON .
  5. Copie o JSON da definição de pipeline.

Etapa 2: Converter a definição de pipeline do formato JSON para YAML

A definição de pipeline que você copiou da etapa anterior está no formato JSON. As configurações do pacote estão no formato YAML. Você deve converter a definição de pipeline do formato JSON para YAML. A Databricks recomenda os seguintes recursos para converter JSON em YAML:

Etapa 3: Adicionar a definição de pipeline YAML a um arquivo de configuração de pacote

No arquivo de configuração do pacote, adicione o YAML copiado da etapa anterior a um dos seguintes locais rotulados <pipeline-yaml-can-go-here> nos arquivos de configuração do pacote, da seguinte maneira:

resources:
  pipelines:
    <some-unique-programmatic-identifier-for-this-pipeline>:
      <pipeline-yaml-can-go-here>

targets:
  <some-unique-programmatic-identifier-for-this-target>:
    resources:
      pipelines:
        <some-unique-programmatic-identifier-for-this-pipeline>:
          <pipeline-yaml-can-go-here>

Etapa 4: Adicionar blocos de anotações, arquivos Python e outros artefatos ao pacote

Todos os arquivos Python e blocos de anotações referenciados no pipeline existente devem ser movidos para os códigos-fonte do pacote.

Para uma melhor compatibilidade com pacotes, os notebooks devem usar o formato de notebook IPython (.ipynb). Se você desenvolver o pacote localmente, poderá exportar um bloco de anotações existente de um espaço de trabalho do Azure Databricks para o .ipynb formato clicando em Arquivo > Exportar > Bloco de Anotações IPython da interface do usuário do bloco de anotações do Azure Databricks. Por convenção, você deve então colocar o bloco de anotações baixado src/ no diretório do seu pacote.

Depois de adicionar seus blocos de anotações, arquivos Python e outros artefatos ao pacote, certifique-se de que sua definição de pipeline faça referência a eles. Por exemplo, para um bloco de anotações com o nome do arquivo que está em um src/ diretório e o src/ diretório está na mesma pasta que o arquivo de configuração do pacote que faz referência ao src/ diretório, a definição de hello.ipynb pipeline pode ser expressa da seguinte forma:

resources:
  pipelines:
    hello-pipeline:
      name: hello-pipeline
      libraries:
      -
        notebook:
          path: ./src/hello.ipynb

Etapa 5: Validar, implantar e executar o novo pipeline

  1. Valide se os arquivos de configuração do pacote estão sintaticamente corretos, executando o seguinte comando:

    databricks bundle validate
    
  2. Implante o pacote executando o seguinte comando. Neste comando, substitua <target-identifier> pelo identificador programático exclusivo para o destino a partir da configuração do pacote:

    databricks bundle deploy -t <target-identifier>
    
  3. Execute o pipeline executando o seguinte comando. Neste comando, substitua o seguinte:

    • Substitua <target-identifier> pelo identificador programático exclusivo para o destino a partir da configuração do pacote.
    • Substitua <pipeline-identifier> por um identificador programático exclusivo para o pipeline a partir da configuração do pacote.
    databricks bundle run -t <target-identifier> <pipeline-identifier>