Qu'est qu'une base de données clé-valeur ?

Définition d'une base de données clé-valeur

Une base de données clé-valeur est un type de base de données non relationnelle qui utilise une méthode clé-valeur simple pour stocker des données. Une base de données clé-valeur stocke les données sous forme de paires clé-valeur dans lesquelles une clé sert d'identifiant unique. Les clés et les valeurs peuvent se présenter sous toutes les formes, des objets simples aux objets composés complexes. Les bases de données clé-valeur sont hautement divisibles et permettent une mise à l'échelle horizontale à des échelles que d'autres types de bases de données ne peuvent pas atteindre. Par exemple, Amazon DynamoDB alloue des partitions supplémentaires à une table si une partition existante est à pleine capacité et qu'un espace de stockage supplémentaire est nécessaire.

Le schéma suivant montre un exemple de données stockées sous forme de paires clé-valeur dans DynamoDB.

Schéma montrant un exemple de données stockées sous forme de paires clé-valeur dans DynamoDB

Cas d'utilisation

Magasin de sessions

Une application orientée session telle qu'une application Web ouvre une session lorsqu'un utilisateur se connecte, puis ferme la session lorsque l'utilisateur se déconnecte ou lorsque la session expire. Pendant cette période, l'application stocke toutes les données liées à la session dans la mémoire principale ou dans une base de données. Les données de session peuvent inclure des informations sur le profil d'utilisateur, des messages, des données et des thèmes personnalisés, des recommandations, des promotions ciblées et des remises. Chaque session d'utilisateur possède un identifiant unique. Les données de session sont uniquement interrogées par une clé primaire. Ainsi, un magasin clé-valeur rapide est idéal dans ce contexte. En général, les frais généraux par page liés aux bases de données clé-valeur sont inférieurs à ceux associés aux bases de données relationnelles.

Panier d'achat

Pendant la période des achats de Noël, un site Web d'e-commerce peut recevoir des milliards de commandes en quelques secondes. Les bases de données clé-valeur peuvent gérer la mise à l'échelle de grandes quantités de données et de grands volumes de changements d'état tout en répondant aux besoins de millions d'utilisateurs simultanés grâce à un traitement et à un stockage distribués. Les bases de données clé-valeur intègrent également une capacité de redondance, ce qui leur permet de gérer la perte de nœuds de stockage.

Bases de données clé-valeur courantes

Amazon DynamoDB

Amazon DynamoDB est une base de données non relationnelle offrant des performances fiables, quelle que soit l'échelle. Il s'agit d'une base de données multirégion et multimaître à gestion intégrale qui fournit une latence constante de quelques millisecondes et un système de sécurité, de sauvegarde et de restauration intégré, ainsi que de mise en cache en mémoire. Dans DynamoDB, un élément est composé d'une clé primaire ou composite et d'un nombre variable d'attributs. Le nombre d'attributs associés à un élément individuel n'est pas limité, mais la taille globale d'un élément, comprenant notamment les noms et valeurs d'attribut, ne doit pas dépasser 400 Ko. Une table est un ensemble d'éléments de données, de même qu'une table est un ensemble de lignes dans une base de données relationnelle. Chaque table peut contenir un nombre illimité d'éléments de données.

Vous pouvez être opérationnel avec DynamoDB en 10 minutes, en suivant ce didacticiel détaillé. Apprenez-en davantage sur DynamoDB et démarrez aujourd'hui.

Démarrez avec Amazon DynamoDB

Apache Cassandra

Apache Cassandra est une base de données relationnelle haute performance couramment utilisée. Les clients AWS qui gèrent actuellement Cassandra sur site voudront peut-être profiter de l'évolutivité, de la fiabilité, de la sécurité et des avantages économiques liés à l'exécution de Cassandra sur Amazon EC2.

EC2 et Amazon Elastic Block Store (Amazon EBS) fournissent des capacités de calcul sécurisées et redimensionnables dans le cloud AWS. Lorsque ces capacités sont combinées, vous pouvez déployer Cassandra et mettre à l'échelle les capacités selon vos besoins. Étant donné le nombre de topologies de déploiement possible, il n'est pas toujours simple de sélectionner la stratégie la plus adaptée à votre cas d'utilisation. Consultez l'article Best Practices for Running Apache Cassandra on Amazon EC2 pour déployer Apache Cassandra dans le cloud AWS.

DataStax Enterprise (DSE) est une plate-forme de données pour applications cloud active en permanence et optimisée par Apache Cassandra. DSE est conçu pour gérer les charges de travail de Big Data sur plusieurs nœuds sans point unique de défaillance. DSE résout le problème des défaillances en employant un système pair à pair distribué entre des nœuds homogènes où les données sont distribuées entre tous les nœuds du cluster. La plate-forme offre une fonctionnalité avancée destinée à accélérer votre capacité à créer des applications cloud intelligentes et attractives. Chaque nœud de la plate-forme intègre de puissances fonctionnalités d'indexation, de recherche, d'analyse et graphiques grâce à la combinaison de Cassandra avec Apache Solr, Apache Spark et DSE Graph. Vous pouvez écrire des données une seule fois et y accéder en utilisant différentes charges de travail ou accéder à des modèles, le tout depuis une seule solution cohérente.  

Utilisez le guide AWS DataStax Enterprise Quick Start (également disponible au format PDF) pour déployer un cluster DSE dans le cloud AWS.