Accueil Finances personnelles Gestion des données dans NoSQL - mannequins

Gestion des données dans NoSQL - mannequins

Table des matières:

Vidéo: MongoDB : la base NoSQL qui réinvente la gestion de données - David Wursteisen 2024

Vidéo: MongoDB : la base NoSQL qui réinvente la gestion de données - David Wursteisen 2024
Anonim

Une fois que vous avez géré les clés de manière appropriée, vous êtes prêt à concevoir la manière de stocker des données avec NoSQL et de vous assurer qu'elles sont sûres et toujours accessibles pour le travail. Tu as besoin de faire.

Types de données dans les magasins de valeurs-clés

Les magasins de valeurs-clés agissent généralement comme & ldquo; seaux & rdquo; pour les données binaires. Certaines bases de données fournissent une forte dactylographie interne et même un support de schéma. D'autres fournissent simplement des fonctions auxiliaires pratiques dans leurs pilotes clients pour sérialiser des structures de données d'application courantes dans un magasin de valeurs-clés. Les exemples incluent des cartes, des listes et des ensembles triés.

Oracle NoSQL peut fonctionner en deux modes:

  • Stockage binaire simple

  • Support de schéma Avro hautement structuré

Un schéma Avro s'apparente à un schéma de base de données relationnelle - appliquant un ensemble très strict des règles de formatage sur les données JSON (JavaScript Object Notation) stockées dans la base de données, comme illustré ici:

