PGConf.Brasil 2025

João Pessoa, PB

3 a 5 de setembro


PostgreSQL: Disponibilidade, Escalabilidade e Transformação com dbt


Wuldson Franco Fernandes da Silva

NTT DATA, Inc.


Combine PostgreSQL com alta disponibilidade, escalabilidade e transformação de dados usando dbt para construir soluções modernas e eficientes.


Nos últimos anos, o PostgreSQL consolidou-se como uma das soluções mais versáteis e robustas para banco de dados, sendo amplamente adotado tanto em sistemas transacionais quanto analíticos. Ao mesmo tempo, ferramentas como o dbt (Data Build Tool) têm transformado a forma como engenheiros de dados constroem pipelines de transformação de dados, permitindo maior controle, documentação e testes automatizados. Nesta palestra, exploraremos como o PostgreSQL pode ser usado como backbone de uma arquitetura moderna de engenharia de dados, combinando alta disponibilidade, escalabilidade e pipelines de transformação com dbt.

Introdução ao Contexto
A explosão de dados nas empresas trouxe desafios significativos para equipes de tecnologia. Por um lado, é necessário garantir que os sistemas transacionais sejam altamente disponíveis e capazes de escalar horizontalmente para lidar com cargas crescentes de dados. Por outro, é essencial criar pipelines de dados analíticos claros, confiáveis e fáceis de manter. Esses dois mundos muitas vezes são tratados separadamente, mas o PostgreSQL oferece uma oportunidade única de unificar ambos. Com recursos nativos como replicações físicas e lógicas, índices avançados e integração com ferramentas externas como Patroni e Pgpool-II, o PostgreSQL pode servir como base para sistemas robustos e escaláveis. Além disso, sua compatibilidade com ferramentas modernas de engenharia de dados, como o dbt, permite criar pipelines de transformação eficientes e bem documentados.

PostgreSQL como Base Robusta
O primeiro passo para construir uma arquitetura moderna de engenharia de dados é garantir que o backbone seja sólido. O PostgreSQL oferece uma série de recursos nativos que podem ser usados para projetar sistemas de alta disponibilidade e escalabilidade:

Replicações Físicas e Lógicas : Exploraremos como configurar réplicas para garantir redundância e balanceamento de carga.
Patroni e Pgpool-II : Ferramentas podem ser usadas para gerenciar clusters PostgreSQL de forma automática e resiliente.
Escalabilidade Horizontal : Discutiremos estratégias para distribuir cargas de trabalho usando sharding ou ferramentas como Citus.
Esses recursos são essenciais para garantir que o sistema possa lidar com grandes volumes de dados sem comprometer a performance ou a disponibilidade.

Transformação de Dados com dbt
Com a infraestrutura de banco de dados pronta, o próximo passo é criar pipelines de transformação de dados. Aqui, o dbt entra em cena como uma ferramenta poderosa para engenheiros de dados:

Criação de Modelos Analíticos : Uso do SQL para criar tabelas modelo (dimensões e fatos) que seguem boas práticas de modelagem de dados.
Versionamento e Documentação : Exploraremos como o dbt gera automaticamente documentação e permite versionar código SQL, facilitando a colaboração entre equipes.
Testes Automatizados : Testes para garantir a qualidade dos dados, detectando inconsistências antes que elas impactem análises críticas.
Materialized Views e Índices no PostgreSQL : Recursos nativos do PostgreSQL, como materialized views e índices, para otimizar consultas frequentes em pipelines analíticos.

Conclusão
Ao combinar a robustez e escalabilidade do PostgreSQL com a flexibilidade e clareza do dbt, é possível criar uma solução moderna e eficiente para engenharia de dados. Esta abordagem não apenas atende às demandas de sistemas transacionais e analíticos, mas também simplifica a manutenção e melhora a qualidade dos dados. Ao final desta palestra, os participantes terão uma visão clara de como integrar PostgreSQL e dbt em seus próprios projetos, criando pipelines de dados modernos e confiáveis.

Patrocinadores Platina


Patrocinadores Ouro


Patrocinadores Prata


Patrocinadores Bronze


Apoio