web-dev-qa-db-ja.com

MySQLとMongodbを一緒に使用する

私はMongoDBよりもMySQLを使用してきましたが、MongoDBから学んだことから、それは私が必要としていたものですが、MySQLが実行できる制限もあります(自動インクリメントなど)。

すべてにMongoDBを使用し、特定の目的にのみMySQLを使用するのは賢明でしょうか?

たとえば、MongoDBを使用してユーザーやその他すべてを保存しますが、MySQLを使用してたとえばチケットシステムを作成します。

16
unlucky4ever

1つのプロジェクトで2つのデータベーステクノロジを使用することは完全に合理的に聞こえます。仕事に適したツールを使用していることを確認してください。

速度を上げるために、MySQLをプライマリストレージとして使用し、MongoDBをキャッシュ/中間ストレージとして使用するのが一般的です。

たとえば、MongoDBに読み取り集約型のデータを含めることができます。レポートを生成するためのデータは、MySQLのようなリレーショナルシステムに最適です。

17
ilanco

メインのMongoDB site で、MongoDBのユースケースについてかなり良い議論があります。一般に、ビジネスケースにトランザクションと重いT-SQL機能の必要性が含まれている場合は、MySQLなどのRDBMSを使用する方が適切です。

MongoDBの良い使用例は次のとおりです:1)データがドキュメント形式である、つまり単一のドキュメントの不規則な構造(つまり、データを結合する必要がない)2)フラットファイルシステムの使用を検討している(データの構造に)が、そのデータのインデックス作成/クエリ機能の観点から「もっと」が必要です。 3)プロジェクトは、データのスキーマまたは構造が最終的にどうなるかを本当に知らない状態にあります。 4)地理空間データなどの特殊なデータ型があり、それに対してクエリを実行できるようにする必要があります。 5)データストレージの場所を迅速かつ安価に拡張する必要がある場合があります。

5
Lynn Langit

これは、mongoDbコースを受講した人によるmongodbの使用法に関するよくタイプされたディスカッションです。

MongoDBを選択するかどうかの考慮事項

ブロガーは主に、mongodbを他のDBシステムで使用することは完全に問題ないが、システム全体で使用することは最も困難であり、特定のシナリオではほとんど不可能であると述べています。

ここにいくつかの字幕があります:

Mongoを選択する理由

  • ドキュメント指向でスキーマレス
  • 水平方向のスケーラビリティと高可用性
  • ファイアアンドフォーゲットモードでの高速書き込み
  • 包括的なクエリおよび集約フレームワーク
  • 比較的直感的なアーキテクチャ

Mongoを選択しない理由

  • SQLなし=結合なし
  • ACIDトランザクションなし
  • インデックスがメモリに収まらない
4
kommradHomer