qu’est-Ce que le NoSQL?

La base de données NoSQL est un système de gestion de données non relationnel, qui ne nécessite pas de schéma fixe. Il évite les jointures, et est facile à l’échelle. Le but principal de l’utilisation d’une base de données NoSQL est pour les magasins de données distribués avec des besoins de stockage de données énormes. NoSQL est utilisé pour le Big data et les applications Web en temps réel. Par exemple, des entreprises comme Twitter, Facebook et Google collectent chaque jour des téraoctets de données utilisateur.,

NoSQL database signifie « Non seulement SQL » ou « Non SQL. »Bien qu’un meilleur terme serait « NoREL », NoSQL a pris. Carl Strozz a introduit le concept NoSQL en 1998.

Le SGBDR traditionnel utilise la syntaxe SQL pour stocker et récupérer des données pour plus d’informations. Au lieu de cela, un système de base de données NoSQL englobe un large éventail de technologies de base de données qui peuvent stocker des données structurées, semi-structurées, non structurées et polymorphes., Comprenons NoSQL avec un diagramme dans ce tutoriel de base de données NoSQL:

Dans ce tutoriel NoSQL pour débutants, vous apprendrez les bases de NoSQL comme:

  • Pourquoi NoSQL?
  • Bref Historique de Bases de données NoSQL
  • Fonctions de NoSQL
  • Types de Bases de données NoSQL
  • Mécanisme de Requête outils pour NoSQL
  • qu’est-Ce que le Théorème CAP?
  • la Cohérence des résultats
  • les Avantages du NoSQL

Pourquoi NoSQL?,

Le concept de bases de données NoSQL est devenu populaire auprès des géants de l’Internet comme Google, Facebook, Amazon, etc. qui traitent avec d’énormes volumes de données. Le temps de réponse du système devient lent lorsque vous utilisez le SGBDR pour des volumes massifs de données.

Pour résoudre ce problème, nous pourrions « faire évoluer » nos systèmes en mettant à niveau notre matériel existant. Ce processus est coûteux.

L’alternative à ce problème consiste à distribuer la charge de la base de données sur plusieurs hôtes chaque fois que la charge augmente. Cette méthode est connue comme « l’échelle., »

