SlideShare uma empresa Scribd logo
1 de 32
AWS REDSHIFT
PRIMER
...ou como um Data Warehouse pode complementar sua
estratégia de dados e trazer impacto no seu negócio
através de analytics (sem te levar à falência)
MATEUS AUBIN
Desenvolvedor desde 2008
Cloud e Big Data desde 2014
Mestre em Computação Aplicada 2019
DATA WAREHOUSE
… mas o que é isso?
APENAS MAIS UM BANCO DE DADOS
centrado na aplicação
transacional
cadastros
tempo de resposta
dados normalizados (3NF)
centrado no negócio
analítico
eventos
volume de dados
star / snowflake schema
RELACIONAL DATA WAREHOUSE
IT’S ALL ABOUT
ANALYTICS
REDSHIFT
… vamos ao que interessa
Amazon Redshift is a fast, fully managed data
warehouse that makes it simple and cost-effective to
analyze all your data using standard SQL and your
existing Business Intelligence (BI) tools. It allows you
to run complex analytic queries against petabytes of
structured data, using sophisticated query
optimization, columnar storage on high-performance
local disks, and massively parallel query execution.
Amazon Redshift is a fast, fully managed data
warehouse that makes it simple and cost-effective to
analyze all your data using standard SQL and your
existing Business Intelligence (BI) tools. It allows you
to run complex analytic queries against petabytes of
structured data, using sophisticated query
optimization, columnar storage on high-performance
local disks, and massively parallel query execution.
DIFERENTES “SABORES”
2 vCPU
15 GB
0.16 TB
$ 0.25 / h
4 vCPU
31 GB
2 TB
$ 0.85 / h
36 vCPU
244 GB
16 TB
$ 6.80 / h
32 vCPU
244 GB
2.56 TB
$ 4.80 / h
DIFERENTES “SABORES”
2 vCPU
15 GB
0.16 TB
$ 0.25 / h
4 vCPU
31 GB
2 TB
$ 0.85 / h
36 vCPU
244 GB
16 TB
$ 6.80 / h
32 vCPU
244 GB
2.56 TB
$ 4.80 / h
DIFERENTES “SABORES”
2 vCPU
15 GB
0.16 TB
$ 0.25 / h
4 vCPU
31 GB
2 TB
$ 0.85 / h
36 vCPU
244 GB
16 TB
$ 6.80 / h
32 vCPU
244 GB
2.56 TB
$ 4.80 / h
GERENCIADO
RESIZE
1. Coloca o cluster em
READ-ONLY
2. Provisiona um novo cluster
3. Redistribui os dados
4. Aponta o DNS para o novo
cluster
5. Descarta o cluster antigo
BACKUPS
• Direto para o S3
• Sem impacto de performance
• Ocorre a cada:
• 5 GB modificados
• 8 horas
• Manual
MANUTENÇÃO
• Atualizações de S.O.
• Atualizações de Aplicação
• Otimização do Stack
• Painel de Monitoramento
• Health Check
• Substituição de Nodes
CONCEITOS
… desvendando o mistério por trás da performance
CONCEITOS
COLUMNAR
STORAGE
• Reduz I/O
• Lê apenas aquilo
que precisa
• Favorece a
compressão
COMPRESSION
• Reduz I/O
• Mais eficaz por
conta da estrutura
colunar
• Reduz o espaço
ocupado
SORT KEY(S)
• Zone Maps
• Evita I/O
desnecessário
• Ordenação física
dos registros
DISTRIBUTION
KEY
• Particionamento
entre Nodes
• Três estilos
• ALL
• KEY
• EVEN
CONCEITOS
COLUMNAR
STORAGE
• Reduz I/O
• Lê apenas aquilo
que precisa
• Favorece a
compressão
CONCEITOS
COMPRESSION
• Reduz I/O
• Mais eficaz por
conta da estrutura
colunar
• Reduz o espaço
ocupado
CONCEITOS
SORT KEY(S)
• Zone Maps
• Evita I/O
desnecessário
• Ordenação física
dos registros
CONCEITOS
DISTRIBUTION
KEY
• Particionamento
entre Nodes
• Três estilos
• ALL
• KEY
• EVEN
KEY ALL EVEN
A PARTE RUIM
… porque nada é perfeito
...WE'RE NOT IN
KANSAS ANYMORE
TRANSAÇÕES
• Nada de
ISOLATION LEVELS
• Tudo é
SERIALIZABLE
• Two-phase commit
por ser um sistema
distribuído com
replicação
CONSTRAINTS
• PRIMARY KEY,
FOREIGN KEY,
UNIQUE
• Não são
“enforçadas”
• No entanto são
usadas pelo
optimizer
VACUUM
• Blocos são
imutáveis e
deletes são
lógicos
• Reorganiza os
dados na tabela
• “Devolve” o espaço
em disco
APENAS DADOS
• Lógica só na
aplicação
• Não suporta
IF, WHILE,
ou qualquer outra
estrutura de código
CONTUDO.....
(GERENCIADO)
ROI INDIRETO ATRAVÉS DE
MELHORIAS REALIZADAS
PELA AWS
performance
for commits
performance for
repeated queries
query processing (subqueries
& complex analytical queries)
resource management for
memory-intensive queries
string manipulation
STATISTICS
automatically updates table
statistics on your cluster via the
new Auto Analyze feature
VACUUM
automatically runs in the
background to reclaim the
space freed by deleted rows
CONTUDO.....
(GERENCIADO)
FLEET
TELEMETRY
On a fleet-wide basis, repetitive queries
are 17x faster, deletes are 10x faster,
single-row inserts are 3x faster, and
commits are 2x faster
CONCURRENCY
SCALING
Concurrency Scaling is a new
feature in Amazon Redshift that
adds transient capacity when
needed, to handle heavy demand
from concurrent users and queries
CONTUDO.....
(GERENCIADO)
O QUE NÃO FOI DITO
… pois rende uma talk exclusiva
O QUE NÃO FOI DITO
WORKLOAD
MANAGEMENT
• Gerenciamento de prioridades
• Filas e Classes de Serviços
• Níveis de concorrência
• Alocação de memória
• Timeouts
SPECTRUM
• Consultas direto do S3
• Integração com Data Lake
• Mescla dados do DW com
arquivos no S3
• Poder computacional proporcional
ao tamanho dos dados, não
necessariamente do cluster
REFERÊNCIAS
https://aws.amazon.com/redshift/
https://aws.amazon.com/data-warehouse/
https://www.healthcatalyst.com/database-vs-data-warehouse-a-comparative-
review/2/
https://www.slideshare.net/AmazonWebServices/aws-webcast-33652878
https://www.slideshare.net/AmazonWebServices/deep-dive-on-amazon-redshift-
72473281
https://www.slideshare.net/AmazonWebServices/amazon-redshift-deep-dive-
62439649
https://www.slideshare.net/AmazonWebServices/abd304rbest-practices-for-data-
warehousing-with-amazon-redshift-spectrum
https://docs.aws.amazon.com/redshift/latest/dg/vacuum-managing-volume-of-
unmerged-rows.html
https://docs.aws.amazon.com/redshift/latest/mgmt/rs-mgmt-cluster-version-
notes.html
https://twitter.com/Werner/status/1061056953399439360
https://www.allthingsdistributed.com/2018/11/amazon-redshift-performance-
optimization.html
AWS REDSHIFT
PRIMER
...ou como um Data Warehouse pode complementar sua
estratégia de dados e trazer impacto no seu negócio
através de analytics (sem te levar à falência)

