Curso Arquitetura Database Greenplum
32 horasVisão Geral
O curso Arquitetura Database Greenplum oferece uma imersão técnica completa no funcionamento interno e no uso avançado do banco de dados Greenplum, um sistema de gerenciamento de banco de dados analítico massivamente paralelo (MPP) baseado em PostgreSQL, projetado para processar grandes volumes de dados de forma distribuída e escalável.
Ao longo do curso, os participantes terão contato direto com os componentes fundamentais da arquitetura Greenplum, incluindo o mecanismo de distribuição de dados baseado em hash, segmentação, execução paralela de queries, particionamento físico e design de tabelas columnar e heap. O conteúdo também abrange tópicos avançados como modelagem física, desnormalização para performance, tuning de queries analíticas, funções OLAP, operadores de conjuntos e manutenção com ANALYZE e VACUUM.
Além disso, o curso cobre detalhadamente os aspectos da linguagem SQL aplicados ao Greenplum, com ênfase em agregações distribuídas, estratégias de join eficientes, funções estatísticas e operações de transformação de dados. Os alunos aprendem a projetar arquiteturas de banco eficientes para cargas analíticas em larga escala, com ênfase em performance, paralelismo e balanceamento de carga.
Durante a formação, será construído um ambiente de dados realista para execução de um projeto prático, no qual os participantes aplicarão as melhores práticas de modelagem e execução de queries distribuídas, permitindo não apenas o entendimento conceitual, mas também a capacitação técnica para atuar em ambientes produtivos de dados em cluster.
Este curso é essencial para profissionais que desejam dominar os aspectos arquitetônicos, operacionais e práticos do Greenplum para soluções de Data Warehousing, Data Lakehouse e plataformas analíticas modernas em larga escala.
Objetivo
Após realizar este curso Arquitetura Database Greenplum, você será capaz de:
- Compreender profundamente a arquitetura distribuída do Greenplum
- Projetar e otimizar estruturas de tabelas em ambientes massivamente paralelos
- Trabalhar com técnicas de distribuição, hashing e modelagem física
- Escrever SQL eficiente para ambientes analíticos com grandes volumes de dados
- Usar funções analíticas e estatísticas para exploração de dados
- Aplicar estratégias de manutenção e análise de desempenho no Greenplum
Publico Alvo
- Administradores de banco de dados (DBAs)
- Engenheiros e arquitetos de dados
- Cientistas de dados e analistas de BI
- Desenvolvedores SQL e engenheiros de software
- Profissionais de Big Data que usam bancos MPP
Pre-Requisitos
- Conhecimentos básicos de banco de dados relacional
- Familiaridade com linguagem SQL
- Noções de modelagem de dados
Materiais
Inglês/Português/Lab PráticoConteúdo Programatico
Módulo 1 – Introduction to the Greenplum Architecture
- Visão geral do Greenplum Database
- Arquitetura MPP (Massively Parallel Processing)
- Master e Segment Instances
- Interação com o Query Planner e Executor
Módulo 2 – Greenplum Table Structures
- Tipos de tabelas no Greenplum: Heap, Append-Only, Columnar
- Criação e gerenciamento de tabelas
- Considerações de desempenho e uso
Módulo 3 – Hashing and Data Distribution
- Estratégias de distribuição de dados
- Distribuição por HASH e RANDOM
- Impacto no desempenho de joins e agregações
Módulo 4 – The Technical Details
- Sistema de arquivos e armazenamento
- Interações com o planner
- Internals do GPDB e logs
Módulo 5 – Physical Database Design
- Modelagem física no Greenplum
- Estratégias de particionamento e segmentação
- Armazenamento em disco e impacto na performance
Módulo 6 – Denormalization
- Quando desnormalizar no Greenplum
- Modelagem dimensional e schema flat
- Trade-offs entre normalização e desempenho
Módulo 7 – Nexus for Greenplum
- Integração com Nexus (caso aplicável)
- Visualização de execução de queries
- Ferramentas de tuning via Nexus
Módulo 8 – The Basics of SQL
- Revisão das principais cláusulas SQL
- Sintaxe SELECT, INSERT, UPDATE, DELETE
- Ordenação e paginação de resultados
Módulo 9 – The WHERE Clause
- Uso correto da cláusula WHERE
- Filtros condicionais e operadores lógicos
- Indexação e filtragem eficiente
Módulo 10 – Distinct vs. Group By
- Diferenças entre DISTINCT e GROUP BY
- Casos de uso e impacto na performance
- Exemplo prático em ambientes MPP
Módulo 11 – Aggregation
- Funções de agregação básicas (SUM, COUNT, AVG, etc.)
- Agrupamentos por múltiplas colunas
- Agregações com HAVING e filtros
Módulo 12 – Join Functions
- Tipos de JOINs suportados
- Estratégias de execução em joins distribuídos
- Hash Join vs Merge Join no Greenplum
Módulo 13 – Conversions and Formatting
- Conversão de tipos de dados (CAST, ::)
- Formatação de strings, datas e números
- Boas práticas e tratamento de erros
Módulo 14 – OLAP Functions
- Funções analíticas (OVER, RANK, NTILE, LAG, LEAD)
- Partições e ordenações em funções OLAP
- Casos de uso em relatórios e análise
Módulo 15 – Substrings and Positioning Functions
- Manipulação de strings com funções nativas
- SUBSTRING, POSITION, LENGTH, REPLACE, REGEXP
- Eficiência em consultas de texto
Módulo 16 – Set Operators Functions
- UNION, INTERSECT, EXCEPT
- Regras de compatibilidade entre conjuntos
- Casos práticos com grandes volumes
Módulo 17 – Table Create and Data Types
- Comando CREATE TABLE em detalhes
- Tipos de dados suportados e suas peculiaridades
- Restrições, chaves e constraints
Módulo 18 – ANALYZE and VACUUM
- Importância da coleta de estatísticas
- Quando e como usar ANALYZE
- Limpeza e manutenção com VACUUM FULL vs VACUUM FREEZE
Módulo 19 – Statistical Aggregate Functions
- STDDEV, VARIANCE, COVAR, CORR
- Aplicações estatísticas no Greenplum
- Exemplo com análise exploratória de dados
Módulo 20 – Projeto Prático Final
- Desafio com modelagem, carga e análise
- Criação de estruturas otimizadas
- Execução e análise de queries complexas
- Apresentação de resultados e tuning