64
2016, Amazon Web Services, Inc. ou Afiliadas. Todos os direitos reservados. Hugo Rozestraten, arquiteto de soluções 14 de Setembro de 2016 Serviços de banco de dados gerenciado na Amazon Web Services

Quais são as opções de banco de dados gerenciados na AWS?

Embed Size (px)

Citation preview

Page 1: Quais são as opções de banco de dados gerenciados na AWS?

2016, Amazon Web Services, Inc. ou Afiliadas. Todos os direitos reservados.

Hugo Rozestraten, arquiteto de soluções

14 de Setembro de 2016

Serviços de banco de dados gerenciado na Amazon Web Services

Page 2: Quais são as opções de banco de dados gerenciados na AWS?

Pauta de hoje

• Por que serviços de banco de dados gerenciado?• Um banco de dados não relacional gerenciado• Um banco de dados relacional gerenciado• Um cache de memória gerenciado• Um data warehouse gerenciado• Qual será o próximo passo

Page 3: Quais são as opções de banco de dados gerenciados na AWS?

Por que serviços de banco de dados gerenciado?

Page 4: Quais são as opções de banco de dados gerenciados na AWS?

Opções para executar seu banco de dados

• Auto gerenciado—Você é responsável pelo hardware, SO, segurança, atualizações, backups, replicação, etc., mas tem controle total sobre ele.

• Instâncias do EC2—Você só precisa se concentrar nas atualizações de banco de dados, patches, replicação, backups, etc. e não precisa se preocupar com a instalação de hardware ou do SO.

• Totalmente gerenciado—Você tem recursos como backup, replicação, etc. como um pacote de serviços e não precisa se preocupar com patches e atualizações.

Page 5: Quais são as opções de banco de dados gerenciados na AWS?

Quais são as opções de DB gerenciadas pela AWS?

Page 6: Quais são as opções de banco de dados gerenciados na AWS?

Um serviço gerenciado para cada tipo principal de DB

Armazenamento de key-valor na

memória

Amazon ElastiCache

Data warehouse

Amazon Redshift

Mecanismos do banco de dados

SQL

Amazon RDS

Armazenamento de documento

e key-valor

Amazon DynamoDB

Page 7: Quais são as opções de banco de dados gerenciados na AWS?

Escolha a melhor ferramenta para o trabalho

Page 8: Quais são as opções de banco de dados gerenciados na AWS?

O que é Amazon RDS?

Page 9: Quais são as opções de banco de dados gerenciados na AWS?

Bancos de dados relacionais

Totalmente gerenciado

Desempenho rápido e previsível

Simples e rápido de escalonar

Baixo custo – pague somente por aquilo que usar

AmazonRDS

Amazon Aurora

Page 10: Quais são as opções de banco de dados gerenciados na AWS?

Casos de usoAplicável onde quer que você precise de bancos de dados relacionais

eCommerce Jogos

Websites Soluções de TI

Apps

Relatórios

Page 11: Quais são as opções de banco de dados gerenciados na AWS?

Matriz de recursos do RDSRecurso Aurora MySQL PostgreSQL MariaDB Oracle SQL Server

VPC

Alta disponibilidade Escalabilidade da instância

Criptografia

Réplicas de leitura Oracle Golden GateInter-região

Armazenamento máximo 64 TB 6 TB 6 TB 6 TB 6 TB 4 TB

Armazenamento em escala

Escalabilidade automática

Provisioned IOPS N/D 30,000 30,000 30,000 30,000 20,000

Maior instância R3.8XL R3.8XLM4.10XL

R3.8XLM4.10XL

R3.8XLM4.10XL

R3.8XLM4.10XL

R3.8XLM4.10XL

Page 12: Quais são as opções de banco de dados gerenciados na AWS?

Amazon Aurora: rápido, disponível e compatível com MySQL

SQL

Transações

AZ 1 AZ 2 AZ 3

Cache

Amazon S3

5x mais rápido que o MySQL no mesmo hardware

Sysbench: 100K gravações/seg e 500K leituras/seg

Projetado para 99,99% de disponibilidade

Armazenamento replicado 6 vezes em 3 AZs

Escalonar até 64 TB e 15 réplicas de leitura

Page 13: Quais são as opções de banco de dados gerenciados na AWS?

