Partilhar via


Conecte-se ao dbt Core

Este artcle explica o que é dbt, como instalar o dbt Core e como se conectar. A versão hospedada do dbt, chamada dbt Cloud também está disponível. Para obter mais informações, consulte Conectar-se ao dbt Cloud.

O que é dbt?

DBT (Data Build Tool) é um ambiente de desenvolvimento para transformar dados escrevendo instruções SELECT. DBT transforma essas instruções SELECT em tabelas e exibições. O dbt compila o seu código em SQL não processado e, em seguida, executa-o código na base de dados especificada no Azure Databricks. O DBT suporta padrões de codificação colaborativa e práticas recomendadas, incluindo controle de versão, documentação e modularidade.

O DBT não extrai nem carrega dados. O DBT se concentra apenas na etapa de transformação, usando uma arquitetura de "transformação após carregamento". O dbt assume que já tem uma cópia dos dados na sua base de dados.

O dbt Core permite que você escreva código dbt no IDE de sua escolha em sua máquina de desenvolvimento local e, em seguida, execute dbt a partir da linha de comando. O dbt Core inclui a interface de linha de comandos (CLI) do dbt. A CLI dbt é de uso livre e de código aberto.

dbt Core (e dbt Cloud) podem usar repositórios git hospedados. Para obter mais informações, consulte Criando um projeto dbt e Usando um projeto existente no site dbt.

Requisitos de instalação

Antes de instalar o dbt Core, você deve instalar o seguinte em sua máquina de desenvolvimento local:

  • Python 3.7 ou superior
  • Um utilitário para criar ambientes virtuais Python (como pipenv)

Você também precisa de uma das seguintes opções para autenticar:

  • (Recomendado) dbt Core ativado como um aplicativo OAuth em sua conta. Está ativado por predefinição.

  • Um token de acesso pessoal

    Nota

    Como prática recomendada de segurança quando você se autentica com ferramentas, sistemas, scripts e aplicativos automatizados, o Databricks recomenda que você use tokens OAuth.

    Se você usar a autenticação de token de acesso pessoal, o Databricks recomenda o uso de tokens de acesso pessoal pertencentes a entidades de serviço em vez de usuários do espaço de trabalho. Para criar tokens para entidades de serviço, consulte Gerenciar tokens para uma entidade de serviço.

Etapa 1: Instalar o adaptador dbt Databricks

Recomendamos o uso de um ambiente virtual Python porque ele isola versões de pacote e dependências de código para esse ambiente específico, independentemente das versões de pacote e dependências de código em outros ambientes. Isso ajuda a reduzir incompatibilidades inesperadas de versão de pacotes e colisões de dependência de código.

O Databricks recomenda a versão 1.8.0 ou superior do pacote dbt-databricks.

.. importante:: Se sua máquina de desenvolvimento local usa qualquer um dos seguintes sistemas operacionais, você deve concluir etapas adicionais primeiro: CentOS, MacOS, Ubuntu, Debian e Windows. Consulte a seção "Meu sistema operacional tem pré-requisitos" de Usar pip para instalar o dbt no site do dbt Labs.

Etapa 2: Criar um projeto dbt e especificar e testar as configurações de conexão

Crie um projeto dbt (uma coleção de diretórios e arquivos relacionados necessários para usar dbt). Em seguida, você configura seus perfis de conexão, que contêm configurações de conexão para uma computação do Azure Databricks, um SQL warehouse ou ambos. Para aumentar a segurança, os projetos e perfis dbt são armazenados em locais separados por padrão.

  1. Com o ambiente virtual ainda ativado, execute o comando dbt init com o nome do projeto. Este procedimento de exemplo cria um projeto chamado my_dbt_demo.

    dbt init my_dbt_demo
    
  2. Quando lhe for pedido para escolher uma databricks base de dados ou spark , introduza o número que corresponde a databricks.

  3. Quando for solicitado um host valor, faça o seguinte:

  4. Quando for solicitado um http_path valor, faça o seguinte:

  5. Para escolher um tipo de autenticação, insira o número que corresponde a use oauth (recomendado) ou use access token.

  6. Se você escolher use access token seu tipo de autenticação, insira o valor do seu token de acesso pessoal do Azure Databricks.

    Nota

    Como prática recomendada de segurança, quando você se autentica com ferramentas, sistemas, scripts e aplicativos automatizados, o Databricks recomenda que você use tokens de acesso pessoal pertencentes a entidades de serviço em vez de usuários do espaço de trabalho. Para criar tokens para entidades de serviço, consulte Gerenciar tokens para uma entidade de serviço.

  7. Quando for solicitado o desired Unity Catalog option valor, insira o número que corresponde a use Unity Catalog ou not use Unity Catalog.

  8. Se você optar por usar o Catálogo Unity, insira o valor desejado para catalog quando solicitado.

  9. Insira os valores desejados para schema e threads quando solicitado.

  10. DBT grava suas entradas em um profiles.yml arquivo. O local desse arquivo é listado na saída do dbt init comando. Você também pode listar esse local mais tarde executando o dbt debug --config-dir comando. Você pode abrir este arquivo agora para examinar e verificar seu conteúdo.

    Se você escolher use oauth o tipo de autenticação, adicione seu perfil de autenticação máquina-a-máquina (M2M) ou usuário-a-máquina (U2M) ao profiles.yml.

    Para obter exemplos, consulte Configurar o logon do Azure Databricks do dbt Core com a ID do Microsoft Entra.

    Databricks não recomenda especificar segredos diretamente profiles.yml . Em vez disso, defina o ID do cliente e o segredo do cliente como variáveis de ambiente.

  11. Confirme os detalhes da conexão executando o dbt debug my_dbt_demo comando no diretório.

    Se você escolher use oauth o tipo de autenticação, será solicitado que você entre com seu provedor de identidade.

    Importante

    Antes de começar, verifique se a computação ou o SQL warehouse está em execução.

    Deverá ver um resultado semelhante ao seguinte:

    cd my_dbt_demo
    dbt debug
    
    ...
    Configuration:
      profiles.yml file [OK found and valid]
      dbt_project.yml file [OK found and valid]
    
    Required dependencies:
      - git [OK found]
    
    Connection:
      ...
      Connection test: OK connection ok
    

Próximos passos

Recursos adicionais