DynamoDB - Uma Introdução

42
DynamoDB Uma Introdução ao banco de dados NoSQL as a service da AWS José Papo AWS Tech Evangelist @josepapo

description

Webinar realizado em dezembro de 2012. Introdução ao DynamoDB, suas características técnicas, benefícios e demonstrações do produto.

Transcript of DynamoDB - Uma Introdução

Page 1: DynamoDB - Uma Introdução

DynamoDB Uma Introdução ao banco de dados

NoSQL as a service da AWS

José Papo

AWS Tech Evangelist

@josepapo

Page 2: DynamoDB - Uma Introdução

Bancos de Dados na

Nuvem da Amazon

Page 3: DynamoDB - Uma Introdução

Flexibilidade e independência

Sistemas Operacionais Linguagens e Bibliotecas Aplicações Certificadas

Page 4: DynamoDB - Uma Introdução

Bancos de Dados - Modelos

Banco de Dados no

Amazon EC2

Sua escolha de software

de banco de dados

Bring Your Own License

(BYOL)

Amazon Relational

Database Service (RDS)

SQL Server, MySQL ou

Oracle oferecidos como

serviço

Licenciamento Flexível:

BYOL ou Licença Incluída

Amazon DynamoDB

NoSQL

Modelo não relacional

Overhead zero de

administração

Auto-gestão Database as a Service

Page 5: DynamoDB - Uma Introdução

Opções de Bancos de Dados – Auto-Gestão

Relacional NoSQL

Page 6: DynamoDB - Uma Introdução

Infraestrutura Global

US West (Northern

California)

US East (Northern

Virginia)

EU (Ireland)

Asia

Pacific (Singapore)

Asia

Pacific (Tokyo)

Regiões AWS

Pontos Edge AWS

GovCloud (US ITAR

Region)

US West (Oregon)

South

America (Sao Paulo)

Page 7: DynamoDB - Uma Introdução

O que é NoSQL?

Page 8: DynamoDB - Uma Introdução

Bancos de dados NoSQL normalmente são facilmente escaláveis horizontalmente, podem trabalhar com quantidades de dados maciças e não utilizam um modelo relacional para suas estruturas de dados.

Page 9: DynamoDB - Uma Introdução

DynamoDB

Page 10: DynamoDB - Uma Introdução

DynamoDB é um Banco de

Dados NoSQL “as a service”

Armazene e recupere qualquer quantidade de dados

Sirva níveis gigantescos de tráfego e requisições

Page 11: DynamoDB - Uma Introdução

Sem as complexidades

operacionais

Sem instalações de software

Não é necessário configurar clusters

Custos mínimos de administração

Page 12: DynamoDB - Uma Introdução

Performance consistente e

previsível

Latências em unidades de milisegundos.

Armazenado em discos SSD.

Page 13: DynamoDB - Uma Introdução

Modelo de dados flexível

Modelo Chave/Valor.

Não requer schemas.

Fácil de criar. Fácil de ajustar.

Page 14: DynamoDB - Uma Introdução

Escalabilidade simples

Sem limites de tamanho de tabelas.

Zero downtime.

Armazenamento ilimitado.

Page 15: DynamoDB - Uma Introdução

Durável e com alta disponibilidade.

Escritas consistentes em disco.

Replicação em diversos data centers

dentro de uma região.

Page 16: DynamoDB - Uma Introdução

Sem complexidades de

administração!

Page 17: DynamoDB - Uma Introdução

Sem complexidades de

administração!

Page 18: DynamoDB - Uma Introdução

Duas decisões + três

cliques = pronto para uso!

Page 19: DynamoDB - Uma Introdução

Duas decisões + três

cliques = pronto para uso!

Page 20: DynamoDB - Uma Introdução

Capacidade provisionada.

Reserve quantidade de requisições por

segundo para leituras e escritas.

Aumente ou diminua a capacidade a

qualquer momento.

Page 21: DynamoDB - Uma Introdução

Pague por capacidade.

Precificação por hora de capacidade

provisionada e dados armazenados

Page 22: DynamoDB - Uma Introdução

Duas decisões + três

cliques = pronto para uso!

Page 23: DynamoDB - Uma Introdução
Page 24: DynamoDB - Uma Introdução
Page 25: DynamoDB - Uma Introdução
Page 26: DynamoDB - Uma Introdução

Duas decisões + uma

chamada de API = pronto

para uso!

Page 27: DynamoDB - Uma Introdução

$create_response = $dynamodb->create_table(array(

'TableName' => 'ProductCatalog',

'KeySchema' => array(

'HashKeyElement' => array(

'AttributeName' => 'Id',

'AttributeType' => AmazonDynamoDB::TYPE_NUMBER

)

),

'ProvisionedThroughput' => array(

'ReadCapacityUnits' => 10,

'WriteCapacityUnits' => 5

)

));

Page 28: DynamoDB - Uma Introdução

APIs para as principais plataformas

Java

PHP

.NET

Perl

Python

Ruby

Page 29: DynamoDB - Uma Introdução

Modifique capacidade

manualmente ou automaticamente

Page 30: DynamoDB - Uma Introdução
Page 31: DynamoDB - Uma Introdução

Demo!

Page 32: DynamoDB - Uma Introdução

Como fazer análises e

queries complexas com

os dados do DynamoDB?

Page 33: DynamoDB - Uma Introdução

Com Hadoop na Nuvem!

Page 34: DynamoDB - Uma Introdução

"Hadoop é um storage confiável e um sistema analítico"

HDFS MapReduce

Page 35: DynamoDB - Uma Introdução

Reduz complexidade/custo da gestão do Hadoop

Integra diretamente com Serviços AWS (EC2, S3,

DynamoDB, etc)

Facilita a elasticidade para Big Data

AMAZON ELASTIC MAPREDUCE

Page 36: DynamoDB - Uma Introdução

Data Warehouse Elástico

Aumenta

para 25

instancias

Data Warehouse

(Estável)

Data Warehouse

(Processo Batch)

Diminui

para

9

instancias

Data Warehouse

(Estável)

Page 37: DynamoDB - Uma Introdução

Elastic MapReduce, DynamoDB e Hive

http://docs.amazonwebservices.com/ElasticMapReduce/latest/DeveloperGuide/EMRforDynamoDB.html

Page 38: DynamoDB - Uma Introdução

Big Data na Nuvem da AWS aws.amazon.com/big-data

Page 39: DynamoDB - Uma Introdução

NoSQL na Nuvem da AWS aws.amazon.com/nosql

Page 40: DynamoDB - Uma Introdução

OFERTA

GRATUITA! aws.amazon.com/pt/free

Page 41: DynamoDB - Uma Introdução

OBRIGADO! aws.typepad.com/brasil

slideshare.net/AmazonWebServicesLATAM

José Papo

AWS Tech Evangelist

@josepapo

Page 42: DynamoDB - Uma Introdução