Amazon SimpleDB est un stockage de données non relationnel combinant flexibilité et haute disponibilité, et déchargeant le client des tâches d'administration de base de données. Les développeurs stockent et récupèrent simplement leurs éléments de données en effectuant des requêtes auprès des services Web, et Amazon SimpleDB fait le reste.

Libéré des exigences strictes des bases de données relationnelles, Amazon SimpleDB est optimisé pour offrir une disponibilité et une flexibilité élevées, avec peu ou pas de tâches d'administration. En coulisses, Amazon SimpleDB crée et gère automatiquement plusieurs réplicas de vos données diffusés géographiquement pour permettre une haute disponibilité et une durabilité des données. Le service ne vous facture que les ressources réellement consommées lors du stockage de vos données et du traitement de vos demandes. Vous pouvez changer votre modèle de données n'importe quand, et les données sont automatiquement indexées pour vous. Avec Amazon SimpleDB, vous pouvez vous focaliser sur le développement de l'application sans avoir à vous soucier de la mise en service de l'infrastructure, de la haute disponibilité, de la maintenance de logiciels, de la gestion du schéma et de l'index, ou de la personnalisation de la performance.

Le service vous permet de vous consacrer pleinement au développement de vos applications à valeur ajoutée, plutôt qu'à l'administration fastidieuse et chronophage des bases de données. Amazon SimpleDB gère automatiquement la mise en service de l'infrastructure, la maintenance du matériel et des logiciels, la réplication et l'indexation des éléments de données, et le réglage des performances.

Amazon SimpleDB crée automatiquement plusieurs copies géographiquement distribuées de chaque élément de données que vous stockez. Ceci permet une haute disponibilité et une haute durabilité : dans le cas peu probable d'échec d'un des réplicas, Amazon SimpleDB peut effectuer un basculement vers un autre réplica dans le système.

A mesure que votre activité ou que votre application évolue, vous pouvez facilement prendre en compte ces changements dans Amazon SimpleDB, sans avoir besoin de casser un schéma rigide ou de refactoriser le code : ajoutez simplement un autre attribut à votre ensemble de données Amazon SimpleDB si besoin. Vous pouvez également choisir entre des demandes de lecture cohérentes ou cohérentes à terme, et profiter ainsi de la flexibilité nécessaire pour adapter les performances de lecture (latence et débit) et les exigences de cohérence aux besoins de votre application, et même à ceux de différentes parties de votre application.

Amazon SimpleDB fournit un accès rationalisé aux fonctions de stockage et d'interrogation qui sont traditionnellement mises en place en utilisant un cluster de bases de données relationnelles, tout en laissant de côté les autres opérations complexes, souvent non exploitées, des bases de données. Le service vous permet d'ajouter rapidement des données et de récupérer ou de modifier facilement ces données par le biais d'un ensemble simple d'appels d'API.

Amazon SimpleDB est conçu pour s'intégrer facilement à d'autres services Amazon comme Amazon S3 et EC2, fournissant l'infrastructure pour créer des applications à l'échelle du Web. Par exemple, les développeurs peuvent exécuter leurs applications dans Amazon EC2 et stocker leurs objets de données dans Amazon S3. Amazon SimpleDB peut être utilisé pour interroger les métadonnées objet depuis l'application dans Amazon EC2 et renvoyer les pointeurs vers les objets stockés dans Amazon S3. Les développeurs peuvent aussi utiliser Amazon SimpleDB avec Amazon RDS pour les applications qui ont besoin à la fois de bases de données relationnelle et non relationnelle. Le transfert des données entre Amazon SimpleDB et d'autres Amazon Web Services dans la même région est gratuit.

Amazon SimpleDB fournit des points de terminaison https pour assurer la sécurité et le cryptage des communications entre votre domaine et l'application ou le client. De plus, grâce à l'intégration avec AWS Identity and Access Management, vous pouvez facilement établir un contrôle des accès au niveau utilisateur ou groupe pour des domaines et des opérations spécifiques de SimpleDB.

