RDBMS設計では、効率的なトランザクション処理(OLTP)のために、データの正規化(特に3 NF)が強調されることがよくあります。 OLTPはRDBMSの主なユースケースです。
RDBMSにおける正規化の目標:
データベースを変更異常から解放する
拡張時の再設計を最小限に抑える
回避アプリケーションへのバイアス特定のアクセスパターンアプリケーション
逆に、MongoDBを使用してアプリケーションデータベーススキーマを設計する際の最も重要な要素は、約データアクセスパターンのマッチングです。アプリケーションの。
OLAP-オンライン分析処理、別名レポートは一般に、OLAP asを容易にするために非正規化された OLTPとは反対です。
MongoDBはRDBMSではありません。
質問:
MongoDBはOLTP処理に推奨されていませんか?
MongoDBはOLAP処理に推奨されていますか?
NOSQL dbを使用すると、リレーショナルデータベースの使用を期待する方法とはまったく異なるパラダイムが生まれます。
NOSQLは、アプリケーションの永続化レイヤーとして設計されています。したがって、アクセスは子を持つ単一のオブジェクトに対して最適化されます。
リレーショナルDBは、それ自体がアプリケーションになるように設計されており、データの一貫性を確保し、アプリケーションが集約クエリを実行して、複数のレコードから構築されたデータをプルバックできるようにします。
OLAP and OLTP not apply to nosql dbs。それらは単にまったく適用されないと言う。
MongoDBはOLTP処理に推奨されていませんか?
いいえ、それはnotが推奨されるとは言いません。これには、いくつかの長所(より単純なスケーリング/地理的分布(必要な場合-ほとんどの組織では不要)、リレーショナルスキーマを設計する必要がない)、およびいくつかの短所(リレーショナルスキーマとSQLの欠如、成熟度が低い)があります。
MongoDBはOLAP処理に推奨されていますか?
いいえ、おそらく、最終的には分析に適したエンジンにデータを複製する必要があるでしょう。