Bases de données dans un environnement de données grande paire clé-valeur

De loin, la plus simple de la NoSQL (non-seulement-SQL) des bases de données dans un environnement grand de données sont celles qui emploient le modèle paire clé-valeur (KVP). Bases de données KVP ne nécessitent pas un schéma (comme SGBDR) et offrent une grande flexibilité et d'évolutivité.

Bases de données KVP ne proposent pas ACID (atomicité, cohérence, isolation, durabilité) la capacité, et nécessitent exécutants de penser au sujet du placement des données, la réplication et la tolérance de panne car ils ne sont pas expressément commandées par la technologie elle-même. Bases de données KVP ne sont pas typées. En conséquence, la plupart des données sont stockées sous forme de chaînes.

ToucheValeur
CouleurBleu
LibationBière
HérosSoldat

Ceci est un ensemble très simplifiée des clés et des valeurs. Dans une grande mise en œuvre de données, de nombreuses personnes auront des idées différentes sur les couleurs, les libations, et des héros.

ToucheValeur
FacebookUser12345_ColorRouge
TwitterUser67890_ColorBrunâtre
FoursquareUser45678_Libation“ Vin blanc ”
Google + User24356_Libation“ Dry martini avec une touche ”
LinkedInUser87654_Hero“ Meilleures ventes interprète ”

Comme le nombre d'utilisateurs augmente, garder la trace de touches précises et des valeurs connexes peut être difficile. Si vous avez besoin de garder une trace des opinions de millions d'utilisateurs, le nombre de paires clé-valeur associée avec eux peut augmenter de façon exponentielle. Si vous ne voulez pas de contraindre les choix pour les valeurs, la représentation des KVP chaîne générique fournit la flexibilité et la lisibilité.

Vous pourriez avoir besoin de l'aide des données d'organisation supplémentaires dans une base de données clé-valeur. La plupart offrent la capacité de touches globales (et leurs valeurs connexes) dans une collection. Collections peuvent consister en un certain nombre de paires clé-valeur et ne nécessitent pas le contrôle exclusif des éléments de KVP individuels.

Un largement utilisé open source clé-valeur de base de données paire est appelée Riak. Il est développé et soutenu par une compagnie appelée Basho Technologies et est mis à disposition sous la licence Apache Software v2.0.




Riak est une mise en œuvre très rapide et évolutive d'une base de données clé-valeur. Il prend en charge un environnement à haut volume avec évolution rapide des données, car il est léger. Riak est particulièrement efficace pour l'analyse en temps réel de la négociation dans les services financiers. Il utilise “ seaux ” comme un mécanisme d'organisation pour les collections de clés et de valeurs.

Riak implémentations sont des grappes de nœuds physiques ou virtuels disposés dans un mode peer-to-peer. Pas de nœud maître existe, de sorte que le cluster est résilient et hautement évolutive. Toutes les données et les opérations sont réparties dans le cluster. De plus grosses grappes effectuer meilleurs et plus rapides que les clusters avec moins de noeuds. Communication dans le cluster est mis en œuvre par l'intermédiaire d'un protocole spécial appelé Gossip. Gossip stocke des informations sur l'état du cluster et actions d'informations sur des seaux.

Riak possède de nombreuses fonctionnalités et est partie d'un écosystème comprenant les éléments suivants:

  • Le traitement en parallèle: Utilisation de MapReduce, Riak supporte une capacité à se décomposer et recomposer les requêtes sur le cluster pour l'analyse en temps réel et calcul.

  • Liens et lien marche: Riak peut être construit pour imiter une base de données graphique à l'aide des liens. Un lien peut être considéré comme une connexion unidirectionnelle entre paires clé-valeur. Marcher (suivant) les liens seront fournir une carte des relations entre les paires clé-valeur.

  • Recherche: Riak Recherche a une capacité de recherche de texte intégral à tolérance de pannes, distribué. Seaux peuvent être indexés pour une résolution rapide de la valeur à des touches.

  • Index secondaires: Les développeurs peuvent marquer des valeurs avec une ou plusieurs valeurs de champ clé. L'application peut alors interroger l'index et retourner une liste de clés correspondant. Cela peut être très utile dans les grandes implémentations de données parce que l'opération est atomique et soutiendra les comportements en temps réel.

Riak implémentations sont les mieux adaptés pour

  • Les données de l'utilisateur pour les réseaux sociaux, communautés, ou les jeux

  • Volume élevé, la collecte de données riche en médias et le stockage

  • Couches de mise en cache pour la connexion des bases de données NoSQL et SGBDR

  • Les applications mobiles nécessitant la flexibilité et la fiabilité


» » » » Bases de données dans un environnement de données grande paire clé-valeur