webinar: data warehouse na nuvem da aws

Post on 07-Jan-2017

504 Views

Category:

Technology

6 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Data warehouse na nuvem da AWS - Redshift

Daniel Bento, Arquiteto de Soluções, AWS

31 de Maio de 2016

Agenda

• Introdução

• Benefícios

• Use case

• Começando com o Redshift

• Provisionamento

• Modelagem de Dados

• Carga de Dados

• Fazendo Consultas

• Perguntas e Respostas

AnalisarArmanezar

Amazon

Glacier

Amazon S3

Amazon

DynamoDB

Amazon RDS,

Amazon Aurora

AWS big data portfolio

AWS Data Pipeline

Amazon

CloudSearch

Amazon EMR Amazon EC2

Amazon

Redshift

Amazon

Machine

Learning

Amazon

Elasticsearch

Service

AWS Database

Migration Service

Amazon

QuickSight

Amazon

Kinesis

Firehose

AWS Import/Export

AWS Direct

Connect

Coletar

Amazon Kinesis

Streams

Data warehouse relacional

Processamento paralelo massivo – MPP

Escala de petabytes

Totalmente gerenciado

Plataformas em HDD e SSD

$1,000/TB/ano; comece com $0.25/hora

Amazon

Redshift

+ rápido

+ simples

+ barato

Selected Amazon Redshift customers

Arquitetura do Amazon Redshift - MPP

Leader node

Simple SQL endpoint

Armazenamento de metadados (nome de tabelas, colunas, objetos)

Otimização do plano de execução de queries

Coordenação da execução de queries

Compute nodes

Storage local por colunas

Execução paralela/distribuída de todas as queries, carga de dados, backups, recuperação e redimensionamento

Comece com $0.25/hora, cresça até 2 PB

DC1: SSD; escala de 160 GB até 326 TB (Dense compute)

DS2: HDD; escala de 2 TB até 2 PB (Dense storage)

Ingestion/Backup

Backup

Restore

JDBC/ODBC

10 GigE

(HPC)

Benefício #1: Amazon Redshift é rápido

Menos I/O

Armazenamento em colunas

Compressão de dados

Zone maps

Direct-attached storage

Blocos de dados grandes (1 MB)

analyze compression listing;

Table | Column | Encoding

---------+----------------+----------

listing | listid | delta

listing | sellerid | delta32k

listing | eventid | delta32k

listing | dateid | bytedict

listing | numtickets | bytedict

listing | priceperticket | delta32k

listing | totalprice | mostly32

listing | listtime | raw

10 | 13 | 14 | 26 |…

… | 100 | 245 | 324

375 | 393 | 417…

… 512 | 549 | 623

637 | 712 | 809 …

… | 834 | 921 | 959

10

324

375

623

637

959

Benefício #1: Amazon Redshift é rápido

Paralelo e distribuído

Query

Cargas

Exportação de dados

Backup

Restauração

Redimensionamento

Benefício #1: Amazon Redshift é rápido

Hardware otimizado para workloads de IO intensivo, 4 GB/seg/nó

Rede aprimorada, mais de 1 milhão de pacotes/seg/nó

Escolha do tipo de armazenamento e tamanho da instância

Melhorias com patchs automáticos

Benefício #2: Amazon Redshift é barato

Ds2 (HDD)Pre;co por hora pelo

single node DW1.XL

Preço efetivo anual por TB

compactado

On-demand $ 0.850 $ 3,725

1 ano de reserva $ 0.500 $ 2,190

3 anos de reserva $ 0.228 $ 999

Dc1 (SSD)Preço por hora pelo

single node DW2.L

Preço efetivo anual por TB

compactado

On-demand $ 0.250 $ 13,690

1 ano de reserva $ 0.161 $ 8,795

3 anos de reserva $ 0.100 $ 5,500

Preço é simples

Número de nós x preço/hora

Sem cobranças pelo leader

node

Sem custos iniciais

Pague sob demanda

Benefício #3: Redshift é totalmente gerenciado

Backup contínuo/incremental

Múltiplas cópias dentro do cluster