Mais conteúdo relacionado

Mais procurados

Otimização holistica de ambiente computacional
Otimização holistica de ambiente computacionalOtimização holistica de ambiente computacional
Otimização holistica de ambiente computacionalRodrigo Campos
 
Alto desempenho com banco de dados MySQL
Alto desempenho com banco de dados MySQLAlto desempenho com banco de dados MySQL
Alto desempenho com banco de dados MySQLJonas Silveira
 
Terraform + Kops + Kubernetes na AWS
Terraform + Kops + Kubernetes na AWSTerraform + Kops + Kubernetes na AWS
Terraform + Kops + Kubernetes na AWSLeandro Freitas
 
Aplicando processamento paralelo em instruções SQL
Aplicando processamento paralelo em instruções SQLAplicando processamento paralelo em instruções SQL
Aplicando processamento paralelo em instruções SQLpichiliani
 
Bancos de dados analíticos open source
Bancos de dados analíticos open sourceBancos de dados analíticos open source
Bancos de dados analíticos open sourceMatheus Espanhol
 
TDC2010 - Trilha Python: Python no iG (Automação de Datacenters)
TDC2010 - Trilha Python: Python no iG (Automação de Datacenters)TDC2010 - Trilha Python: Python no iG (Automação de Datacenters)
TDC2010 - Trilha Python: Python no iG (Automação de Datacenters) iG - Internet Group do Brasil S/A
 
Microsoft Azure Storage - Tudo o que você precisa saber sobre armazenamento d...
Microsoft Azure Storage - Tudo o que você precisa saber sobre armazenamento d...Microsoft Azure Storage - Tudo o que você precisa saber sobre armazenamento d...
Microsoft Azure Storage - Tudo o que você precisa saber sobre armazenamento d...Lucas A. Romão
 
Arquitetando Soluções de Dados com PostgreSQL
Arquitetando Soluções de Dados com PostgreSQLArquitetando Soluções de Dados com PostgreSQL
Arquitetando Soluções de Dados com PostgreSQLRaul Oliveira
 
Tuning Apache/MySQL/PHP para desenvolvedores
Tuning Apache/MySQL/PHP para desenvolvedoresTuning Apache/MySQL/PHP para desenvolvedores
Tuning Apache/MySQL/PHP para desenvolvedoresDouglas V. Pasqua
 
Disaster Recovery usando Windows Server 2012 R2, Microsoft System Center 2012...
Disaster Recovery usando Windows Server 2012 R2, Microsoft System Center 2012...Disaster Recovery usando Windows Server 2012 R2, Microsoft System Center 2012...
Disaster Recovery usando Windows Server 2012 R2, Microsoft System Center 2012...Daniel Donda - MVP
 
Arquitetura de Memoria do PostgreSQL
Arquitetura de Memoria do PostgreSQLArquitetura de Memoria do PostgreSQL
Arquitetura de Memoria do PostgreSQLRaul Oliveira
 

Mais procurados (13)

Otimização holistica de ambiente computacional
Otimização holistica de ambiente computacionalOtimização holistica de ambiente computacional
Otimização holistica de ambiente computacional
 
Alto desempenho com banco de dados MySQL
Alto desempenho com banco de dados MySQLAlto desempenho com banco de dados MySQL
Alto desempenho com banco de dados MySQL
 
Terraform + Kops + Kubernetes na AWS
Terraform + Kops + Kubernetes na AWSTerraform + Kops + Kubernetes na AWS
Terraform + Kops + Kubernetes na AWS
 
Performance em Java
Performance em JavaPerformance em Java
Performance em Java
 
Aplicando processamento paralelo em instruções SQL
Aplicando processamento paralelo em instruções SQLAplicando processamento paralelo em instruções SQL
Aplicando processamento paralelo em instruções SQL
 
Bancos de dados analíticos open source
Bancos de dados analíticos open sourceBancos de dados analíticos open source
Bancos de dados analíticos open source
 
TDC2010 - Trilha Python: Python no iG (Automação de Datacenters)
TDC2010 - Trilha Python: Python no iG (Automação de Datacenters)TDC2010 - Trilha Python: Python no iG (Automação de Datacenters)
TDC2010 - Trilha Python: Python no iG (Automação de Datacenters)
 
Microsoft Azure Storage - Tudo o que você precisa saber sobre armazenamento d...
Microsoft Azure Storage - Tudo o que você precisa saber sobre armazenamento d...Microsoft Azure Storage - Tudo o que você precisa saber sobre armazenamento d...
Microsoft Azure Storage - Tudo o que você precisa saber sobre armazenamento d...
 
Arquitetando Soluções de Dados com PostgreSQL
Arquitetando Soluções de Dados com PostgreSQLArquitetando Soluções de Dados com PostgreSQL
Arquitetando Soluções de Dados com PostgreSQL
 
Tuning Apache/MySQL/PHP para desenvolvedores
Tuning Apache/MySQL/PHP para desenvolvedoresTuning Apache/MySQL/PHP para desenvolvedores
Tuning Apache/MySQL/PHP para desenvolvedores
 
Disaster Recovery usando Windows Server 2012 R2, Microsoft System Center 2012...
Disaster Recovery usando Windows Server 2012 R2, Microsoft System Center 2012...Disaster Recovery usando Windows Server 2012 R2, Microsoft System Center 2012...
Disaster Recovery usando Windows Server 2012 R2, Microsoft System Center 2012...
 
Novidades do PostgreSQL 10
Novidades do  PostgreSQL 10Novidades do  PostgreSQL 10
Novidades do PostgreSQL 10
 
Arquitetura de Memoria do PostgreSQL
Arquitetura de Memoria do PostgreSQLArquitetura de Memoria do PostgreSQL
Arquitetura de Memoria do PostgreSQL
 

Semelhante a Guia completo sobre AWS Redshift: características, conceitos e melhores práticas

AWS Redshift Primer
AWS Redshift PrimerAWS Redshift Primer
AWS Redshift PrimerMateus Aubin
 
Path to the future #5 - Melhores práticas de data warehouse no Amazon Redshift
Path to the future #5 - Melhores práticas de data warehouse no Amazon RedshiftPath to the future #5 - Melhores práticas de data warehouse no Amazon Redshift
Path to the future #5 - Melhores práticas de data warehouse no Amazon RedshiftAmazon Web Services LATAM
 
Cloud Server Embratel
Cloud Server EmbratelCloud Server Embratel
Cloud Server EmbratelAlex Hübner
 
QConSP16 - Apache Cassandra Evoluindo Sistemas Distribuídos
QConSP16 - Apache Cassandra Evoluindo Sistemas DistribuídosQConSP16 - Apache Cassandra Evoluindo Sistemas Distribuídos
QConSP16 - Apache Cassandra Evoluindo Sistemas DistribuídosEiti Kimura
 
Elastic MeetUp Porto Alegre
Elastic MeetUp Porto AlegreElastic MeetUp Porto Alegre
Elastic MeetUp Porto AlegreRafael Gomes
 
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0Marcos William Valentini
 
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0Marcos William Valentini
 
ClusterizaçãO De AplicaçõEs Php
ClusterizaçãO De AplicaçõEs PhpClusterizaçãO De AplicaçõEs Php
ClusterizaçãO De AplicaçõEs PhpCampus Party Brasil
 
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...iMasters
 
Cloud Mysql e MariaDB em alta performance
Cloud Mysql e MariaDB em alta performanceCloud Mysql e MariaDB em alta performance
Cloud Mysql e MariaDB em alta performanceSaveincloud
 
Performance no MongoDB - TDC 2017 | Florianópolis
Performance no MongoDB - TDC 2017 | FlorianópolisPerformance no MongoDB - TDC 2017 | Florianópolis
Performance no MongoDB - TDC 2017 | FlorianópolisJefferson Martins de Andrade
 
Exadata - O Todo é maior que a soma das Partes
Exadata - O Todo é maior que a soma das PartesExadata - O Todo é maior que a soma das Partes
Exadata - O Todo é maior que a soma das PartesLuis Marques
 
Amazon EC2 boas praticas e otimizações de desempenho
Amazon EC2 boas praticas e otimizações de desempenhoAmazon EC2 boas praticas e otimizações de desempenho
Amazon EC2 boas praticas e otimizações de desempenhoAmazon Web Services LATAM
 
Mais performance com o MySQL 5.6
Mais performance com o MySQL 5.6Mais performance com o MySQL 5.6
Mais performance com o MySQL 5.6MySQL Brasil
 