Amazon RDS é simples e rápido de escalonar

Os tipos de instância do banco de dados oferecem uma série de escolhas de CPU e memória

Dimensione para cima ou para baixoentre tipos de demanda

O armazenamento no banco de dados é escalonável sob demanda

Page 14: Quais são as opções de banco de dados gerenciados na AWS?

O Amazon RDS oferece armazenamento rápido e previsível

General Purpose (SSD) para a maior parte das cargas de trabalho

Provisioned IOPS (SSD) para cargas de trabalho OLTP com até 30.000 IOPS

Magnetic para cargas de trabalho pequenas com acesso infrequente

Page 15: Quais são as opções de banco de dados gerenciados na AWS?

Implantações multi-AZ de alta disponibilidade

Solução de tolerância a falhas de nível corporativo para bancos de dados de produção

Failover automáticoReplicação síncrona

Barato e habilitado com alguns cliques

Page 16: Quais são as opções de banco de dados gerenciados na AWS?

Selecione réplicas de leitura para maior escalabilidade

Leve os dados para perto dos aplicativos do seu cliente em diferentes regiões.

Alivie a pressão sobre o nó mestre para suportar leituras e gravações.

Promova uma réplica de leitura a um mestre para recuperação mais rápida no caso de um desastre.

Page 17: Quais são as opções de banco de dados gerenciados na AWS?

Selecione replicação inter-região para localidade de dados avançada, até mais facilidade de migração

Recuperação ainda mais rápida no caso de desastre

Aproxime os dados dos clientes

Promova a um mestre para fácil migração

Page 18: Quais são as opções de banco de dados gerenciados na AWS?

Selecione cópia de snapshot inter-região para durabilidade ainda maior e facilidade de migração

Copie um snapshot do banco de dados a uma região diferente da AWS

Espera passiva para recuperação de desastres

Base para migração a uma região diferente

Page 19: Quais são as opções de banco de dados gerenciados na AWS?

Como funcionam os backups do Amazon RDS?

Backups automatizadosRestaure seu banco de dados a um ponto no tempo

Habilitado por padrão

Selecione um período de retenção de até 35 dias

Snapshots manuaisCrie uma nova instância de banco de dados a partir de um snapshot, quando necessário

Iniciado por você

Persiste até você excluir

Armazenado em Amazon S3

Page 20: Quais são as opções de banco de dados gerenciados na AWS?

Você paga pelos recursos que usar

Conta mensal = N ×

Mais detalhes em http://aws.amazon.com/elasticache/pricing/

Duração pela qual os nós foram usados

Número de nós

(O preço depende do tipo de nó)

Nível gratuito (pelos 12 primeiros meses)750 horas de microinstância de banco de dados 20 GB de armazenamento no banco de dados20 GB para backups10 milhões de operações E/S

+

Armazenamento consumido

(O preço depende do tipo de

armazenamento)

GB

Page 21: Quais são as opções de banco de dados gerenciados na AWS?

Clientes selecionados do Amazon RDS

Page 22: Quais são as opções de banco de dados gerenciados na AWS?

O que é o Amazon DynamoDB?

Page 23: Quais são as opções de banco de dados gerenciados na AWS?

Amazon DynamoDB

Bancos de dados NoSQL

Totalmente gerenciado

Latência inferior a milissegundos de dígito único

Escalabilidade maciça e contínua

Baixo custo

AmazonDynamoDB

Page 24: Quais são as opções de banco de dados gerenciados na AWS?

Amazon DynamoDB: um documento gerenciado e um armazenamento de key-valorSimples e rápido de implantar

Simples e rápido de escalonar• A milhões de IOPS

Os dados são replicados automaticamente

Desempenho rápido e previsível• Respaldado por armazenamento SSD

Índices secundários oferecem buscas rápidas

Nenhum custo para começar; pague só pelo que consumir

Page 25: Quais são as opções de banco de dados gerenciados na AWS?

Casos populares de uso

Veiculação de anúncios,

redirecionamento, busca de

ID, gerenciamento do perfil

do usuário, rastreamento da

sessão, RTB

Estado de rastreamento,

metadados e leituras de

milhões de dispositivos,

notificações em tempo real

Registro de detalhes do jogo,

painéis de líderes,

informações da sessão,

histórico de uso e logs

