Maison > base de données > MongoDB > Explication détaillée des caractéristiques, principes, scénarios d'utilisation et cas d'application de MongoDB

Explication détaillée des caractéristiques, principes, scénarios d'utilisation et cas d'application de MongoDB

藏色散人
Libérer: 2020-08-19 11:51:53
avant
7114 Les gens l'ont consulté

Explication détaillée des caractéristiques, principes, scénarios d'utilisation et cas d'application de MongoDB

Recommandé : "Tutoriel vidéo MongoDB"

Introduction

MongoDB est une base de données distribuée où les fichiers sont stockés. Écrit en langage C. Conçu pour fournir des solutions de stockage de données évolutives et performantes pour les applications WEB.

MongoDB est un produit entre une base de données relationnelle et une base de données non relationnelle. C'est la base de données non relationnelle la plus riche en fonctionnalités et ressemble le plus à une base de données relationnelle. La structure de données qu'il prend en charge est très lâche et est un format bson similaire à json, il peut donc stocker des types de données plus complexes. La plus grande caractéristique de Mongo est que le langage de requête qu'il prend en charge est très puissant. Sa syntaxe est quelque peu similaire à un langage de requête orienté objet. Il peut presque implémenter la plupart des fonctions similaires aux requêtes à table unique dans les bases de données relationnelles, et il prend également en charge l'indexation. de données.

Caractéristiques

Il se caractérise par des performances élevées, un déploiement facile, une utilisation facile et un stockage de données très pratique. Les principales caractéristiques fonctionnelles sont :

* Stockage orienté ensemble, facile à stocker des données de type objet.

*Mode gratuit.

* Prise en charge des requêtes dynamiques.

* Prend en charge l'indexation complète, y compris les objets internes.

* Requête d'assistance.

* Prend en charge la réplication et la récupération après échec.

* Utilisez un stockage de données binaires efficace, y compris les objets volumineux (tels que les vidéos, etc.).

* Gérez automatiquement la fragmentation pour prendre en charge l'évolutivité au niveau du cloud.

*Prend en charge RUBY, PYTHON, JAVA, C, PHP, C# et d'autres langages.

*Le format de stockage des fichiers est BSON (une extension de JSON).

* Accessible via le web.

Principe d'utilisation

Ce que l'on appelle « Orienté collection » signifie que les données sont regroupées et stockées dans un ensemble de données, appelé une collection. Chaque collection possède un nom d'identification unique dans la base de données et peut contenir un nombre illimité de documents. Le concept de collection est similaire à celui d'une table dans une base de données relationnelle (SGBDR), sauf qu'il n'est pas nécessaire de définir un schéma. L'algorithme de cache flash de la technologie Nytro MegaRAID identifie rapidement les données chaudes dans les grands ensembles de données au sein de la base de données, offrant ainsi des améliorations constantes des performances.

Sans schéma signifie que pour les fichiers stockés dans la base de données mongodb, nous n'avons besoin de connaître aucune définition de structure. Si nécessaire, vous pouvez stocker des fichiers de structures différentes dans la même base de données.

Les documents stockés dans la collection sont stockés sous forme de paires clé-valeur. La clé est utilisée pour identifier un document de manière unique et est un type de chaîne, tandis que la valeur peut être une variété de types de fichiers complexes. Nous appelons cette forme de stockage BSON (Binary Serialized Document Format).

MongoDB a été déployé sur plusieurs sites

Principaux scénarios :

1) Traitement des données en temps réel du site Web. Il est idéal pour les insertions, les mises à jour et les requêtes en temps réel, et dispose de la réplication et de la haute évolutivité requises pour le stockage de données en temps réel sur le site Web.

2) Cache. En raison de ses hautes performances, il convient comme couche de mise en cache pour l'infrastructure d'informations. Une fois le système redémarré, la couche de cache persistante créée par celui-ci peut empêcher la surcharge des sources de données sous-jacentes.

3) Scénarios hautement évolutifs. Idéale pour les bases de données composées de dizaines ou de centaines de serveurs, sa feuille de route inclut déjà la prise en charge intégrée du moteur MapReduce.

Les scénarios inapplicables sont les suivants :

1) Systèmes nécessitant un haut degré de transactionnalité.

2) Applications de business intelligence traditionnelles.

