ドキュメント指向のデータベースが整合性を持っていますか?
-
20-09-2019 - |
質問
私は、MySQLの背景から来ている、と私は具体的には、CouchDBのドキュメント指向のデータベースに興味があります。私が興味を持ってることの一つは、データの整合性です。ドキュメント指向のデータベースは、これをどのように扱うのですか?例えば、のRDBMSで、レコードの重複、またはあなたが1ビットの情報を持っている場合、あなたは他のどれも全く別のものを持っているか、ということを保証することを防止する方法があります。
私はより広く、私の質問は、問題の種類のRDBMSがDODBesがために使用されている問題に比べて、ために切り取られていると思いますか?私は、説明のために、他のstackoverflowの質問のいくつかに見えたが、何か良いものを見つけることができませんでした。
また、職場での私のデータベースでは、私は合計した値を平均し、履歴トレンドで、報告の多くを行います。これはドキュメント指向データベースのための適切な何かですか?
解決
ドキュメント・データベースのほとんどは、ごく限られた完全性、または全く整合性チェックをサポートしています。彼らは、データが正しいことを確認するために、アプリケーションに依存しています。私はそれがCouchDBの中でどのようにあなたを伝えることができます。
第二部へ。私は、RDBMSはデータを報告し、分析に非常によく行うと思います。あなたが参加するとデータに複雑なクエリを実行することができるという事実、集計、機能などは、非常に強力なレポート・ツールをRDBMS作ります。 ドキュメント・データベースの「ライブ」アプリケーション・データを格納するために本当によくやります。ドキュメント・データベースに取得するオブジェクトグラフを格納するためにそれは非常に簡単。スキーマフリーの設計は、新しいアプリケーションの機能のためにモデルを拡張することが容易になります。あなたが素敵な文書に、アプリケーション・データを分割することができますただし、これはのみ動作します。そうしないと、優雅さの多くを失います。
を使用すると、ほとんどの報告をしたい場合は、私はRDBMSを好むだろう。フラット、シンプルたくさんのレコードを格納するとき、それは非常に簡単で、それに報告を行います。ツーリングなどが報告のために最適です。しかしRDBMSよりも別のデータベースdesgineとのあなたはおそらくまだ良い、複雑な構造化データに報告したいと思うときます。
しかし、これはあなたがRDBMSに自分自身を制限する必要があるという意味ではありません。次の2つの技術を組み合わせることができます。ブログ・ソフトウェアを想像してみてください。あなたはdocumentdatabaseにブログの記事やコメントなどの「ライブ」アプリケーションデータを格納します。クリック - とログイン統計のように報告するためのデータがRDBMSに格納されます。参照してください。ロブConerysポストするます。