Avec Amazon SimpleDB, vous profitez des avantages financiers liés aux économies d'échelle d'Amazon. Vous ne payez que les ressources réellement consommées. Pour Amazon SimpleDB, cela veut dire que les stockages, les lectures et les écritures de données sont facturés par ressources de calcul consommées par chaque opération, et vous ne serez pas facturé pour ces ressources de calcul si vous ne les utilisez pas réellement (i.e. en faisant des demandes).

Puisque Amazon SimpleDB vous permet de décharger complètement le travail requis pour faire fonctionner une base de données de production, de nombreux développeurs y voient un stockage idéal de données à faible contact pour des informations de journalisation au sujet des conditions ou évènements, des mises à jour de statut, d'activités récurrentes, de procédés de flux de travail ou d'états d'applications et de périphérique. Amazon SimpleDB vous laisse « installer et oublier » ces journaux de données de manière économique et les utiliser à des fins diverses, telles que :

  • Surveillance ou suivi
  • Comptage
  • Analyse de tendances commerciales
  • Audit
  • Conformité d'archivage ou de réglementation

Les exemples d'application incluent :

  • Stocker les journaux de serveur centralement pour réduire l'espace qu'ils consomment sur chaque serveur en exécution
  • Journalisation des métriques opérationnelles ou des résultats de tests de performance en cours pour une analyse postérieure
  • Audit des entrées d'accès ou des modifications de configuration pour les applications ou périphériques réseautés
  • Capture et surveillance des conditions environnementales (température, niveaux de pression, humidité, etc.) dans diverses emplacements et programmation d'alertes pour des conditions particulières
  • Journalisation et suivi des informations de géolocalisation à propos d'objets ou d'états de processus pour des activités dans un flux de travail

Les attributs multiples d'Amazon SimpleDB en font un stockage de données attractifs pour les journaux de données :

  • Central, avec une Haute disponibilité – Si vos journaux de données étaient précédemment piégés localement dans plusieurs périphériques/objets, application ou silos de processus, vous allez apprécier le bénéfice de pouvoir accéder à vos données centralement dans un seul endroit du cloud. De plus, Amazon SimpleDB reproduit automatiquement et de façon géo-redondante vos données pour s'assurer de leur grande disponibilité. Ceci signifie que contrairement à une solution centralisée sur site, vous ne créez pas de point unique d'échec avec Amazon SimpleDB et vos données seront là quand vous en aurez besoin. Toutes les données pourront être stockées par l'intermédiaire des requêtes de services web avec une solution et ensuite rendues accessibles par n'importe quel périphérique.
  • Aucune tâche administrative – Vous stockez vos éléments de données grâce à des requêtes de services web simples et les Amazon Web Services prennent le reste en charge. La nature du service « installer et oublier » signifie que vous ne passez pas de temps sur la gestion de base de données afin de stocker et de maintenir les journaux de base de données.
  • Économique – Amazon SimpleDB facture des tarifs peu coûteux pour stocker et formuler des interrogations dans vos journaux de données. Puisque vous ne payez seulement que pour ce que vous consommez, vous n'avez pas besoin d'établir votre propre planification de capacité ou vous inquiéter au sujet de la charge de base de données. Le service répond simplement à la demande de volume comme elle va et vient, ne vous facturant seulement que pour les ressources que vous consommez réellement.

Pour les développeurs de jeux en ligne sur n'importe quelle plate-forme, Amazon SimpleDB offre une solution de base de données très disponible et évolutive dont l'administration est gratuite pour les données de jeux et d'utilisateur.

Les données communes que les jeux en ligne peuvent stocker, indexer et interroger avec Amazon SimpleDB incluent :

  • Scores et accomplissements d'utilisateurs
  • Réglages et préférences d'utilisateurs
  • Information sur les objets d'un joueur ou le contenu généré par l'utilisateur
  • État de session de jeu (quand la partie est enregistrée ou interrompue)
  • Contenu de jeu dynamique (appliquant une architecture orientée service à votre jeu et votre stockage, et servant les nouveaux défis ou contenu pour les joueurs avec Amazon SimpleDB)
  • Métadonnées indexées pour les grands objets utilisés par votre jeu et stockés sur Amazon S3

