Compartilhar via


Conectar-se ao dbt Core

Este artigo 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 saber mais, confira Conectar-se ao dbt Cloud.

O que é dbt?

O dbt (ferramenta de compilação de dados) é um ambiente de desenvolvimento para transformar dados gravando as instruções selecionadas. O dbt transforma essas instruções de seleção em tabelas e exibições. O dbt compila seu código em SQL bruto e, em seguida, executa esse código no banco de dados especificado em Azure Databricks. O dbt dá suporte aos padrões de codificação colaborativa e às melhores práticas, como 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 o carregamento". O dbt pressupõe que você já tem uma cópia dos seus dados em seu banco de dado.

O dbt Core permite escrever código dbt no editor de texto ou IDE de sua escolha no computador de desenvolvimento local e, em seguida, executa o dbt na linha de comando. O dbt Core inclui a CLI (interface de linha de comando) do dbt. A CLI do dbt é gratuita para uso e código-fonte aberto.

O 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 do dbt.

Requisitos de instalação

Antes de instalar o dbt Core, você deve instalar o seguinte no computador de desenvolvimento local:

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

Você também precisa de um dos seguintes para se autenticar:

  • (Recomendado) dbt Core habilitado como um aplicativo OAuth em sua conta. Isso é habilitado por padrão.

  • Um token de acesso pessoal

    Observação

    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 recomendará o uso de tokens de acesso pessoal pertencentes a entidades de serviço, em vez de usuários do workspace. Para criar tokens para entidades de serviço, consulte Gerenciar tokens para uma entidade de serviço.

Etapa 1: Instalar o adaptador dbt do Databricks

É recomendável usar um ambiente virtual do Python, pois ele isola as versões de pacote e as 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 do pacote 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 o computador de desenvolvimento local usar qualquer um dos seguintes sistemas operacionais, você deverá concluir as 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 de dbt e especificar e testar as configurações de conexão

Nesta etapa, você cria um projeto dbt, (uma coleção de diretórios e arquivos relacionados, necessários para usar o dbt). Em seguida, você configura seus perfis de conexão, que contêm as 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 de 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. Esse procedimento de exemplo cria um projeto chamado my_dbt_demo.

    dbt init my_dbt_demo
    
  2. Quando for solicitado que você escolha um banco dados databricks ou spark, insira o número que corresponde ao databricks.

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

    • Para um cluster, insira o valor do Nome do Host do Servidor na guia Opções Avançadas, JDBC/ODBC para o cluster do Azure Databricks.
    • Para um SQL warehouse, insira o valor do Nome do Host do Servidor na guia Detalhes da Conexão do seu SQL warehouse.
  4. Quando solicitado a inserir um valor http_path, 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 como o tipo de autenticação, insira o valor do token de acesso pessoal do Azure Databricks.

    Observação

    Como melhor prática de segurança, ao autenticar com ferramentas, sistemas, scripts e aplicativos automatizados, o Databricks recomenda que você use tokens de acesso pertencentes às entidades de serviço e não aos usuários do workspace. Para criar tokens para entidades de serviço, consulte Gerenciar tokens para uma entidade de serviço.

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

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

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

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

    Se você escolheu use oauth para o tipo de autenticação, adicione seu perfil de autenticação de computador para computador (M2M) ou U2M (usuário para computador) para profiles.yml.

    Para obter exemplos, confira Configurar o login do Azure Databricks a partir do dbt Core com o Microsoft Entra ID.

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

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

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

    Importante

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

    Será exibida uma saída semelhante à 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óximas etapas

Recursos adicionais