2016-07-08 4 views
0

Mongodbでいくつかのオブジェクトとそれらの関係に関する情報を保存したいと思います。また、すべての変更オブジェクトを履歴に保存し、過去のオブジェクトの状態を確認する機能も必要です。
私はそれぞれのコレクションにオブジェクトの実際のバージョンを保存し、変更(オブジェクトのIDと変更時間を持つ)と、過去のオブジェクトの状態をすべての変更を経時的に収集するためにそれぞれのコレクションを使用しています。
私はここに自転車を発明していると感じています。これを行うにはデータベース構造や既存のフレームワークが優れています。誰かが何かお勧めできますか?非常に義務づけられます、ありがとう。履歴のオブジェクトの変更を保存するためのMongoDBの実現のためのデータベース構造

答えて

0

これは、一般に「バージョン管理」または「ドキュメントのバージョン管理」と呼ばれます。最も一般的なアプローチは、以下のとおりです。

  1. ストアごとの完全な文書は「と「現在の」
  2. ストア各書き込みのための完全なドキュメント、されているバージョンを判断するために、いくつかの方式を使用して、同じコレクションに、書き込み1回の収集と分別収集で古いバージョン
  3. Storeで現在の」バージョン単一のドキュメント内のすべての文書のバージョン各バージョン

各approaため

  • ストアのみ差分(変更) chにはそれ自身の利点とトレードオフがあります。ここでは、これらのアプローチのさらなる調査といくつかの良いリソースです:私はJavaでこれを処理する任意の人気のフレームワークを認識していないです

    、これはよいですまた、ODMを使用しているかどうか(例えば、SpringデータMongoDBまたはMorphia)にも依存します。 Mongooose(Node.js)にはdocument versioningがあります。

  • 関連する問題