9

オブジェクト指向データベースとドキュメント データベースの違いは何ですか?

オブジェクト指向のデータベースは使っていませんが、文書データベース (RavenDb) を使うと、通常のオブジェクト指向のクラスを問題なく保存して読み取ることができます。

4

1 に答える 1

10

db4o(OODB)からRavenDB(ドキュメントDB)に移行しました。私が見つけた大きな違いは、オブジェクトDBは完全なオブジェクトを格納し、オブジェクトがその中に別のオブジェクトとともに格納されると、そのサブオブジェクトは完全に格納され、そのオブジェクトの最新バージョンであるということです。ドキュメントDBを使用すると、オブジェクトは引き続き保存されますが、編成が異なります。アグリゲート/ルートオブジェクトはサブオブジェクトの一部を格納するため、アグリゲート/ルートオブジェクトは自己完結型です。ルートオブジェクトを取得するとき、それに関連するオブジェクトに手を伸ばしたり、つかんだりすることはありません。

OODBは、次のようにチームを格納します。

TeamName
City
List<Player>  // The entire player objects would be stored here

ドキュメントDBは、次のようにチームを保存します。

TeamName
City
List<string> PlayerNames

チームオブジェクトに必要なのはそれだけなので、PlayerNamesはここに保存されます。

RavenDBには、ドキュメントDBの理論についての適切な説明があります。

http://ravendb.net/docs/theory/document-structure-design

于 2012-03-27T13:28:06.013 に答える