DATA ENGINEERING

Estruturando um ambiente de Self-Service BI com DBT — Parte 1

Como estruturamos uma solução para dar mais autonomia aos analistas de dados aqui na Afya utilizando-se de DBT + Redshift

Leandro Carnevali
afya

--

Há muito tempo se fala em Self-Service BI (Business Intelligence), que é uma abordagem dentro da área de dados que dá mais liberdade o time de negócio/produto para explorar os dados e criar dashboards, sem depender de profissionais mais técnicos.

O intuito deste texto trazer uma visão mais conceitual, mas fique tranquilo que nos próximos artigos vamos tratar do técnico, sobre como nós do time de engenharia de dados estamos "pavimentando" o uso do Self Service BI usando a ferramenta DBT.

No entanto, antes de prosseguirmos é relevante compreender o nosso contexto aqui na Afya e como estamos estruturados como time de Dados.

Afya

A Afya — que significa “saúde e bem-estar” no dialeto africano suaíli — nasceu da união da NRE Educacional, maior grupo de faculdades de Medicina do país (criado em 1999), com a MEDCEL, marca de cursos preparatórios para prova de residência medica. A primeira faculdade do grupo começou a operar em Tocantins, no Norte do país.

Em 2019 estreou na bolsa Nasdaq e a partir de 2020 através de uma estrutura de CVC (Corporate Venture Capital), iniciou a aquisição e fusão de várias healthtechs para então estruturar a Afya Digital Health, estrutura no qual trabalho atualmente sendo o Data Lead Engineer no pilar de Decisões Clínicas.

Mas como estruturamos o time de dados…

Temos uma diretoria de Dados dentro da Afya sendo que nesta diretoria temos 4 Chapters que atuam de maneira Cross entre as B.U.s (Unidades de negócio) com o objetivo de maximizar a sinergia entre os negócios.

Estes 4 Chapters são:

  • Data Product
  • Ciência de Dados
  • Análise de Dados
  • Engenharia de Dados

Este time trabalha em dois tipos de estrutura, no squad de dados com um direcionamento mais técnica e formado por integrantes de todos os chapters e no squad de produtos com seus times multifuncionais e mais direcionados ao negócio, tendo a participação especificamente de analistas e cientista de dados.

Agora voltando ao Self Service BI...

Dentro desta estrutura que temos, muitas vezes a velocidade no qual squad de produtos precisa de informações não consegue ser atendido pelo squad de dados. Logo, para conseguirmos fazer a escala necessária para os times de produtos, um ambiente com mais autonomia é primordial!

Abaixo, para facilitar a compreensão, podemos ver como o processo funciona atualmente, o time de engenharia não apenas insere os dados no Data Lake, mas também é responsável por criar os datasets no Data Warehouse para que o time de análise de dados possa elaborar os dashboards para as áreas de negócio. Detalhe importante: todo o entendimento do negócio para o dataset que será criado foi feito pelo time de análise.

Sendo assim, como primeira medida para o Self Service BI, faz mais sentido dispormos de uma ferramenta que dê mais autonomia ao time de análise para criarem os seus datasets. Considerando as soluções que foram incorporadas juntos as healthtechs pelas aquisições feitas pela Afya, o DBT, que já era utilizado pela iClinic, se mostrou mais promissor, pois além da transformação de dados, a ferramenta também é muito completa no que diz respeito à documentação, o que resulta em uma melhor Governança. Afinal uma coisa que aprendi, não existe Self Service BI sem Governança de Dados!

Com isso construímos a arquitetura, tendo a nossa engenheira Alice Thomaz como responsável pelo desenho da solução, que envolve a integração do DBT Cloud como ferramenta para orquestrar os nossos pipelines de transformação ao nosso Data Warehouse, um cluster AWS Redshift. Todos os códigos dos modelos que serão executados ficam no nosso repositório no Gitlab.

Para o desenvolvimento, usamos um container Ubuntu e fazemos toda a instalação e configuração do DBT, o que envolve também fazer o Pull do repositório dentro deste container, para assim podermos testar localmente os modelos criados para o DBT nas máquinas dos engenheiros/analistas e uma vez o modelo validado e homologado, abrimos um Merge Request para o repositório.

Ficou interessado em como estruturamos o nosso repositório, como fizemos a integração ao Redshift, como criamos um container para o desenvolvimento local? Não perca a parte 2 deste artigo que será lançado no mês que vem!

Para trocar uma ideia, dar a sua opinião ou sugerir algo, basta entrar em contato comigo pelo LinkedIn. Se você quer fazer parte do maior ecossistema médico do país, com as principais tecnologias do mercado de dados e em um ambiente propício a inovação, vem pra Afya!

--

--

Leandro Carnevali
afya
Writer for

Data Lead Engineer | Inovação & Tendências | Lifelong Learner