Conhecendo as Opcoes de Bancos de Dados na Nuvem da AWS
1. José Papo
Conhecendo as Opções de Bancos de Dados na AWS
AWS Evangelist – Latin America
@josepapo
2. Vários Tutoriais , treinamentos e mentoria em
português
Inscreva-se agora !!
http://awshub.com.br
3. Queremos que seja fácil para você começar do…
1. Zero e ter uma Aplicação em Minutos
2. Zero e ter Milhões de Usuários em Dias
3. Zero e ter Lucros!
6. RDS
- MySQL
- Oracle
- SQL Server
Espectro de Opções
SQL NoSQL
Do-it-yourself GerenciadoMySQL
Oracle
SQL Server
PostgreSQL
Seu BD Favorito
7. Espectro de Opções
SQL NoSQL
Do-it-yourself Gerenciado
MongoDB
Cassandra
Redis
Memcache
Seu NoSQL favorito
Amazon DynamoDB
Amazon ElastiCache
8. O que é importante para sua aplicação e seu time?
Fatores SQL NoSQL
Aplicação • App com lógica de negócios complexa? • App com grande número de usuários?
Transações • Transações completas, joins, updates? • Modelo de dados simples, updates, queries?
Escalabilidade • Manual • Automática
Performance • Tuning manual em escala • Performance consistente em escala
Disponibilidade • Necessária arquitetura de fail-over • Fail-over transparente
Habilidades • SQL + Java/Ruby/Python/PHP • NoSQL + Java/Ruby/Python/PHP
Melhor dos dois mundos: Use tanto SQL e NoSQL em pedaços de sua aplicação
9. Aonde você quer investir seu tempo?
Factors Do it Yourself (DIY) Gerenciado
Replicação • Granular, gerenciado pela aplicação • Transparente e configurada pelo serviço
Monitoração • Customizada • Automatizada e com APIs
Segurança • Acesso Root, configurações customizadas • Embutida no serviço
Recursos • Requer mais recursos e tempo • Requer menos recursos e tempo
Time to market • Mais sofisticação • Mais velocidade
Habilidades • SOs, bancos de dados, monitoração • Desenvolvimento de aplicações, queries
Melhor de ambos os mundos: Possível gerenciar de acordo com os estilos
10. Acreditamos no poder da escolha
Amazon RDS
+
ElastiCache
Amazon
DynamoDB
Amazon
Redshift
Aplicações com
necessidades de bancos
relacionais
Aplicações que
necessitam de
escalabilidade
massiva
Data Warehouses de alta
performance e larga escala
11. Amazon RDS é um serviço de banco de dados SQL gerenciado
Simples de iniciar e escalar
Minimiza esforço operacional
Confiável e efetivo em custos
Escolha de engines de BD
12. Projeto do Schema
Upgrades frequentes de servidores
Upgrades de Storage
Backup e recovery
Upgrades de Software
Patching
Gestão de Hardware
Construção de Queries
Otimização de Queries
Gestão de Configuração
Migração
RDS gerencia para você!
Foco na inovação e diferenciação
Amazon RDS aumenta a produtividade do time
14. Amazon RDS Read Replica
Alguns cliques ou
uma chamada de API
Do-it-yourself MySQL Read Replica
~30+ passos manuais
Criando uma read replica
15. Amazon RDS Multi-AZDo-it-yourself MySQL
~100+ passos manuais
Set up primary and standby instances
Set up identical volumes
Create synchronous replication
Create and manage DNS entries
Detect instance failure conditions
Detect network failure conditions
Detect storage failure conditions
Decide when to fail-over….
Re-establish primary secondary connections.
Criando um banco de dados de alta disponibilidade
Alguns cliques ou
uma chamada de API
16. Quem está sendo bem sucedido com o RDS?
Dezenas de milhares de empresas usam o RDS todos os dias
Jogos Web Apps Mobile/Social Mídia
17. Amazon RDS – Alguns recursos recém anunciados
• Bancos de dados com 3 TB & 30.000 IOPS
• Conversão simples de Standard para Provisioned IOPS
• Promover Read Replica para Master
• Upgrade automático de versão de MySQL
• Tags e permissões no Amazon RDS
• Fique ligado!!!
18. Amazon ElastiCache é um serviço de caching
gerenciado e compatível com Memcached
Simples de criar e operar
Escale clusters de cache com cliques de botão
Sem complexidades operacionais
Resposta ultra rápida para requisições de leitura
19. Amazon ElastiCache – Alguns recursos recentes
• Oferta Gratuita e novos tamanhos de instancia (Micro e Medium)
• Suporte a Amazon VPC
• Auto Discovery
• Fique ligado!!!
20. Amazon DynamoDB é um serviço NoSQL gerenciado
Armazene e recupere qualquer quantidade de dados
Escale throughput a milhões de I/O por segundo
Sem complexidades operacionais
Latencias de poucos milisegundos
Baseado em tecnologias amplamente utilizadas na amazon.com
21. Do-it-yourself NoSQL Amazon DynamoDB
~100s de passos manuais Três cliques ou
uma chamada de API
Select the right NoSQL Database engine
Deploy hardware configurations
Set up software configurations
Decide and deploy replication configurations
Create and manage DNS entries
Detect instance failure conditions
Detect network failure conditions
Detect storage failure conditions
Decide when to fail-over….
Re-establish application connections.
Criando uma solução NoSQL na AWS
23. Amazon Redshift é um serviço de data warehouse rápido,
gerenciado e de escala de petabytes
10x mais barato
Sem complexidades operacionais
Fácil de usar
10x mais rápido
24. Arquitetura do Amazon Redshift
Queries
Carga de dados
Backup
Restore
Resize
10 GigE
(HPC)
Ingestion
Backup
Restore
JDBC/ODBC
26. • O Kekanto é a rede social do boca a
boca online onde você troca opiniões
sobre lugares e serviços.
• 12 milhões de acessos mensais no site e
aplicativos para Android, iOS, Windows
Phone.
“Conseguimos escala, alta disponibilidade e economia
pois não precisamos de sysadmin e sim DevOps”.
“Soluções as a service
da AWS são mais
práticas, zeram o
CAPEX e são mais fáceis
de gerenciar”
- Bruno Yoshimura
CTO e co-fundador
27. Os Desafios
• Escalabilidade sob demanda no MySQL
• Alta disponibilidade para não ficar fora do ar.
• Melhorias de performance de backend com
sistema de caches (banco de dados “temporário”).
• Solução de backup de dados incremental de banco
de dados relacional cuja estrutura muda ao longo do
tempo.
• Até 10 mil escritas de logs por segundo.
28.
29. Escolha a melhor ferramenta para o trabalho
• Um tamanho só não serve para todos
• Opções gerenciadas ou do-it-yourself para virtualmente todos os tipos de uso
– Não são mutuamente exclusivas
• Foque na sua aplicação e automatize o que for possível!