O documento discute opções de bancos de dados na AWS, incluindo serviços gerenciados como Amazon RDS e DynamoDB. Estes serviços fornecem escalabilidade, disponibilidade e redução de custos de administração em comparação com opções tradicionais. O documento também apresenta estudos de caso de clientes como Flipboard e Earth Networks que usam esses serviços.
3. Bancos de Dados - Modelos
Auto-gestão Database as a Service
Banco de Dados no Amazon Relational Amazon DynamoDB
Amazon EC2 Database Service (RDS) NoSQL
Sua escolha de software SQL Server, MySQL ou Modelo não relacional
de banco de dados Oracle oferecidos como
serviço
Bring Your Own License Overhead zero de
(BYOL) Licenciamento Flexível:
administração
BYOL ou Licença Incluída
4. Bancos de Dados “As a Service”
Amazon RDS
+
DynamoDB
ElastiCache
MySQL, Oracle, SQL
Server
Memcached
Apps que precisam de BDs relacionais escaláveis Apps que precisam de Escalabilidade Massiva
YesSQL NoSQL
5. Bancos de Dados – Modo Tradicional
• Desperdício de
Capacidade
Demanda
• Custo de
manutenção
• Consome mais
tempo
Q1 Tempo
6. O que os Clientes Diziam
“Nos ajude a focar na aplicação – Diminua tempo gasto em manutenção para
usarmos em mais tempo de desenvolvimento e tuning de banco”
Security planning
Upgrades de servidores License/doc training
Backup rec 5% 5%
Upgrades de storage load/unload
20% 5%
Scripting coding
Backup e recovery
Upgrades e patches Performance and 25% 40%
tuning
Falhas de Hardware Install, upgrade, patch,
migration
Distribuição de Tempo
Fonte: http://www.forrester.com/Events/Content/0,5180,-1110,00.ppt
7. Banco de Dados – A Nova Maneira
Demanda • Elasticidade
• Foco na App
• Imediato
Tempo
8. Amazon Relational Database Service
RDS é um serviço escalável de bancos de dados relacionais que é
simples, fácil de escalar, confiável e efetivo em custo
Vários Engines de BDs
Serviço Gerenciado
Escalabilidade Simples
Disponibilidade com Multi-AZ
Funciona c/ EC2 & ElastiCache
Amazon Relational Database Service (RDS)
9. Bancos de Dados Relacionais
Melhora Melhora
Amazon RDS Disponibilidade Throughput
Reduz Latência
Escalabilidade Simples
Multi AZ
Read Replicas
ElastiCache
Escalabilidade Simples Read Replicas ElastiCache
11. Escalabilidade de Leituras com Amazon
ElastiCache e Read Replicas
Reduz Latência de
Leitura com ElastiCache
Read replica para
escalabilidade de leitura
Relatórios podem ser
executados nas réplicas
12. Alta Disponibilidade – Uso de Multi-AZ
Tolerância a Falhas
Replicação Síncrona
Failover Automático
16. Introduction
Your Social Magazine for Apple Mobile Devices
Delivers relevant articles and photos based on usage and
interactions within your social networks
Launched 6 months after the initial team put together
Over 5 million users and 2 billion page “flips” per month
17. Operating in the Cloud : Managing Complex, Real Time Data
6 months to deploy a real-time, socially relevant magazine
Challenge
Constantly changing user interests
Architecture Ability to change all hardware and software elastically
Frequently changing system requirements
App needs Complex queries on user and relevancy data
Milliseconds count. So, does uptime
Solution Highly performant, reliable, proven database technology
Amazon RDS MySQL
18. The Data View of the World
Flipboard Application
ElastiCache Memcache for
performance
Reliable and
Operational
Complex data,
Configuration
Queries
and State Data
SimpleDB RDS MySQL
19. Friends, Magazines …
anyone relevant to
me who published
something very
recently that I care
about seeing
Show Me More, Please!
A friend who recently shared a photo
20. Amazon RDS Tips For Success
1. Leverage the Cloud for what it does best. Don’t bring old DC habits.
2. Scale up for better performance.
3. Use RDS for complex, real-time data
4. Use Read Replicas for write and read heavy databases. They are awesome.
5. Leverage existing SQL knowledge and experience.
6. Use copies of your database for testing new code. It’s trivial and saves time.
7. Scale horizontally with sharding. Plan for it before you need it.
22. O Desafio da Escalabilidade
Requisito: performance
consistente e previsível
Performance
Aquisição de Hardware e
Software
$!
Sharding
Caching
Gestão deCluster
Realidade: Gestão de Falhas
performance degrada
Escalabilidade
23. Amazon DynamoDB
DynamoDB é um serviço NoSQL gerenciado que fornece performance
previsível e extremamente rápida com escalabilidade
Fácil Administração
SSD’s para Baixa Latência
Capacidade Reservada
Storage e Throughput
potencialmente ilimitado
24. DynamoDB – Benefícios
Performance Rápida e Previsível ADMIN
• Latência baixa
Fácil Administração
• Escalabilidade Simples
• Alocação automática de recursos e alta disponibilidade incluída
Sempre Durável
• Performance sem compromissos
• Sem redução em consistência ou durabilidade para conseguir throughput
25. Throughput Provisionado
Reserve os IOPS que deseja por tabela
Aumente ou diminua via API ou Console
Pague por throughput e storage (não instancias)
• $0.01 por hora a cada 10 unidades de Capacidade de
Write
• $0.01 por hora a cada 50 unidades de Capacidade de
Read
• $1.00 por GB-mês de Storage
28. Introduction
Gathers and analyzes atmospheric observations from a
global sensor network to promote a better understanding
of the planet
Proprietary lightning network output used to pinpoint
lightning activity - best indicator of dangerous weather
Owner of the WeatherBug brand (mobile, desktop, Web)
29. Problem
Generate lightning alert notifications, in proximity
Need to the user’s location, on a mobile device.
Geospatial queries
Scalable
Constraints • 6 million existing mobile users
• 100% YOY mobile growth
• Severe Weather Outbreaks
Fast
• Speed + Accuracy = Safety
Reduce Time to Market
Cost of Ownership
31. Analysis
Provider Product Throughput Engineering Cost of
per Instance Cost Ownership
Microsoft SQL Server 2008 Medium Low High
MySQL MySQL Medium High* High*
Earth Networks In Memory Quadtree High High Medium
Amazon Mem-Cache High Medium Medium
Amazon DynamoDB High Low Low
* Not currently supported by Earth Networks
32. Reflection
DynamoDB Advantages
• Easy to Provision
• Built-in Consistency
• Scalable
• High Availability
DynamoDB Wish List
• Durability across regions in addition to inside a region
• Auto-scale down without a throttle on change
• Item size limit of 64k
33. Teste os serviços de Bancos de Dados da AWS!
Amazon RDS – Oferta Gratuita
• Visite - aws.amazon.com/rds
DynamoDB – Oferta Gratuita
• Visite - aws.amazon.com/dynamodb
Notas do Editor
RDS today is used by thousands of customers from small startups to the world’s largest corporations.We have a predictable history of delivering reliable services and adding even greater functionality over time. (MAZ, RR, Caching)
RDS prestructure before adding new attributes, with NoSQL you do not have to do this it is a sparse schema. RDS creates DB on EC2 and EBS for you, gives you Host name and put and you take it from there with your fav SQL client. SimpleDB is in the DataPath, you dump the data and it creates the schema (Does Dynamo?)RDS Benefits – 1. Scale with modify API but there is an outage when you swap out instance types (e.g. from med to XL) but only takes a femins. Events are starting and done. IP address stays the same. Same for EBS add storage with no downtime or degradation in perf2. DB Backup and Restore – DB Snapshot or automated backup. 3. Monitor DB – recover from DB crash, EC2 crash, Gumi has been our number 1 customer for a few weeks over $250k in the last 4 weeksFunzio is in the top 5 and so is activisionEA, sony, bightgames also customers.We have been talking to playfish about DynamoDB but I don’t see them in the rds user base.Could not find zynga.
So, who is using DynamoDB?Many companies within Amazon and outside Amazon.Amazon CloudDrive, Smugmug, Amazon retail are examples within Amazon.Smugmug is using us for storing their metadata on DynamoDB.Formpsring and Tapjoy are one of our early adopters.Finally, the shazam the popular voice recognition application for ads and music is using us to store its data for various applications.