Introduction aux modèles de données NoSQL

Avant de commencer sur les modèles de données, comprenons d'abord ce que signifie NoSQL. NoSQL ne signifie pas le seul SQL, ce qui signifie que nous allons récupérer et stocker des données à partir de bases de données non relationnelles. Voyons maintenant ce qu'est le modèle de données? Un modèle de données définit la structure logique du SGBD. Cela signifie essentiellement qu'il nous indique comment les données sont connectées les unes aux autres, les relations entre les différentes entités et comment elles sont traitées. Les techniques de modélisation des données sont différentes pour les bases de données relationnelles et non relationnelles. La principale différence est que les modèles de données NoSQL ont des requêtes plus spécifiques à l'application que SQL.

Syntaxe avec paramètres

La syntaxe d'écriture d'une requête NoSQL est donnée avec un exemple. Dans cet exemple, nous allons récupérer le nom et l'âge de tous les employés désignés comme Manager.

(
"object": "employee",
"q": (
"designation" : " Manager"
),
"fields": ("name", "age") )

Dans l'exemple ci-dessus, nous avons utilisé le formulaire JSON pour écrire une requête. Le mot clé "object" est utilisé pour attribuer un nom de table, le mot clé "q" est utilisé comme condition WHERE. Dans notre cas, la condition doit être appliquée à la désignation, car nous voulons uniquement les employés dont la désignation est le gestionnaire. Le «champ» clé est le nom des colonnes que nous voulons récupérer en fonction de la condition dans «q». Dans notre cas, les colonnes sont le nom et l'âge.

La requête NoSQL ci-dessus, si elle est convertie en SQL, se présente comme suit:

SELECT name, age
FROM employee
WHERE designation =' manager';

La requête la plus courte que nous pouvons écrire est une requête de sélection normale dans NoSQL:

(
"object": "String",
"q": "Expression"
)

La requête ci-dessus est une requête de sélection normale.

Types de modèles de données NoSQL

Voyons maintenant les différents types de modèles de données NoSQL.

En général, il existe quatre types différents de modèles de données dans NoSQL. Ils sont les suivants et nous en discuterons un par un.

  • Magasin de valeurs-clés
  • Boutique basée sur des documents
  • Magasin basé sur des colonnes
  • Magasin graphique

Passons maintenant en revue un par un.

1. Magasin de valeurs-clés

  • Comme son nom l'indique, le magasin de valeurs-clés utilise simplement la valeur de clé pour stocker les données dans la base de données. La clé de la paire clé-valeur doit être unique. Les règles définies pour ce que la clé peut être la longueur de la taille de la clé dépend de la base de données à la base de données. Par exemple, dans Redis, la taille maximale de Key est de 512 Mo. Même la chaîne vide est une clé valide.
  • La taille de la clé est ici importante car une clé longue peut entraîner des problèmes de performances tandis qu'une clé trop courte peut entraîner des problèmes de lisibilité. La valeur dans la paire clé-valeur peut être n'importe quoi, d'une chaîne à une image. Vous pouvez également spécifier le type de données de la valeur ici.
  • Le modèle de base de données de valeurs-clés peut être utile pour stocker des données sur le commerce électronique telles que les catégories de produits, les détails des produits, etc. Celles-ci sont largement utilisées dans l'analyse des mégadonnées. Nous pouvons même stocker des URL complètes car le nom de l'URL peut être la clé et l'URL réelle comme valeur. La base de données Oracle NoSQL et Redis sont des exemples de bases de données appliquant des paires valeur-clé.

2. Stockage basé sur des documents NoSQL

  • Dans ce type de base de données, l'enregistrement et ses données associées sont stockés dans un seul document. Ce modèle n'est donc pas totalement déstructuré mais c'est une sorte de données semi-structurées.
  • La différence entre un document et une paire de valeurs de clé est que dans le stockage de type de document, ce type de codage est fourni lors du stockage des données dans les documents.Il peut s'agir d'un codage XML ou d'un codage JSON.
  • L'exemple ci-dessous montre un document qui peut être stocké dans une base de données de documents mais avec un codage différent. Regardons l'exemple XML.


Srikanth Engineer
Febuary

Srikanth Engineer
Febuary

  • La différence entre les bases de données conventionnelles et les bases de données basées sur des documents est que les données ici ne sont pas stockées dans des tableaux comme les bases de données conventionnelles mais sont stockées dans des documents.
  • Les exemples de bases de données utilisant le modèle de données ci-dessus sont MongoDB et Couchbase. Ces types de bases de données sont largement utilisés, en particulier dans l'analyse des mégadonnées.

3. Magasin sur colonne

  • Dans ce type de base de données, l'accent est mis sur les colonnes plutôt que sur les lignes car les données sont stockées dans des colonnes au lieu de lignes, ce qui est le cas avec la plupart des bases de données relationnelles. Étant donné que les données sont stockées dans des cellules regroupées en colonnes, toute lecture-écriture se fait à l'aide de colonnes et non de lignes.
  • La question intéressante qui se pose est la suivante: pourquoi utiliser des colonnes plutôt que des lignes? La réponse à cette question est que lorsque vous stockez des données dans des colonnes, vous pouvez effectuer une recherche rapide et une récupération et une agrégation rapides car elle stocke toutes les cellules d'une colonne en tant qu'entrée continue, ce qui permet ensuite un accès plus rapide.
  • Par exemple, si nous voulons interroger les titres de millions d'articles, il sera facile d'accéder au modèle de données basé sur des colonnes car avec une entrée de disque, nous obtiendrons facilement les titres de l'article alors que dans les bases de données relationnelles, il doit passer outre à chaque emplacement pour obtenir les titres. Des exemples de bases de données de magasin basées sur des colonnes sont HBase, Big Table, Cassandra.

4. Magasin graphique

  • Comme son nom l'indique, une représentation graphique est utilisée à la place d'une représentation sous forme de tableaux ou de colonnes. La caractéristique importante de ce type de modèle de données est la présence de nœuds et de bords. Les deux nœuds, par exemple, sont connectés à certaines relations et la relation ici est représentée par des arêtes.
  • En outre, vous pouvez transformer efficacement les données d'un modèle à un autre à l'aide de ce modèle de données NoSQL basé sur un graphique. Il existe deux bases de données graphiques couramment utilisées, InfoGrid et Infinite Graph. InfoGrid propose également deux types de bases de données graphiques comme MeshBase et NetMeshbase que les utilisateurs peuvent choisir en fonction des exigences de l'utilisateur.

Conclusion

Dans cet article, nous avons discuté de la base de données NoSQL et des différents types de modèles NoSQL et discuté de ces modèles individuellement. Les différents types de bases de données disponibles dans chaque type de modèle de données. La popularité des bases de données NoSQL augmente chaque jour en raison de sa vitesse et de son efficacité.

Articles recommandés

Ceci est un guide des modèles de données NoSQL. Nous discutons ici des types de modèles de données NoSQL et de la syntaxe avec des paramètres et des explications. Vous pouvez également consulter nos autres articles suggérés pour en savoir plus–

  1. Avantages de NoSQL
  2. Est MongoDB NoSQL
  3. Qu'est-ce que la technologie Big Data?
  4. Qu'est-ce que l'analyse de données