ホームページ >データベース >mysql チュートリアル >mysqlとmongodbの違いは何ですか

mysqlとmongodbの違いは何ですか

青灯夜游
青灯夜游オリジナル
2022-06-16 14:39:1434209ブラウズ

違い: 1. MySQL はリレーショナル データベースですが、mongodb は非リレーショナル データベースです; 2. MySQL は複数のエンジンをサポートしており、エンジンごとに異なる保存方法がありますが、mongodb は JSON のようなドキュメントに保存します。 ; 3. MySQL はクエリに従来の SQL ステートメントを使用しますが、mongodb には独自のクエリ メソッド (JavaScript 関数と同様) があります; 4. MySQL は小さなスペースを占有し、結合をサポートしますが、mongodb は大きなスペースを占有し、結合をサポートしません。

mysqlとmongodbの違いは何ですか

このチュートリアルの動作環境: Windows7 システム、mysql8&&mongodb5 バージョン、Dell G3 コンピューター。

MySQL と MongoDB はどちらも一般的に使用されるオープン ソース データベースですが、MySQL は従来のリレーショナル データベースであるのに対し、MongoDB はドキュメント データベースとも呼ばれる非リレーショナル データベースであり、NoSQL データベースです。それぞれに独自の利点があり、どこで使用するかが鍵となります。 SQL ステートメントはリレーショナル データベースの標準言語であるため、私たちがよく知っている SQL ステートメントは MongoDB には適用できません。

1. リレーショナル データベース - MySQL

1. エンジンごとに異なるストレージ方法があります。
2. クエリ ステートメントは従来の SQL ステートメントを使用しており、比較的完成度の高いシステムになっています。
3. オープンソース データベースのシェアは増加し続けており、mysql ページのシェアも増加し続けています。
4. 欠点は、大量のデータを処理する場合、効率が大幅に低下することです。


2. 非リレーショナル データベース - MongoDB

非リレーショナル データベース (nosql) はドキュメント データベースです。まず、xml、json、bson 型のデータを格納できる文書データベースについて説明します。これらのデータは自己記述的であり、階層ツリー状のデータ構造を表します。データ構造は、キーと値 (key=>value) のペアで構成されます。

1. ストレージ方式: 仮想メモリ永続化。
2. クエリ ステートメント: MongoDB 独自のクエリ メソッドです。
3. 適切なシナリオ: イベント記録、コンテンツ管理、ブログ プラットフォームなど。
4. アーキテクチャの特徴: 高可用性は、レプリカ セットとシャーディングを通じて実現できます。
5. データ処理: データはハードディスクに保存されますが、頻繁に読み込む必要があるデータはメモリにロードされ、物理メモリに保存されるため、高速な読み書きを実現します。 。
6. 成熟度と幅広さ: 新興データベースは成熟度が低く、Nosql データベースの中でリレーショナル データベースに最も近く、より完成度の高い DB の 1 つであり、適用対象となるデータベースは常に増加しています。


3. MongoDB の長所と短所

利点:

1. 適度な量の MongoDBメモリ パフォーマンスが非常に高速で、ホット データを物理メモリに保存するため、ホット データの読み取りと書き込みが非常に高速になります。
2. MongoDB の高可用性とクラスター アーキテクチャは非常に高いスケーラビリティを備えています。
3. レプリカ セットでは、メイン データベースに問題が発生し、サービスの提供を継続できなくなると、レプリカ セットは新しいメイン データベースを選択してサービスの提供を継続します。
4. MongoDB の Bson および JSon 形式のデータは、ドキュメント形式のストレージとクエリに非常に適しています。

欠点:

1. トランザクション操作をサポートしません。 MongoDB 自体には独自のトランザクション メカニズムがないため、MongoDB にトランザクション メカニズムを実装する必要がある場合は、追加のテーブルを使用して自分でトランザクションを論理的に実装する必要があります。
2. アプリケーションのエクスペリエンスが少ない NoSQL の普及が浅かったため、アプリケーションのエクスペリエンスはリレーショナル データベースよりも少なくなっています。
3. MongoDB は多くのスペースを占有します。


4. MongoDB と MySQL の比較 (違いの紹介)

##データベースMongoDBMySQL データベース モデル非リレーショナルリレーショナルストレージ メソッドJSON のようなドキュメント形式でのストレージエンジンごとにストレージ方法が異なりますクエリ ステートメントMongoDB クエリ メソッド ( JavaScript関数) SQL文データ処理方式メモリをベースにホットデータを物理メモリに格納し、高速な読み込みと高速化を実現します。書き込みさまざまなエンジンには独自の特性があります成熟度新興データベース、成熟度は低い成熟度は高い幅の広さ NoSQLデータベースの中では比較的完成度が高くオープンソースであり、ユーザー数も増加中オープンソースデータベース、市場シェアも拡大中トランザクション 占有スペース結合操作 [関連する推奨事項:
#単一ドキュメントのトランザクション操作のみをサポート、弱い整合性 トランザクション操作をサポート
大きなスペースが占有されています 小さなスペースが占有されています
MongoDB には結合がありません MySQLサポート参加
mysql ビデオ チュートリアル

]

以上がmysqlとmongodbの違いは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
前の記事:mysqlを選ぶ理由次の記事:mysqlを選ぶ理由