Armazenamento de perfis do

usuário, detalhes da sessão,

configurações de

personalização, metadados

específicos da entidade

Tecnologia de anúncios IoT Jogos Mobile

e web

Page 26: Quais são as opções de banco de dados gerenciados na AWS?

GravaçõesReplicado continuamente para 3 AZs

Persistiu no disco (SSD personalizado)

LeiturasFortemente ou finalmente consistente

Sem troca de latência

Replicação automática para durabilidade e disponibilidade sólidas

Page 27: Quais são as opções de banco de dados gerenciados na AWS?

O Amazon DynamoDB é um banco de dados sem schema

Tabela Itens

Atributos (pares de nome-valor)

Page 28: Quais são as opções de banco de dados gerenciados na AWS?

Cada item deve incluir uma key

Key hash (O DynamoDB mantém um

índice não ordenado)

Page 29: Quais são as opções de banco de dados gerenciados na AWS?

Cada item deve incluir uma key

Key hash

Key de intervalo (O DynamoDB mantém um

índice classificado)

Page 30: Quais são as opções de banco de dados gerenciados na AWS?

Índices secundários locais = keys de intervalo alternativo

Key hash

Key de intervalo

Key LSI

Page 31: Quais são as opções de banco de dados gerenciados na AWS?

Índices secundários globais = “gráficos pivô” para sua tabela

Escolha quais atributosprojetar

(se for o caso)

Page 32: Quais são as opções de banco de dados gerenciados na AWS?

Defina o desempenho desejado usando a taxa de transferência provisionada

Unidades com capacidade de

leitura

Unidades com capacidade de

gravação

1 RPS > 2,5 M de solicitações em um mês

Page 33: Quais são as opções de banco de dados gerenciados na AWS?

DynamoDB: o que são unidades de capacidade?

Uma gravação por segundo até 1 KB

Uma leitura fortemente consistente por segundo até 4 KB

ou

Duas leituras ocasionalmente consistentes por segundo

Uma unidade de capacidade de gravação

Uma unidade de capacidade

de leitura

Page 34: Quais são as opções de banco de dados gerenciados na AWS?

Arquitetura simples de aplicativo com o Amazon DynamoDB

Elastic LoadBalancing Instâncias do

aplicativo Amazon EC2

Clientes

DynamoDB

Lógica de negócios

Page 35: Quais são as opções de banco de dados gerenciados na AWS?

Como o faturamento do DynamoDB funciona

Conta mensal = GB +

Pressupõe que a instância do DB é acessada somente da região da AWSMais detalhes em http://aws.amazon.com/dynamodb/pricing/

≈ 5 GB * $0,25 + 21 * 720 hrs * $0,0065/10 + 35 * 720 hrs * $0,0065/50 ≈ $14,36

Armazenamento consumido

(mais 100 bytes por item)

Cobrança por unidades de capacidade

de gravaçãopor hora

+Cobrança por unidades de

capacidade de leiturapor hora

Page 36: Quais são as opções de banco de dados gerenciados na AWS?

Como funciona a cobrança do DynamoDB (com nível gratuito)

Conta mensal = GB +

Pressupõe que a instância do DB é acessada somente da região da AWSMais detalhes em http://aws.amazon.com/dynamodb/pricing/

≈ 5–25 GB * $0,25 + 21–25 * 720 hrs * $0,0065/10 + 35–25 * 720 hrs * $0,0065/50

Armazenamento consumido

(mais 100 bytes por item)

Cobrança por unidades de capacidade

de gravaçãopor hora

Cobrança por unidades de

capacidade de leiturapor hora

Nível gratuito (pelos 12 primeiros meses)• Armazenamento de 25 GB• 25 unidades de capacidade de gravação• 25 unidades de capacidade de leitura

+

Page 37: Quais são as opções de banco de dados gerenciados na AWS?

Como funciona a cobrança do DynamoDB (com nível gratuito)

Conta mensal = GB +

Pressupõe que a instância do DB é acessada somente da região da AWSMais detalhes em http://aws.amazon.com/dynamodb/pricing/

≈ 0 + 0 + 10 * 720 hrs * $0,0065/50 ≈ $0,94

Armazenamento consumido

(mais 100 bytes por item)

Cobrança por unidades de capacidade

de gravaçãopor hora

