Amazon SimpleDB
Visão geral
O Amazon SimpleDB é um armazenamento de dados NoSQL altamente disponível que descarrega o trabalho de administração do banco de dados. Os desenvolvedores simplesmente armazenam e consultam itens de dados por meio de solicitações de serviços da Web e o Amazon SimpleDB faz o restante.
Desvinculado pelos requisitos exigentes de um banco de dados relacional, o Amazon SimpleDB foi otimizado para fornecer alta disponibilidade, flexibilidade e facilidade de escalabilidade com pouca ou nenhuma carga administrativa. Nos bastidores, o Amazon SimpleDB cria e gerencia várias réplicas distribuídas geograficamente dos seus dados de forma automática para permitir a alta disponibilidade e a durabilidade dos dados. O serviço cobra somente pelos recursos realmente consumidos no armazenamento dos dados e no atendimento das solicitações. Você pode alterar o modelo de dados durante o processo e os dados serão automaticamente indexados. Com o Amazon SimpleDB, você pode se concentrar no desenvolvimento de aplicativos sem se preocupar com o provisionamento da infraestrutura, alta disponibilidade, manutenção do software, gerenciamento de esquemas e de índices, ou adequação do desempenho.
Tópicos da página
Benefícios
Abrir tudoToque baixo
O serviço permite que você se concentre totalmente no desenvolvimento de aplicativos de valor agregado, em vez de em uma administração de banco de dados árdua e demorada. O Amazon SimpleDB gerencia automaticamente o provisionamento de infraestrutura, a manutenção de hardware e de software, a replicação e a indexação de itens de dados e o ajuste do desempenho.
Altamente disponível
O Amazon SimpleDB cria automaticamente várias cópias geograficamente distribuídas de cada item de dados armazenado. Isso fornece alta disponibilidade e durabilidade – no caso improvável de que uma Réplica falhe, o Amazon SimpleDB pode fazer um failover para outra Réplica no sistema.
Flexível
À medida que seus negócios mudam ou seu aplicativo evolui, você pode facilmente fazer essas mudanças se refletirem no Amazon SimpleDB sem se preocupar em quebrar um schema rígido ou com a necessidade de refatorar código; basta adicionar outro atributo ao conjunto de dados do Amazon SimpleDB quando necessário. Você também pode escolher entre solicitações de leitura consistentes ou eventualmente consistentes, ganhando flexibilidade para ajustar as exigências de desempenho de leitura (latência e taxa de transferência) e as exigências de coerência com as demandas do seu aplicativo, ou até mesmo demandas das diferentes partes de seu aplicativo.
Simples de usar
O Amazon SimpleDB fornece acesso simplificado às funções de armazenamento e consulta que tradicionalmente são obtidas usando um cluster de banco de dados relacional, sem deixar de fora outras operações de banco de dados complexas, muitas vezes não utilizadas. O serviço permite que você adicione dados rapidamente e facilmente recupere ou edite esses dados através de um simples conjunto de chamadas de API.
Desenvolvido para uso com outros serviços da Amazon Web Services
O Amazon SimpleDB foi projetado para integrar-se facilmente com outros serviços da AWS, como o Amazon S3 e o EC2, oferecendo a infraestrutura para a criação de aplicativos em escala da Web. Por exemplo, os desenvolvedores podem executar seus aplicativos no Amazon EC2 e armazenar seus objetos de dados no Amazon S3. O Amazon SimpleDB pode então ser usado para consultar os metadata do objeto de dentro do aplicativo no Amazon EC2 e retornar ponteiros para os objetos armazenados no Amazon S3. Os desenvolvedores também podem usar o Amazon SimpleDB com o Amazon RDS para aplicativos que têm necessidades de banco de dados relacionais e não relacionais. Os dados transferidos entre o Amazon SimpleDB e outros Amazon Web Services dentro da mesma região são gratuitos.
Segurança
O Amazon SimpleDB fornece um ponto de extremidade https para garantir uma comunicação segura e criptografada entre o seu aplicativo ou cliente e o seu domínio. Além disso, através da integração com o AWS Identity and Access Management, você pode estabelecer o controle em nível de usuário ou de grupo sobre o acesso a determinadas operações e domínios SimpleDB.
Baixo custo
O Amazon SimpleDB repassa para você os benefícios financeiros da escala da Amazon. Pague somente pelos recursos que você de fato utilizar. Para o Amazon SimpleDB, isso significa que as leituras e gravações de armazenamento de dados são cobradas por recursos computacionais utilizados por cada operação e você não é cobrado por recursos de computação quando você não os estiver usando ativamente (ou seja, fazendo solicitações).
Casos de uso em destaque
Abrir tudoRegistro em log
Como o Amazon SimpleDB permite que você se desfaça totalmente do trabalho necessário para executar um banco de dados de produção, muitos desenvolvedores consideram-no um armazenamento de dados ideal, de toque baixo para registrar informações sobre condições ou eventos, atualizações de status, atividades recorrentes. O Amazon SimpleDB permite que você “configure e se esqueça” desses registros de dados de maneira econômica e os utilize para diversas finalidades, como:
- Monitoramento ou rastreamento 
- Medição 
- Tendência de análises de negócios 
- Auditoria 
- Arquivamento ou conformidade regulamentar 
Os exemplos de aplicativos incluem:
- Armazenamento de registros de servidor de maneira central, para reduzir o espaço que consomem em cada servidor em execução 
- Registrar métricas operacionais ou os resultados de testes de desempenho contínuos para análise posterior 
- Entradas de acesso de auditoria ou mudanças de configuração para aplicativos ou dispositivos em rede 
- Capturar e monitorar as condições do ambiente (temperatura, níveis de pressão, umidade etc.) em vários locais e programar alertas para condições específicas 
- Registro e rastreamento de informações de geolocalização sobre objetos ou status de processo para atividades em um fluxo de trabalho 
Diversos atributos do Amazon SimpleDB tornam-no um armazenamento de dados atrativo para registros de dados:
- Central, com alta disponibilidade — Se seus registros de dados estavam anteriormente presos localmente em vários dispositivos/objetos, aplicativos ou silos de processo, você aproveitará o benefício de poder acessar seus dados centralmente em um só lugar na nuvem. Além disso, o Amazon SimpleDB replica seus dados de maneira automática e georedundante para garantir a alta disponibilidade. Isso significa que, diferente de uma solução centralizada no local, você não estará criando um ponto único de falha com o Amazon SimpleDB e seus dados estarão lá quando forem necessários. Todos os dados podem ser armazenados por meio de solicitações de serviços da web com uma solução e, em seguida, acessados por qualquer dispositivo. 
- Administração zero — Você armazena seus itens de dados com solicitações simples de serviços web e a Amazon Web Services cuida do resto. A natureza “configure e esqueça” do serviço significa que você não está gastando tempo no gerenciamento do anco de dados para armazenar e manter os registros de dados. 
- Econômico — O Amazon SimpleDB cobra preços baratos para armazenar e consultar seus registros de dados. Como você está pagando à medida que usa apenas para os recursos que utiliza, não é necessário fazer seu próprio planejamento de volume ou se preocupar com o carregamento do banco de dados. O serviço simplesmente responde ao volume solicitado à medida que ele é transferido, realizando cobranças apenas dos recursos realmente consumidos. 
Jogos on-line
Para desenvolvedores de jogos on-line ou qualquer plataforma, o Amazon SimpleDB oferece uma solução de banco de dados livre de administração, escalável e de alta disponibilidade para dados de usuário e de jogo.
Dados comuns de jogos on-line podem ser armazenados, indexados e consultados com o Amazon SimpleDB, incluindo:
- Pontuações do usuário e arquivamentos 
- Configurações ou preferências do usuário 
- Informações sobre itens do jogador ou conteúdo gerado pelo usuário 
- Estado de sessão do jogo (quando um jogador salva ou interrompe) 
- Conteúdo de jogo dinâmico (aplicando uma arquitetura orientada para o serviço ao seu jogo e armazenando e servindo novos desafios ou conteúdo para jogadores com o Amazon SimpleDB) 
- Metadata indexado para objetos grandes usados por seu jogo e armazenado no Amazon S3 
Várias propriedades do Amazon SimpleDB o tornam ideal para dados serem armazenados para dados de jogos on-line:
- Alta disponibilidade (replicação e failover geo-redundante automáticos): o Amazon SimpleDB alcança alta disponibilidade ao criar automaticamente cópias de seus dados e gerenciar failover para qualquer cópia disponível no caso de uma cópia se tornar indisponível. Isto significa que você evita a complexidade de configurar clusters de banco de dados, mas seu jogo e os usuários continuam usufruindo de acesso livre de interrupção e confiável aos dados chave. 
- Escalabilidade independente: na medida em que seu banco de dados cresce e a atividade dos jogadores varia, o Amazon SimpleDB responde simplesmente ao tráfego e aos volumes de solicitações conforme aumentam ou diminuem, sem precisar de intervenção do desenvolvedor. Você paga apenas pelos recursos que realmente consome. 
- Nenhuma despesa administrativa geral: Evite os empecilhos de administração de banco de dados e elimine a tarefa de fornecimento de estrutura, configuração de software, criação e manutenção de de esquema, índices de criação, ou melhorar o desempenho de consultas. Você pode voltar a criar jogos divertidos e recursos para seus usuários, e parar de ser um administrador de banco de dados. 
Indexação de metadados de objetos do Amazon S3
Muitos desenvolvedores usam o Amazon SimpleDB em conjunto com o Amazon Simple Storage Service (Amazon S3). O Amazon SimpleDB pode ser usado para armazenar indicadores para os locais dos objetos do Amazon S3 e informações detalhadas sobre os objetos (metadados), complementando o Amazon S3 com a funcionalidade eficiente de consulta de um banco de dados. Para desenvolvedores que armazenam um grande número de objetos no Amazon S3, o Amazon SimpleDB oferece uma maneira flexível, escalável e barata de armazenar metadados de objetos enquanto reduz o trabalho de todos os gastos administrativos associados à execução de um banco de dados. Exemplos comuns de metadados de objetos que podem ser armazenados, indexados e consultados com facilidade no Amazon SimpleDB incluem:
- Tipos ou formatos de dados (imagem, vídeo, documento) 
- Associações do usuário ou designações de acesso 
- Datas em que o objeto foi criado, acessado ou modificado 
- Nome ou localização dos objetos relacionados 
- Classificações e comentários do usuário 
- Marcadores de assunto ou categoria 
- Marcadores de geolocalização 
Armazenar metadados como os citados acima é extremamente valioso para a entrega de conteúdo, aplicativos de mídia, aplicativos de backup e arquivamento e muitos outros tipos de aplicativos. O Amazon SimpleDB é o local ideal para metadados, pois fornece:
- Design flexível e sem schema: anexe com facilidade atributos adicionais de metadados sem “quebrar” um schema rígido. Se você desejar começar a rastrear as classificações do usuário para objetos de vídeo, isso não envolverá mudanças de banco de dados demoradas. 
- Atributos multivalores: um atributo de metadados pode ter diversos valores. Isso significa que é possível marcar diversas pessoas em uma fotografia ou associar diversos gêneros a arquivos de música. 
- Nenhuma despesa administrativa geral: Além de evitar os empecilhos do provisionamento de infraestrutura e da instalação e manutenção de software necessária para executar um banco de dados, o Amazon SimpleDB indexa automaticamente seus dados, ajusta o desempenho da consulta e cria cópias georedundantes de seus dados. 
O Amazon SimpleDB também fornece escalamento de baixa fricção, respondendo automaticamente às mudanças no volume solicitado e apenas cobrando um valor baixo pelos recursos que forem realmente consumidos.
- Visite nossos exemplos de código e bibliotecas para ver um passo a passo técnico da indexação de metadados do S3, completo com exemplos de código.