La base de données NoSQL est non relationnelle, elle évolue donc mieux que les bases de données relationnelles car elles sont conçues avec des applications Web à l’esprit.,ST avec JSON

  • Principalement utilisé pas de langage de requête NoSQL standard
  • Bases de données Web fonctionnant en tant que services Internet
  • Distribué

    • Plusieurs bases de données NoSQL peuvent être exécutées de manière distribuée
    • Offre une mise à l’échelle automatique et des capacités de basculement
    • Souvent, le concept ACID peut être sacrifié pour-to-peer, Réplication HDFS
    • Fournissant uniquement une cohérence éventuelle
    • Architecture de Rien partagé., Cela permet moins de coordination et une distribution plus élevée.

    le NoSQL est Partagée Rien.

    Types de bases de données NoSQL

    Les bases de données NoSQL sont principalement classées en quatre types: paire clé-valeur, Orientée Colonne, Orientée Graphique et orientée Document. Chaque catégorie a ses attributs et ses limites uniques. Aucune des bases de données spécifiées ci-dessus n’est meilleure pour résoudre tous les problèmes. Les utilisateurs doivent sélectionner la base de données en fonction de leurs besoins.,

    les Types de Bases de données NoSQL:

    • la Paire Clé-valeur en Fonction
    • orientée Colonne Graphique
    • Graphiques de base
    • orientée Document

    Valeur de la Clé de la Paire de Base

    Les données sont stockées dans des paires clé/valeur. Il est conçu de manière à gérer beaucoup de données et de charges lourdes.

    Les bases de données de stockage de paires clé-valeur stockent les données sous forme de table de hachage où chaque clé est unique, et la valeur peut être un JSON, un BLOB(Objets binaires volumineux), une chaîne, etc.,

    Par exemple, une paire clé-valeur peut contenir une clé comme « Site web » associé à une valeur comme « Guru99 ».

    Il est l’un des plus fondamentaux de bases de données NoSQL exemple. Ce type de base de données NoSQL est utilisé comme collection, dictionnaires, tableaux associatifs, etc. Les magasins de valeurs clés aident le développeur à stocker des données sans schéma. Ils fonctionnent mieux pour le contenu du panier.

    Redis, Dynamo, Riak sont quelques exemples NoSQL de bases de données de stockage clé-valeur. Ils sont tous basés sur le papier Dynamo d’Amazon.,

    Base de colonnes

    Les bases de données orientées colonnes fonctionnent sur des colonnes et sont basées sur BigTable paper de Google. Chaque colonne est traitée séparément. Les valeurs des bases de données à colonne unique sont stockées de manière contiguë.

    Base de données NoSQL basée sur des colonnes

    Ils offrent des performances élevées sur les requêtes d’agrégation telles que SUM, COUNT, AVG, MIN, etc. comme les données sont facilement disponibles dans une colonne.,

    Les bases de données NoSQL basées sur colonnes sont largement utilisées pour gérer les entrepôts de données, la business intelligence, le CRM, les catalogues de cartes de bibliothèque,

    HBase, Cassandra, HBase, Hypertable sont des exemples de requêtes NoSQL de base de données basée sur colonnes.

    Orienté document:

    La BASE de données NoSQL orientée document stocke et récupère les données sous forme de paire clé-valeur, mais la partie valeur est stockée sous forme de document. Le document est stocké au format JSON ou XML. La valeur est comprise par la base de données et peut être interrogée.

    Relationnelle Vs., Document

    Dans ce diagramme à gauche, vous pouvez voir que nous avons des lignes et des colonnes, et à droite, nous avons une base de données de documents qui a une structure similaire à JSON. Maintenant, pour la base de données relationnelle, vous devez savoir quelles colonnes vous avez et ainsi de suite. Cependant, pour une base de données de documents, vous avez un magasin de données comme un objet JSON. Vous n’avez pas besoin de définir la rendre souple.

    Le type de document est principalement utilisé pour les systèmes CMS, les plates-formes de blogs, les analyses en temps réel & applications de commerce électronique., Il ne doit pas être utilisé pour des transactions complexes nécessitant plusieurs opérations ou requêtes contre des structures agrégées variables.

    Amazon SimpleDB, CouchDB, MongoDB, Riak, Lotus Notes, MongoDB, sont des systèmes SGBD d’origine Document populaires.

    Basée sur un graphique

    Une base de données de type graphique stocke les entités ainsi que les relations entre ces entités. L’entité est stockée en tant que nœud avec la relation en tant qu’arêtes. Un bord donne une relation entre les nœuds. Chaque nœud et bord a un identifiant unique.,

    Comparée à une base de données relationnelle où les tables sont vaguement connectées, une base de données graphique est de nature multi-relationnelle. La relation de traversée est rapide car elles sont déjà capturées dans la base de données et il n’est pas nécessaire de les calculer.

    Base de données Graph principalement utilisée pour les réseaux sociaux, la logistique, les données spatiales.

    Neo4J, Infini Graphique, OrientDB, FlockDB sont populaires à base de graphe bases de données.,

    Query Mechanism tools for NoSQL

    Le mécanisme de récupération de données le plus courant est la récupération basée sur REST d’une valeur basée sur sa clé/ID avec GET resource

    La base de données du magasin de documents offre des requêtes plus difficiles car elles comprennent la valeur dans une paire clé-valeur. Par exemple, CouchDB permet de définir des vues avec MapReduce

    Qu’est-ce que le théorème CAP?

    Le théorème de CAP est aussi appelé théorème de brewer., Il indique qu’il est impossible pour un magasin de données distribué d’offrir plus de deux garanties sur trois

    1. Cohérence
    2. Disponibilité
    3. Tolérance de partition

    Cohérence:

    Les données doivent rester cohérentes même après l’exécution d’une opération. Cela signifie qu’une fois les données écrites, toute future demande de lecture doit contenir ces données. Par exemple, après la mise à jour du statut de la commande, tous les clients devraient pouvoir voir les mêmes données.

    Disponibilité:

    La base de données doit toujours être disponible et réactif. Il ne devrait pas avoir de temps d’arrêt.,

    Tolérance de partition:

    La tolérance de partition signifie que le système doit continuer à fonctionner même si la communication entre les serveurs n’est pas stable. Par exemple, les serveurs peuvent être partitionnés en plusieurs groupes qui peuvent ne pas communiquer entre eux. Ici, si une partie de la base de données n’est pas disponible, les autres parties ne sont toujours pas affectées.

    Cohérence éventuelle

    Le terme « cohérence éventuelle » signifie avoir des copies de données sur plusieurs machines pour obtenir une haute disponibilité et évolutivité., Ainsi, les modifications apportées à n’importe quel élément de données sur une machine doivent être propagées à d’autres réplicas.

    La réplication des données peut ne pas être instantanée car certaines copies seront mises à jour immédiatement tandis que d’autres le seront en temps voulu. Ces copies peuvent être mutuellement, mais avec le temps, elles deviennent cohérentes. Par conséquent, le nom de la cohérence des résultats.,i> Fondamentalement, available signifie que DB est disponible tout le temps selon le théorème CAP

  • L’état doux signifie même sans entrée; l’état du système peut changer
  • La cohérence éventuelle signifie que le système deviendra cohérent au fil du temps
  • Avantages>

  • Peut être utilisé comme Source de Données primaire ou analytique
  • Capacité Big Data
  • Pas de point de défaillance unique
  • Réplication facile
  • Pas besoin de Couche de mise en cache séparée
  • Il offre des performances rapides et une évolutivité horizontale.,
  • Peut gérer des données structurées, semi-structurées et non structurées avec le même effet
  • Programmation orientée objet facile à utiliser et flexible
  • Les bases de données NoSQL n’ont pas besoin d’un serveur haute performance dédié
  • Prend en charge les principaux langages et plates-formes de développement
  • Simple à mettre en œuvre,
  • Élimine le besoin d’une couche de mise en cache spécifique pour stocker les données
  • Offre une conception de schéma flexible qui peut facilement être modifiée sans interruption ou interruption de service
  • Inconvénients de NoSQL

    • Aucune règle de normalisation
    • Capacités de requête limitées
    • Les bases de données et les outils SGBDR sont relativement matures
    • li>
    • Il n’offre aucune fonctionnalité de base de données traditionnelle, comme la cohérence lorsque plusieurs transactions sont effectuées simultanément.,
    • Lorsque le volume de données augmente, il est difficile de conserver des valeurs uniques car les clés deviennent difficiles
    • Ne fonctionne pas aussi bien avec les données relationnelles
    • La courbe d’apprentissage est rigide pour les nouveaux développeurs
    • Les options Open source ne sont donc pas si populaires pour les entreprises.

    Résumé

    • NoSQL est un DMS non relationnel, qui ne nécessite pas de schéma fixe, évite les jointures et est facile à mettre à l’échelle
    • Le concept de bases de données NoSQL est devenu populaire auprès des géants de l’Internet comme Google, Facebook, Amazon, etc., qui traitent d’énormes volumes de données
    • En 1998 – Carlo Strozzi utilise le terme NoSQL pour sa base de données relationnelle légère et open-source
    • Les bases de données NoSQL ne suivent jamais le modèle relationnel il est soit sans schéma ou a des schémas détendus
    • Quatre types de base de données NoSQL sont 1).Paire clé-valeur Basée 2).Graphique orienté colonne 3). Graphiques basés 4).,Orienté document
    • NOSQL peut gérer des données structurées, semi-structurées et non structurées avec le même effet
    • Le théorème CAP se compose de trois mots Cohérence, Disponibilité et Tolérance de partition
    • BASE signifie Fondamentalement Disponible, État mou, cohérence éventuelle
    • Le terme « cohérence éventuelle » signifie avoir des copies de données sur plusieurs machines pour obtenir une