Integre dbt e Looker: Modo Dev Simplificado

Integre dbt e Looker: Modo Dev Simplificado

Integração Eficaz: dbt e Looker com Atributos de Usuário

A filosofia por trás de ferramentas como dbt e Looker é clara: capacitar analistas a trabalharem diretamente com código. Utilizando ambas as plataformas há algum tempo, a integração entre elas se mostra robusta e intuitiva. A prática comum envolve a criação de modelos de dados no dbt e, subsequentemente, o direcionamento das visualizações do Looker para esses modelos.

O Desafio do Modo de Desenvolvimento

Embora essa abordagem padrão seja amplamente adotada, ela apresenta uma limitação significativa: o modo de desenvolvimento. Tanto dbt quanto Looker oferecem ambientes isolados para desenvolvimento e produção, permitindo que os analistas testem suas alterações sem impactar o ambiente produtivo. Contudo, a integração nativa entre os modos de desenvolvimento de ambas as ferramentas era inexistente, gerando dificuldades.

Tradicionalmente, o dbt gerencia essa separação através de esquemas de banco de dados distintos. Usuários que utilizam tanto dbt quanto Looker acabavam por modificar manualmente o `sql_table_name` em todas as views do Looker para apontar para o esquema de desenvolvimento. Essa prática, além de trabalhosa, acarretava um risco considerável de erros, com o potencial de expor referências ao esquema de desenvolvimento em produção, causando bugs e frustração no fluxo de trabalho.

A Solução: Atributos de Usuário do Looker

Felizmente, existe uma solução elegante e eficaz para esse desafio. O Looker dispõe de uma funcionalidade chamada Atributos de Usuário, que permite aos administradores definir variáveis customizadas. Essas variáveis, que podem ter valores padrão baseados em grupos de usuários e ser sobrescritas individualmente, são referenciadas no LookML. Ao utilizarmos essa funcionalidade, podemos facilmente alternar entre os ambientes de desenvolvimento e produção para um usuário específico, impactando todas as suas visualizações do Looker.

Configuração Passo a Passo

Passo 1: Criar o Atributo de Usuário

Para iniciar, acesse ‘Administração’ >> ‘Atributos de Usuário’ e clique em ‘Criar Atributo de Usuário’. Crie um atributo denominado ‘Esquema dbt’. É crucial configurar os valores corretamente, garantindo que cada um atenda aos requisitos de funcionamento.

Em seguida, defina um ‘Valor de Grupo’ para o grupo ‘Todos os Usuários’. Este grupo engloba todas as contas de usuário e servirá como valor padrão. O valor deve corresponder ao nome do seu esquema de produção, que em muitos casos é ‘analytics’. Lembre-se que esta etapa requer permissões de administrador na sua instância do Looker.

Passo 2: Referenciar o Atributo no LookML

Com o atributo de usuário criado, o próximo passo é incorporá-lo à propriedade `sql_table_name` de cada view em seu projeto Looker. A maneira mais eficiente de fazer isso é utilizando a função ‘Localizar e Substituir’. Substitua todas as referências ao seu esquema de produção pela sintaxe {{_user_attributes['dbt_schema']}}.

Após essa alteração, todo o SQL gerado pelo Looker passará a responder dinamicamente ao esquema definido no atributo de usuário ‘dbt_schema’.

Passo 3: Alternar para o Modo Desenvolvedor

A verdadeira praticidade dessa integração se revela ao alternar para o modo de desenvolvimento. Basta sobrescrever o valor do atributo de usuário ‘dbt_schema’. Navegue até ‘Administração’ >> ‘Atributos de Usuário’, clique em ‘Editar’ no atributo ‘dbt_schema’ e insira o nome do seu esquema de desenvolvimento.

Com essa configuração, a transição entre os ambientes de desenvolvimento e produção se torna uma operação de poucos segundos. O risco de enviar acidentalmente código para a produção com referências incorretas ao esquema de desenvolvimento é drasticamente reduzido, garantindo um fluxo de trabalho mais seguro e eficiente.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *