Maison  >  Article  >  base de données  >  Quelle est la différence entre MySQL et MongoDB

Quelle est la différence entre MySQL et MongoDB

青灯夜游
青灯夜游original
2022-06-16 14:39:1434170parcourir

Différences : 1. MySQL est une base de données relationnelle, tandis que mongodb est une base de données non relationnelle ; 2. MySQL prend en charge plusieurs moteurs, et différents moteurs ont des méthodes de stockage différentes, tandis que mongodb le stocke dans un format de document de type JSON ; MySQL Utilisez des instructions SQL traditionnelles pour les requêtes, tandis que mongodb a sa propre méthode de requête (similaire aux fonctions JavaScript) ; 4. MySQL prend peu de place et prend en charge la jointure, tandis que mongodb prend beaucoup de place et ne prend pas en charge la jointure.

Quelle est la différence entre MySQL et MongoDB

L'environnement d'exploitation de ce tutoriel : système windows7, version mysql8&&mongodb5, ordinateur Dell G3.

MySQL et MongoDB sont tous deux des bases de données open source couramment utilisées, mais MySQL est une base de données relationnelle traditionnelle, tandis que MongoDB est une base de données non relationnelle, également appelée base de données de documents, et est une base de données NoSQL. Ils ont chacun leurs propres avantages, la clé est de savoir où ils sont utilisés. Ainsi, les instructions SQL que nous connaissons ne sont pas applicables à MongoDB, car les instructions SQL sont le langage standard des bases de données relationnelles.

1. Base de données relationnelle-MySQL

1 Il existe différentes méthodes de stockage sur différents moteurs.
2. L'instruction de requête utilise une instruction SQL traditionnelle, qui a un système relativement mature et très mature.
3. La part des bases de données open source augmente constamment et la page de partage de MySQL continue de croître.
4. L'inconvénient est que l'efficacité sera nettement plus lente lors du traitement de données massives.


2. Base de données non relationnelle-MongoDB

Base de données non relationnelle (nosql), qui est une base de données de documents. Permettez-moi d'abord d'expliquer la base de données de documents, qui peut stocker des données de types XML, JSON et BSON. Ces données sont auto-descriptives et présentent une structure de données hiérarchique de type arborescent. La structure des données se compose de paires clé-valeur (clé => valeur).

1. Méthode de stockage : mémoire virtuelle + persistance.
2. Instruction de requête : il s'agit d'une méthode de requête MongoDB unique.
3. Scénarios adaptés : enregistrement d'événements, gestion de contenu ou plateforme de blogs, etc.
4. Caractéristiques architecturales : la haute disponibilité peut être obtenue grâce à des ensembles de répliques et au partitionnement.
5. Traitement des données : les données sont stockées sur le disque dur, mais les données qui doivent être lues fréquemment seront chargées dans la mémoire et les données seront stockées dans la mémoire physique pour obtenir une lecture et une écriture à grande vitesse.
6. Maturité et étendue : les bases de données émergentes ont une faible maturité. Parmi les bases de données Nosql, elles sont les plus proches des bases de données relationnelles et sont l'une des bases de données les plus complètes. La population applicable est en constante croissance.


3. Avantages et inconvénients de MongoDB

Avantages :

1. Les performances de MongoDB avec une quantité de mémoire modérée sont très rapides. Il stocke les données chaudes dans la mémoire physique, ce qui rend la lecture des données chaudes. L'écriture devient très rapide.
2. La haute disponibilité et l'architecture de cluster de MongoDB ont une très grande évolutivité.
3. Dans le jeu de réplicas, lorsque la base de données principale rencontre un problème et ne peut pas continuer à fournir des services, le jeu de réplicas élira une nouvelle base de données principale pour continuer à fournir des services.
4. Les données au format Bson et JSon de MongoDB sont très adaptées au stockage et aux requêtes au format de document.

Inconvénients :

1. Ne prend pas en charge les opérations de transaction. MongoDB lui-même ne dispose pas de son propre mécanisme de transaction. Si vous devez implémenter un mécanisme de transaction dans MongoDB, vous devez utiliser une table supplémentaire pour implémenter logiquement la transaction vous-même.
2. Moins d'expérience en matière d'application En raison de la courte montée en puissance de NoSQL, il y a moins d'expérience en matière d'application que les bases de données relationnelles.
3. MongoDB prend trop de place.


4. Comparaison entre MongoDB et MySQL (introduction de la différence)

Base de données MongoDB MySQL
Modèle de base de données Non relationnel Relation al
Méthode de stockage Stocké dans un format de document de type JSON Différents moteurs ont des méthodes de stockage différentes
Instructions de requête Méthodes de requête MongoDB (fonctions de type JavaScript) Instructions SQL
Méthodes de traitement des données Basées sur la mémoire, stocker des données chaudes dans la mémoire physique pour obtenir une lecture et une écriture à grande vitesse Différents moteurs ont leurs propres caractéristiques
Maturité Bases de données émergentes, faible maturité Haute maturité
Étendue La base de données NoSQL est relativement complète et open source, et le nombre d'utilisateurs est en croissance constante Base de données open source, la part de marché augmente
Transactionnel Prend en charge uniquement les opérations de transaction de document unique, faible cohérence Prend en charge les opérations de transaction
Occupe de l'espace "Occupe un grand espace"

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!

Déclaration:
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
Article précédent:Pourquoi choisir MySQLArticle suivant:Pourquoi choisir MySQL