Backups contínuos e incrementais

para o Amazon S3

Backups contínuos e incrementais

entre regiões

Streaming restore

Amazon S3

Amazon S3

Region 1

Region 2

Benefício #3: Redshift é totalmente gerenciado

Amazon S3

Amazon S3

Region 1

Region 2

Tolerância a falhas

Falhas de disco

Falhas do nó

Falhas de rede

Falhas da Zona de

disponibilidade/Região

Benefício #4: Segurança está embutida

• Carga criptografada a partir do S3

• SSL para segurança de dados em trânsito

• Isolamento de redes com a Amazon VPC

• Criptografia para segurança de dados em

repouso

• Todos os blocos no disco e no S3 critografados

• Block key, cluster key, master key (AES-256)

• Suporte para HSM on-premise & AWS

CloudHSM

• Log de auditoria e integração com o AWS

CloudTrail

• SOC 1/2/3, PCI-DSS, FedRAMP, BAA

10 GigE

(HPC)

Ingestion

Backup

Restore

Customer VPC

Internal

VPC

JDBC/ODBC

Benefício #5: Inovamos rapidamente

Mais de 100 novas features desde o lançamento

Releases a cada duas semanas

Aplicação automática de patchs

Service Launch (2/14)

PDX (4/2)

Temp Credentials (4/11)

DUB (4/25)

SOC1/2/3 (5/8)

Unload Encrypted Files

NRT (6/5)

JDBC Fetch Size (6/27)

Unload logs (7/5)

SHA1 Builtin (7/15)

4 byte UTF-8 (7/18)

Sharing snapshots (7/18)

Statement Timeout (7/22)

Timezone, Epoch, Autoformat (7/25)

WLM Timeout/Wildcards (8/1)

CRC32 Builtin, CSV, Restore Progress (8/9)

Resource Level IAM (8/9)

PCI (8/22)

UTF-8 Substitution (8/29)

JSON, Regex, Cursors (9/10)

Split_part, Audit tables (10/3)

SIN/SYD (10/8)

HSM Support (11/11)

Kinesis EMR/HDFS/SSH copy, Distributed Tables, Audit

Logging/CloudTrail, Concurrency, Resize Perf., Approximate Count Distinct, SNS

Alerts, Cross Region Backup (11/13)

Distributed Tables, Single Node Cursor Support, Maximum Connections to 500

(12/13)

EIP Support for VPC Clusters (12/28)

New query monitoring system tables and diststyle all (1/13)

Redshift on DW2 (SSD) Nodes (1/23)

Compression for COPY from SSH, Fetch size support for single node clusters, new

system tables with commit stats, row_number(), strotol() and query

termination (2/13)

Resize progress indicator & Cluster Version (3/21)

Regex_Substr, COPY from JSON (3/25)

50 slots, COPY from EMR, ECDHE ciphers (4/22)

3 new regex features, Unload to single file, FedRAMP(5/6)

Rename Cluster (6/2)

Copy from multiple regions, percentile_cont, percentile_disc (6/30)

Free Trial (7/1)

pg_last_unload_count (9/15)

AES-128 S3 encryption (9/29)

UTF-16 support (9/29)

Benefício #6: Redshift é poderoso

• Approximate functions

• User defined functions (python)

• Integrado com Python Standard

Library, incluindo SciPy e

NumPy

• Machine learning

• Data science

Benefício #7: Amazon Redshift possui um

abrangente ecossistema

Data integration Systems integratorsBusiness intelligence

Benefício #8: Arquitetura orientada a serviço

DynamoDB

EMR

S3

EC2/SSH

RDS/Aurora

Amazon

Redshift

Amazon Kinesis

Amazon ML

Data Pipeline

CloudSearch

Amazon

Mobile

Analytics

Use case

Analyzing Twitter Firehose

Amazon

Redshift

Starts at

$0.25/hour

EC2

Starts at

$0.02/hour

S3

$0.030/GB-Mo

Amazon Glacier

$0.010/GB-Mo

Amazon Kinesis

$0.015/shard 1MB/s in; 2MB/out

$0.028/million puts

Analyzing Twitter Firehose

500MM tweets/dia = ~ 5.800 tweets/seg

2k/tweet ~12MB/seg (~1TB/dia)

$0,015/hora por shard, $0,028/milhão de PUTS

Amazon Kinesis custa $0,765/hora

Amazon Redshift custa $0,850/hora (nó de 2TB)

S3 custa $1,28/hora (sem compressão)

Total: $2,895/hora

Data

warehouses

podem ser

baratos e

poderosos

Começando com o Redshift

Provisionamento

Entre com os detalhes do cluster

Selecione a configuração do nó

Configurações de segurança e redes

Redimensionamento em poucos cliques

Redimensionamento

• Redimensionamento com o cluster

online (somente leitura)

• Um novo cluster é provisionado em

background

• Cópia de dados ocorre em paralelo

nó a nó

• Somente é cobrado pelo cluster de

origem

Modelagem de Dados

SELECT COUNT(*) FROM LOGS WHERE DATE = ‘09-JUNE-2013’

MIN: 01-JUNE-2013

MAX: 20-JUNE-2013

MIN: 08-JUNE-2013

MAX: 30-JUNE-2013

MIN: 12-JUNE-2013

MAX: 20-JUNE-2013

MIN: 02-JUNE-2013

MAX: 25-JUNE-2013

Tabela desordenada

MIN: 01-JUNE-2013

MAX: 06-JUNE-2013

MIN: 07-JUNE-2013

MAX: 12-JUNE-2013

MIN: 13-JUNE-2013

MAX: 18-JUNE-2013

MIN: 19-JUNE-2013

MAX: 24-JUNE-2013

Ordenada pela data

Zone maps

• Single column

• Compound

• Interleaved

Single Column• Table is sorted by 1 column

Date Region Country

2-JUN-2015 Oceania New Zealand

2-JUN-2015 Asia Singapore

2-JUN-2015 Africa Zaire

2-JUN-2015 Asia Hong Kong

3-JUN-2015 Europe Germany

3-JUN-2015 Asia Korea

[ SORTKEY ( date ) ]

• Melhor para:

• Queries que usam a primeira coluna (i.e. date) como filtro

primário

• Pode acelerar joins e group bys

• Mais rápida para o VACUUM

Compound

• Tabela é ordenada pela primeira coluna, depois pela

segunda coluna e assim por diante.

Date Region Country

2-JUN-2015 Africa Zaire

2-JUN-2015 Asia Korea

2-JUN-2015 Asia Singapore

2-JUN-2015 Europe Germany

3-JUN-2015 Asia Hong Kong

[ SORTKEY COMPOUND ( date, region, country) ]

• Melhor para:

• Queries que usam a primeira coluna como filtro primário, e depois

outras colunas

• Pode acelerar joins e group bys

• Mais lenta para o VACUUM

Interleaved

• Peso igual para cada coluna

Date Region Country

2-JUN-2015 Africa Zaire

3-JUN-2015 Asia Singapore

2-JUN-2015 Asia Korea

2-JUN-2015 Europe Germany

3-JUN-2015 Asia Hong Kong

2-JUN-2015 Asia Korea

[ SORTKEY INTERLEAVED ( date, region, country) ]

• Melhor para:

• Queries que usam diferentes colunas como filtro

• Queries ficam mais rápidas quanto mais colunas são utilizadas

como filtro

• Mais lenta para o VACUUM

• KEY

• ALL

• EVEN

ID Gender Name

101 M John Smith

292 F Jane Jones

139 M Peter Black

446 M Pat Partridge

658 F Sarah Cyan

164 M Brian Snail

209 M James White

306 F Lisa Green

2

3

4

ID Gender Name

101 M John Smith

306 F Lisa Green

ID Gender Name

292 F Jane Jones

209 M James White

ID Gender Name

139 M Peter Black

164 M Brian Snail

ID Gender Name

446 M Pat Partridge

658 F Sarah Cyan

RoundRobin

DISTSTYLE EVEN

ID Gender Name

101 M John Smith

292 F Jane Jones

139 M Peter Black

446 M Pat Partridge

658 F Sarah Cyan

164 M Brian Snail

209 M James White

306 F Lisa Green

HashFunction

ID Gender Name

101 M John Smith

306 F Lisa Green

ID Gender Name

292 F Jane Jones

209 M James White

ID Gender Name

139 M Peter Black

164 M Brian Snail

ID Gender Name

446 M Pat Partridge

658 F Sarah Cyan

DISTSTYLE KEY

ID Gender Name

101 M John Smith

292 F Jane Jones

139 M Peter Black

446 M Pat Partridge

658 F Sarah Cyan

164 M Brian Snail

209 M James White

306 F Lisa Green

HashFunction

ID Gender Name

101 M John Smith

139 M Peter Black

446 M Pat Partridge

164 M Brian Snail

209 M James White

ID Gender Name

292 F Jane Jones

658 F Sarah Cyan

306 F Lisa Green

DISTSTYLE KEY

ID Gender Name

101 M John Smith

292 F Jane Jones

139 M Peter Black

446 M Pat Partridge

658 F Sarah Cyan

164 M Brian Snail

209 M James White

306 F Lisa Green

101 M John Smith

292 F Jane Jones

139 M Peter Black

446 M Pat Partridge

658 F Sarah Cyan

164 M Brian Snail

209 M Lisa Green

306 F James White

101 M John Smith

292 F Jane Jones

139 M Peter Black

446 M Pat Partridge

658 F Sarah Cyan

164 M Brian Snail

209 M Lisa Green

306 F James White

101 M John Smith

292 F Jane Jones

139 M Peter Black

446 M Pat Partridge

658 F Sarah Cyan

164 M Brian Snail

209 M Lisa Green

306 F James White

101 M John Smith

292 F Jane Jones

139 M Peter Black

446 M Pat Partridge

658 F Sarah Cyan

164 M Brian Snail

209 M Lisa Green

306 F James White

ALL

DISTSTYLE ALL

• KEY

• Tabelas fato grandes

• Tabelas dimensão grandes

• ALL

• Tabelas dimensão de tamanho médio (1K – 2M)

• EVEN

• Tabelas sem joins ou group by

• Tabelas dimensão pequenas (<1000)

Carga de dados

AWS CloudCorporate Data center

Amazon S3Amazon

Redshift

Flat files

Carga de dados

AWS CloudCorporate Data center

ETL

Source DBs

Amazon

Redshift

Amazon

Redshift

Carga de dados

AWS Cloud

Amazon

RedshiftAmazon

Kinesis

Carga de dados

Use o comando COPY

Cada slice pode carregar um arquivo por vez

Um único arquivo significa que somente um slice está carregando dados

Ao invés de 100MB/s, vocêsomente consegue 6.25MB/s

Use múltiplos arquivos de entrada para

maximizar o throughput

Use o comando COPY

Você precisa tantos arquivos quanto o número de slices

Com 16 arquivos, todos os slides estão trabalhando, assim você maximiza o throughput

Consiga 100MB/s por nó; escalelinearmente conforme vocêadiciona nós

Use múltiplos arquivos de entrada para

maximizar o throughput

Fazendo Consultas

JDBC/ODBC

Amazon Redshift

Amazon Redshift funciona com suas

ferramentas atuais de análise

ODBC/JDBC

BI ClientsRedshift

ODBC/JDBC

BI Server Redshift

Clients

Monitoramento de performance de query

performance

Visualize os planos de execução

Outros recursos

Daniel Bento | dbento@amazon.com |

Páginas de detalhes

• http://aws.amazon.com/redshift

• https://aws.amazon.com/marketplace/redshift/

Melhores Práticas

• http://docs.aws.amazon.com/redshift/latest/dg/c_loading-data-best-practices.html

• http://docs.aws.amazon.com/redshift/latest/dg/c_designing-tables-best-practices.html

• http://docs.aws.amazon.com/redshift/latest/dg/c-optimizing-query-performance.html

AWS Summit São Paulo – 02 de Junho de 2016

• https://aws.amazon.com/pt/summits/sao-paulo/

top related