{nom d'utilisateur: & ldquo; afowler & rdquo;, sessionid: 13452673, depuis: 1408318745, thème: & ldquo; bluesky & rdqu;;

Vous définissez un schéma Avro à l'aide d'un document JSON. Ceci est un exemple du schéma Avro pour les données stockées montrées précédemment:

{& ldquo; tapez & rdquo;: & ldquo; enregistrer & rdquo;, & ldquo; namespace & rdquo;: & ldquo; com. exemple & rdquo;, & ldquo; nom & rdquo;: & ldquo; UserSession & rdquo;, & ldquo; champs & rdquo;: [{& ldquo; nom & rdquo;: & ldquo; nom d'utilisateur & rdquo;, & ldquo; tapez & rdquo;: [& ldquo; chaîne & rdquo;, & quot; null & rdquo;]}, {& ldquo; nom & rdquo;: & ldquo; sessionid & rdquo;, & ldquo; tapez & rdquo;: & ldquo; int & rdquo;}, {& ldquo; nom & rdquo;: & ldquo; depuis & rdquo;, & ldquo; tapez & rdquo;: & ldquo; long & rdquo;}, {& ldquo; nom & rdquo;: & ldquo; thème & rdquo;, & ldquo; tapez & rdquo;: [& ldquo; chaîne & rdquo;, & quot; null & rdquo;]}]}

Un schéma Avro fournit un typage très fort dans la base de données lorsque le schéma est important. Dans l'exemple précédent, vous voyez des données de chaîne, un ID de session numérique, une date (en millisecondes, depuis l'Epoque Unix, en tant qu'entier long) et un paramètre de personnalisation pour le thème à utiliser sur le site Web.

Notez également que le type de nom d'utilisateur et le thème a deux options - chaîne et null, qui est comment vous instruire Oracle NoSQL que les valeurs nulles sont autorisés. Vous pourriez avoir quitté le thème en tant que chaîne et fourni un paramètre de configuration supplémentaire de & ldquo; par défaut & rdquo;: & ldquo; bluesky & rdquo;.

D'autres bases de données NoSQL fournissent des index secondaires sur toute propriété arbitraire d'une valeur ayant un contenu JSON. Riak, par exemple, fournit des index secondaires basés sur le partitionnement de documents. En gros, une propriété connue dans un document JSON est indexée avec un type.Ceci permet des requêtes de plage (inférieures ou supérieures à) en plus de simples comparaisons égales et non égales. Riak parvient à fournir des requêtes de plage sans schéma rigoureux - juste une définition d'index simple. Si les données sont là, elles sont ajoutées à l'index.

Réplication des données

Le stockage de plusieurs copies des mêmes données sur d'autres serveurs, ou même sur des racks de serveurs, permet de garantir la disponibilité des données en cas de défaillance d'un serveur. L'échec du serveur se produit principalement dans le même cluster.

Vous pouvez utiliser les répliques de deux façons:

  • Maître-esclave: Toutes les lectures et écritures arrivent au maître. Les esclaves prennent le relais et reçoivent des demandes seulement si le maître échoue.

La réplication maître-esclave est généralement utilisée dans les magasins de valeurs-clés conformes à l'ACID. Pour activer la cohérence maximale, le magasin principal est écrit et tous les réplicas sont mis à jour avant la fin de la transaction. Ce mécanisme est appelé validation en deux phases et crée un temps réseau et de traitement supplémentaire sur les réplicas.

  • Maître-maître: Les lectures et écritures peuvent se produire sur tous les nœuds gérant une clé. Il n'y a pas de concept d'un & ldquo; primaire & rdquo; propriétaire de partition.

Les répliques maître-maître sont généralement cohérentes, le cluster effectuant une opération automatique pour déterminer la dernière valeur d'une clé et supprimer les anciennes valeurs périmées.

Dans la plupart des magasins de valeurs-clés, cela se fait lentement - au moment de la lecture. Riak est l'exception ici car il a un service anti-entropie vérifiant la cohérence pendant les opérations normales.

Données de version

Pour activer la résolution automatique des conflits, vous avez besoin d'un mécanisme pour indiquer la dernière version des données. Par la suite, les magasins de valeurs-clés cohérents parviennent à résoudre les conflits de différentes manières.

Riak utilise un mécanisme d'horloge vectorielle pour prédire quelle copie est la plus récente. D'autres magasins de valeurs-clés utilisent des horodatages simples pour indiquer la persistance. Lorsque les conflits ne peuvent pas être résolus automatiquement, les deux copies de données sont envoyées au client. Les données conflictuelles envoyées au client peuvent apparaître dans la situation suivante:

  1. Le client 1 écrit dans la réplique A 'Adam: {likes: Cheese}'.

  2. Le réplica A copie les données dans la réplique B.

  3. Le client 1 met à jour les données de la réplique A vers 'Adam: {likes: Cheese, hates: sunlight}'.

    À ce stade, la réplique A n'a pas assez de temps pour copier les dernières données dans la réplique B.

  4. Le client 2 met à jour les données de la réplique B vers 'Adam: {aime: chiens, déteste: kangourous}'.

    À ce stade, la réplique A et la réplique B sont en conflit et le cluster de base de données ne peut pas résoudre automatiquement les différences.

Un autre mécanisme consiste à utiliser des horodatages et à leur faire confiance pour indiquer les dernières données. Dans une telle situation, il est logique que l'application vérifie que les horodatages lisent la dernière valeur avant de mettre à jour la valeur.

Ils vérifient la vérification et définissent le mécanisme, ce qui signifie 'Si la dernière version est encore la version 2, alors sauvegardez ma version 3'. Ce mécanisme est parfois appelé read match update (RMU) ou read match write (RMW). Ce mécanisme est le mécanisme par défaut employé par Oracle NoSQL, Redis, Riak et Voldemort.

Gestion des données dans NoSQL - mannequins

Le choix des éditeurs

Drupal Paramètres des éléments d'affichage - mannequins

Drupal Paramètres des éléments d'affichage - mannequins

De tous les paramètres d'affichage Drupal que vous pouvez contrôler, de loin les plus puissants sont l'apparence ou l'absence des éléments. Voici les paramètres d'éléments communs dans Drupal que vous pouvez activer et désactiver et ce qu'ils font: Logo: Assez simplement, cette case à cocher contrôle si votre site a un logo. Par ...

Drupal Forum Enablement - les forums

Drupal Forum Enablement - les forums

Sont parfaits pour créer une communauté d'utilisateurs. Les gens peuvent obtenir de l'aide des autres, fournir des commentaires sur votre contenu et simplement socialiser. Votre forum Drupal peut être aussi étroitement ou librement contrôlé que vous le souhaitez. Vous pouvez contrôler les catégories autorisées sur votre forum. Pour voir un exemple de forum, naviguez jusqu'au forum Drupal. ...

Entreprises d'hébergement Web Drupal-Friendly - Les nuls

Entreprises d'hébergement Web Drupal-Friendly - Les nuls

Les sociétés d'hébergement Web vous offrent l'accès à un serveur web où vous pouvez installer Drupal et rendre votre site visible sur le web. Certaines entreprises installent Drupal pour vous ou vous fournissent une installation en un clic, ce qui vous permet d'économiser un peu d'effort. Si vous décidez de ne pas installer Drupal vous-même, envisagez de ...

Le choix des éditeurs

Spotify Chrome Extension - les nuls

Spotify Chrome Extension - les nuls

Spotify Chrome Extension de Mad Pixel Factory - recommandé par Spotify - vous permet de mettre en évidence le nom d'un acte n'importe quelle page Web, puis cliquez sur le bouton d'extension pour commencer à rechercher Spotify pour ce nom. Les résultats sont affichés rapidement dans une fenêtre contextuelle. Cliquez sur un album, un artiste ou un nom de piste pour être redirigé vers Spotify ...

Spotify Apps: ShareMyPlaylists et TuneWiki - dummies

Spotify Apps: ShareMyPlaylists et TuneWiki - dummies

Spotify Apps propose plusieurs applications populaires, notamment ShareMyPlaylists (SMP), qui est maintenant disponible en tant qu'application intégrée dans Spotify, et TuneWiki, la base de données de paroles de chansons qui se synchronise à la musique Spotify en temps réel. Comment utiliser ShareMyPlaylists avec Spotify Avant d'être intégré à Spotify avec Spotify Apps, vous pouviez utiliser ShareMyPlaylists ...

Spotify et vie privée - les nuls

Spotify et vie privée - les nuls

La vie privée est un sujet brûlant pour les internautes partout dans le monde. des habitudes. Il est donc important de savoir ce que Spotify peut découvrir sur vos habitudes d'écoute et comment cette information pourrait être utilisée. Veuillez vous référer à la politique de confidentialité de Spotify pour les dernières informations. Vous pouvez trouver le lien ...

Le choix des éditeurs

10 Idées pour améliorer les tableaux de bord avec des formes Excel - nuls

10 Idées pour améliorer les tableaux de bord avec des formes Excel - nuls

La plupart des utilisateurs considèrent les formes Excel comme des objets modérément utiles Cela peut être ajouté à une feuille de calcul uniquement si vous devez afficher un carré, des flèches, un cercle, etc. Mais si vous utilisez votre imagination, vous pouvez tirer parti des formes Excel pour créer des interfaces stylisées qui peuvent vraiment améliorer vos tableaux de bord. Voici ...

Les 4 zones d'un tableau croisé dynamique - les nuls

Les 4 zones d'un tableau croisé dynamique - les nuls

Un tableau pivotant est composé de quatre zones. Les données que vous placez dans ces zones définissent à la fois l'utilité et l'apparence du tableau croisé dynamique. Prenez un moment pour comprendre la fonction de chacun de ces quatre domaines.

3 Raisons d'utiliser des macros pour vos tableaux de bord Excel - les macros

3 Raisons d'utiliser des macros pour vos tableaux de bord Excel - les macros

Sont très utiles pour vos tableaux de bord Excel et rapports. Une macro est essentiellement un ensemble d'instructions ou de code que vous créez pour indiquer à Excel d'exécuter n'importe quel nombre d'actions. Dans Excel, les macros peuvent être écrites ou enregistrées. Le mot clé ici est enregistré. La première étape de l'utilisation des macros est de vous admettre ...