+Cobrança por unidades de

capacidade de leiturapor hora

Page 39: Quais são as opções de banco de dados gerenciados na AWS?

NoSQL vs. SQL para um novo app: como escolher?

• Schema forte, relacionamentos complexos, transações e uniões

• O escalonamento é difícil• Foco na consistência sobre

escala e disponibilidade

• Sem schema, leitura e gravação fáceis, modelo de dados simples

• O escalonamento é fácil• Foco em desempenho

e disponibilidade em qualquer escala

NoSQL SQL

Page 40: Quais são as opções de banco de dados gerenciados na AWS?

O que é o Amazon Redshift?

Page 41: Quais são as opções de banco de dados gerenciados na AWS?

Amazon Redshift

muito mais rápidomuito mais baratomuito mais simples

Data warehouse relacional

Maciçamente paralelo; escala de petabytes

Totalmente gerenciado

Plataformas HDD e SSD

$1.000/TB/ano; começa em $0,25/hora

Page 42: Quais são as opções de banco de dados gerenciados na AWS?

Quem usa Amazon Redshift?

• Reduz de custos ao ampliar DW em vez de adicionar HW

• Faz migração completa dos sistemas de DW existentes

• Reage mais rápido aos negócios; provisão em minutos

• Melhora o desempenho em ordem de magnitude

• Disponibiliza mais dados para análise

• Acessa dados de negócios via ferramentas de relatórios padrão

• Adiciona recursos analíticos aos aplicativos

• Escalona a capacidade de DW conforme a demanda aumenta

• Reduz custos de HW e SW em ordem de magnitude

DW corporativo tradicional Companhias com big dataEmpresas de SaaSCompanhias com big data

Page 43: Quais são as opções de banco de dados gerenciados na AWS?

Clientes SQL/ferramentas de BI

Nó de computação

Nó de computação

Nó de computação

Nólíder

Arquitetura do Amazon RedshiftNó líder

• Endpoint SQL simples• Armazena metadados• Otimiza o plano de consultas• Coordena a execução da consulta

Nós de computação• Armazenamento colunar local• Execução paralela/distribuída de todos os

backups, consultas, cargas, restaurações, redimensionamentos

A partir de somente $0,25/hora, crescimento para 2 PB (compactado)

• DC1: SSD; escalona 160 GB–326 TB• DS2: HDD; escalona 2 TB–2 PB

10 GigE(HPC)

InserçãoBackupRestauração Amazon S3/DynamoDB/Amazon EMR

JDBC/ODBC

Page 44: Quais são as opções de banco de dados gerenciados na AWS?

Amazon Redshift reduz drasticamente E/S

• Com o armazenamento de linhas, você faz E/S desnecessárias

• Para ver o valor total, é preciso ler tudo

ID Idade Estado Valor

123 20 CA 500

345 25 WA 250

678 40 FL 125

957 37 WA 375

• Armazenamento de colunas

• Compactação de dados

• Mapas de zonas

• Direct-Attached Storage

Page 45: Quais são as opções de banco de dados gerenciados na AWS?

• Com o armazenamento de colunas, você lê somente os dados de que precisa

ID Idade Estado Valor

123 20 CA 500

345 25 WA 250

678 40 FL 125

957 37 WA 375

Amazon Redshift reduz drasticamente E/S

• Armazenamento de colunas

• Compactação de dados

• Mapas de zonas

• Direct-Attached Storage

Page 46: Quais são as opções de banco de dados gerenciados na AWS?

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

Amazon Redshift reduz drasticamente E/S

• COPY compacta automaticamente

• Você pode analisar e substituir

• Mais desempenho, menos custo

• Armazenamento de colunas

• Compactação de dados

• Mapas de zonas

• Direct-Attached Storage

Page 47: Quais são as opções de banco de dados gerenciados na AWS?

Amazon Redshift reduz drasticamente E/S

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

• Acompanhe os valores mínimo e máximo de cada bloco

• Pule blocos que não contêm dados relevantes

• Armazenamento de colunas

• Compactação de dados

• Mapas de zonas

• Direct-Attached Storage

Page 48: Quais são as opções de banco de dados gerenciados na AWS?

Amazon Redshift reduz drasticamente E/S

• Armazenamento de colunas

• Compactação de dados

• Mapas de zonas