Plusieurs propriétés d'Amazon SimpleDB en font une option bien adaptée pour le stockage de données de jeu en ligne :

  • Haute disponibilité (réplication géo-redondante automatique et basculement) : Amazon SimpleDB atteint une haute disponibilité en créant automatiquement plusieurs copies de vos données et en gérant le basculement vers une copie disponible dans le cas où une copie deviendrait indisponible. Ceci signifie que vous évitez la complexité de l'installation de clusters de bases de données, mais votre jeu et les utilisateurs peuvent profiter d'un accès fiable et sans interruption aux données clés.
  • Redimension sans manipulation : quand votre base utilisateur s'accroît et que l'activité des joueurs fluctue, Amazon SimpleDB répond au trafic et au volume de requêtes comme elles arrivent, sans avoir besoin de l'intervention d'un développeur. Vous payez seulement pour les ressources que vous utilisez.
  • Aucun frais administratif : évitez les vicissitudes de la gestion de base de données et éliminez le travail de provisionnement d'infrastructure, d'installation de logiciel, de création et de maintien d'un schéma, de construction d'indices ou la nécessité de régler les performances d'interrogation. Vous pouvez revenir à la création de jeux et de caractéristiques pour vos utilisateurs et cesser d'être l'administrateur de la base de données.

Beaucoup de développeurs utilisent Amazon SimpleDB conjointement avec Amazon Simple Storage Service (Amazon S3). Amazon SimpleDB peut être utilisé pour stocker les pointeurs vers les emplacements d'objet Amazon S3 et les informations détaillées au sujet des objets (métadonnées), ajoutant ainsi la fonctionnalité d'une requête riche d'une base de données à Amazon S3. Pour les développeurs qui stockent de grands nombres d'objets dans Amazon S3, Amazon SimpleDB offre une méthode flexible, ajustable et peu coûteuse pour stocker des objets métadonnées tout en se débarrassant des frais administratifs associés à la gestion d'une base de données. Des exemples communs de métadonnées d'objet qui peuvent facilement être stockées, indexées et interrogées dans Amazon SimpleDB :

  • Type de données ou format (image, vidéo, document)
  • Associations d'utilisateur ou désignations d'accès
  • Dates de création, accès ou modifications de l'objet
  • Nom ou emplacement des objets liés
  • Évaluations et commentaires d'utilisateur
  • Balises de sujet ou catégorie
  • Balises de géolocation

Stocker des métadonnées comme les exemples cités ci-dessus est précieux pour la diffusion de contenu, les applications mutlimédia, les applications de sauvegarde et d'archivage, et beaucoup d'autres types d'applications. Le service Amazon SimpleDB est une solution parfaite pour l'hébergement des métadonnées car il garantit :

  • une conception flexible sans schéma : vous annexez facilement des attributs de métadonnées supplémentaires sans « casser » un schéma rigide. Si vous voulez commencer à garder une trace des évaluations d'utilisateurs pour des objets vidéo, cela n'entraînera pas de modifications chronophages de la base de données.
  • des attributs à valeurs multiples : un attribut de métadonnées peut avoir plusieurs valeurs. Cela signifie que des photos peuvent être associées à différentes personnes, ou encore que des fichiers musicaux peuvent être liés à plusieurs genres.
  • aucuns frais administratifs : en plus d'éliminer les soucis liés au dimensionnement de l'infrastructure, à l'installation des logiciels et à la maintenance requise pour faire fonctionner une base de données, Amazon SimpleDB indexe automatiquement vos données, adapte les performances d'interrogation et crée des copies géo-redondantes de vos données.

Amazon SimpleDB fournit aussi un dimensionnement avec un faible effet de friction, permettant un ajustement automatique en fonction du volume de requêtes. Le service vous est facturé à un tarif très compétitif, en ne tenant compte que des ressources réellement utilisées.