Sessão Avançada: Amazon Aurora - DAT302 - Sao Paulo Summit
Sessão Avançada: Amazon Aurora -  DAT302 - Sao Paulo SummitSessão Avançada: Amazon Aurora -  DAT302 - Sao Paulo Summit
Sessão Avançada: Amazon Aurora - DAT302 - Sao Paulo SummitAmazon Web Services
 
Intro Arquitetura Oracle
Intro Arquitetura OracleIntro Arquitetura Oracle
Intro Arquitetura OraclePablo Garcia
 

Semelhante a Guia completo sobre AWS Redshift: características, conceitos e melhores práticas (20)

AWS Redshift Primer
AWS Redshift PrimerAWS Redshift Primer
AWS Redshift Primer
 
Path to the future #5 - Melhores práticas de data warehouse no Amazon Redshift
Path to the future #5 - Melhores práticas de data warehouse no Amazon RedshiftPath to the future #5 - Melhores práticas de data warehouse no Amazon Redshift
Path to the future #5 - Melhores práticas de data warehouse no Amazon Redshift
 
Cloud Server Embratel
Cloud Server EmbratelCloud Server Embratel
Cloud Server Embratel
 
QConSP16 - Apache Cassandra Evoluindo Sistemas Distribuídos
QConSP16 - Apache Cassandra Evoluindo Sistemas DistribuídosQConSP16 - Apache Cassandra Evoluindo Sistemas Distribuídos
QConSP16 - Apache Cassandra Evoluindo Sistemas Distribuídos
 
Elastic MeetUp Porto Alegre
Elastic MeetUp Porto AlegreElastic MeetUp Porto Alegre
Elastic MeetUp Porto Alegre
 
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0
 
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0
 
SQLSat #127
SQLSat #127SQLSat #127
SQLSat #127
 
ClusterizaçãO De AplicaçõEs Php
ClusterizaçãO De AplicaçõEs PhpClusterizaçãO De AplicaçõEs Php
ClusterizaçãO De AplicaçõEs Php
 
Clusterização de Aplicações PHP
Clusterização de Aplicações PHPClusterização de Aplicações PHP
Clusterização de Aplicações PHP
 
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...
 
TRIO IT - Resumo
TRIO IT - ResumoTRIO IT - Resumo
TRIO IT - Resumo
 
Cloud Mysql e MariaDB em alta performance
Cloud Mysql e MariaDB em alta performanceCloud Mysql e MariaDB em alta performance
Cloud Mysql e MariaDB em alta performance
 
Performance no MongoDB - TDC 2017 | Florianópolis
Performance no MongoDB - TDC 2017 | FlorianópolisPerformance no MongoDB - TDC 2017 | Florianópolis
Performance no MongoDB - TDC 2017 | Florianópolis
 
Exadata - O Todo é maior que a soma das Partes
Exadata - O Todo é maior que a soma das PartesExadata - O Todo é maior que a soma das Partes
Exadata - O Todo é maior que a soma das Partes
 
Amazon EC2 boas praticas e otimizações de desempenho
Amazon EC2 boas praticas e otimizações de desempenhoAmazon EC2 boas praticas e otimizações de desempenho
Amazon EC2 boas praticas e otimizações de desempenho
 
Mais performance com o MySQL 5.6
Mais performance com o MySQL 5.6Mais performance com o MySQL 5.6
Mais performance com o MySQL 5.6
 
Introducao ao Amazon Redshift
Introducao ao Amazon RedshiftIntroducao ao Amazon Redshift
Introducao ao Amazon Redshift
 
Sessão Avançada: Amazon Aurora - DAT302 - Sao Paulo Summit
Sessão Avançada: Amazon Aurora -  DAT302 - Sao Paulo SummitSessão Avançada: Amazon Aurora -  DAT302 - Sao Paulo Summit
Sessão Avançada: Amazon Aurora - DAT302 - Sao Paulo Summit
 
Intro Arquitetura Oracle
Intro Arquitetura OracleIntro Arquitetura Oracle
Intro Arquitetura Oracle
 

Guia completo sobre AWS Redshift: características, conceitos e melhores práticas