• Direct-Attached Storage

DW.HS1.8XL:

• Velocidade de verificação > 2 GB/seg

• Otimizado para processamento de dados

• Alta densidade de disco

16 GB RAM

2 núcleos

Disco de 2 TB

DW.HS1.XL:

128 GB RAM

16 núcleos

Disco de 16 TB

Page 49: Quais são as opções de banco de dados gerenciados na AWS?

Backups totalmente gerenciados, contínuos/incrementais

Múltiplas cópias dentro do cluster

Backups contínuos e incrementais para o Amazon S3

Backups contínuos e incrementais entre regiões

Restauração de streaming Amazon S3

Amazon S3

Região 1

Região 2

Nó de computação

Nó de computação

Nó de computação

Page 50: Quais são as opções de banco de dados gerenciados na AWS?

O Amazon Redshift oferece tolerância sólida a falhas

Amazon S3

Amazon S3

Região 1

Região 2

Nó de computação

Nó de computação

Nó de computaçãoFalhas de disco

Falhas do nó

Falha de rede

Desastres em nível AZ/regional

Page 51: Quais são as opções de banco de dados gerenciados na AWS?

Você paga por aquilo que usa

Mais detalhes em https://aws.amazon.com/redshift/pricing/

Conta mensal = N ×

Número de nós Duração pela qual os nós

foram usados(O preço depende do tipo de nó)

Nível gratuito (trial gratuito por 2 meses)• 750 horas no DC1.Large por mês

Page 52: Quais são as opções de banco de dados gerenciados na AWS?

Redshift tem um grande ecossistemaIntegração de dados Integradores de sistemasBusiness Intelligence

Page 53: Quais são as opções de banco de dados gerenciados na AWS?

Clientes selecionados do Amazon Redshift

Page 54: Quais são as opções de banco de dados gerenciados na AWS?

O que é o Amazon ElastiCache?

Page 55: Quais são as opções de banco de dados gerenciados na AWS?

Armazenamento de key-valor na memória

Alto desempenho

Cache na memória redimensionável

Memcached e Redis

Totalmente gerenciado; zero admin.

Compatível com seus aplicativos existentes

AmazonElastiCache

Page 56: Quais são as opções de banco de dados gerenciados na AWS?

Casos populares de uso

Camada de cache para otimização do desempenho ou do custo de um banco de dados subjacente

Armazenamento de dados de chave-valor efêmeros

Padrões de aplicativo de alto desempenho, como placar de líderes (para usuários de jogos), gerenciamento da sessão, contadores de eventos, listas na memória

Page 57: Quais são as opções de banco de dados gerenciados na AWS?

• Totalmente gerenciado• Autodescoberta do nó do cache• Posicionamento do nó multi-AZ

Principais recursos do ElastiCache

• Totalmente gerenciado• Multi-AZ com failover automático• Persistência• Réplicas de leitura

Page 58: Quais são as opções de banco de dados gerenciados na AWS?

Amazon ElastiCache: arquitetura de app simples

Elastic LoadBalancing Instâncias do

aplicativo Amazon EC2

Clientes

Amazon RDSAmazon ElastiCache

Page 59: Quais são as opções de banco de dados gerenciados na AWS?

Amazon ElastiCache: arquitetura de app resiliente

Elastic LoadBalancing

Clientes

AZ a

AZ b

Page 60: Quais são as opções de banco de dados gerenciados na AWS?

Como funciona o faturamento ElastiCache

Conta mensal = N ×

Mais detalhes em http://aws.amazon.com/elasticache/pricing/

Duração pela qual os nós foram usados

Número de nós

(O preço depende do tipo de nó)

Nível gratuito (pelos 12 primeiros meses)• 750 horas de nó de microcache

Page 61: Quais são as opções de banco de dados gerenciados na AWS?

Clientes selecionados do ElastiCache

Page 62: Quais são as opções de banco de dados gerenciados na AWS?

Serviços de DB gerenciados: melhor juntos

Elastic LoadBalancing

Clientes

AZ a

AZ b

Page 63: Quais são as opções de banco de dados gerenciados na AWS?

Próximas etapas

Nível gratuito

DynamoDB

RDS

ElastiCache

Redshift

Page 64: Quais são as opções de banco de dados gerenciados na AWS?

Obrigado!