3) Requête en cascade complexe entre documents (tables).

Introduction au système

Le système de fichiers distribué signifie que les ressources de stockage physiques gérées par le système de fichiers ne sont pas nécessairement directement connectées au nœud local. est connecté aux nœuds via un réseau informatique. La conception des systèmes de fichiers distribués est basée sur le modèle client/serveur. Un réseau typique peut inclure plusieurs serveurs auxquels plusieurs utilisateurs accèdent. De plus, la fonctionnalité peer-to-peer permet à certains systèmes de jouer le double rôle de client et de serveur.

HBase est une base de données open source distribuée et orientée colonnes. La technologie vient de l'article de Google "Bigtable : un système de stockage distribué pour les données structurées" écrit par Fay Chang. est un logiciel de stockage et de traitement de données développé sur la base de sa propre technologie. Le système de stockage de fichiers distribué (ZDFS) de Yonghong Data Mart est modifié et étendu sur la base de Hadoop HDFS, qui intègre tous les nœuds du cluster de serveurs.

Scénarios applicables

L'objectif principal de MongoDB est le stockage clé/valeur (offrant des performances élevées et une évolutivité élevée) et il construit un pont entre les systèmes SGBDR traditionnels (avec fonctions riches) et combine les avantages des deux. Selon le site officiel, Mongo convient aux scénarios suivants.

● Données du site Web : Mongo est très adapté à l'insertion, à la mise à jour et à la requête en temps réel, et possède la réplication et la haute évolutivité requises pour le stockage des données en temps réel du site Web.

● Mise en cache : en raison de ses hautes performances, Mongo convient également comme couche de mise en cache pour l'infrastructure d'information. Après le redémarrage du système, la couche de cache persistante construite par Mongo peut empêcher la surcharge de la source de données sous-jacente.

● Données de grande taille et de faible valeur : il peut être plus coûteux de stocker certaines données à l'aide de bases de données relationnelles traditionnelles. Avant cela, les programmeurs choisissaient souvent des fichiers traditionnels pour le stockage.

● Scénarios de haute évolutivité : Mongo est très adapté aux bases de données composées de dizaines ou de centaines de serveurs, et la feuille de route de Mongo inclut déjà la prise en charge intégrée du moteur MapReduce.

● Utilisé pour le stockage d'objets et de données JSON : le format de données BSON de Mongo est très adapté au stockage et aux requêtes dans des formats documentés.

Scénarios d'inconfort

● Systèmes hautement transactionnels : par exemple, les systèmes bancaires ou comptables. Les bases de données relationnelles traditionnelles sont actuellement plus adaptées aux applications nécessitant un grand nombre de transactions atomiques et complexes.

● Applications de business intelligence traditionnelles : les bases de données BI destinées à des problèmes spécifiques produiront des méthodes de requête hautement optimisées. Pour de telles applications, un entrepôt de données peut être un choix plus approprié.

● Questions qui nécessitent SQL.

Cas d'application

Voici quelques applications pratiques de MongoDB en entreprise :

    • Archives utilisant MongoDB sur Craiglist Des milliards de dossiers.
    • FourSquare, un site de réseautage social géolocalisé, utilise MongoDB pour partager des données sur les serveurs Amazon EC2.
      Shutterfly, un service de publication sociale et personnelle basé sur Internet, utilise MongoDB pour une variété d'exigences de stockage de données persistantes.
      bit.ly, un service de raccourcissement d'URL basé sur le Web, utilise MongoDB pour stocker ses données.
      Spike.com, une filiale de MTV Networks, Spike.com utilise MongoDB.
      Intuit, un fournisseur de logiciels et de services destinés aux petites entreprises et aux particuliers, utilise MongoDB pour les petites entreprises pour suivre les données des utilisateurs.
      sourceforge.net, un site Web de ressources pour trouver, créer et publier gratuitement des logiciels open source, en utilisant le stockage backend de MongoDB.
      etsy.com, un site Web d'achat et de vente d'articles faits à la main, utilise MongoDB.
      Le New York Times, l'un des principaux portails d'information en ligne, utilise MongoDB.
      Le CERN, le célèbre institut de physique des particules, utilise MongoDB pour les données du Grand collisionneur de hadrons du Centre européen pour la recherche nucléaire.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:cnblogs.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal