1

非技術的な名前付けの質問:

別のドキュメントへの参照を含むドキュメントがあります。アクセスするほとんどの場合、参照されたドキュメントからいくつかのフィールドが必要になるため、参照を回避するためにそれらを参照と一緒に保存します。

モンゴの例:

自動

{
  'color' : 'blue',
  'maker' : {
     '_id' : '1234',
     'name' : 'Ford'
  }
  ...
}

メーカー

{
  '_id' : '1234',
  'name' : 'Ford',
  'ceo' : 'Alan Mulally'
  ...
}

そのため、auto.maker.name はプライマリ ソースではありません。コストがかかるが非常にまれなメーカー名の変更の結果を除き、決して変更しないでください。

このフィールドを何と呼びますか? 私が見た中で最高のものは「キャッシュ」ですが、特にデータストレージについて話すときは、かなり過負荷です. より良い用語はありますか?

4

1 に答える 1

1

正直に言うと、NoSQL、特に Mongo のガイドラインに適合するようにスキーマを変更することを検討する必要があります。

各クエリで物事を調べなければならないアーキテクチャは本当に必要ありません。

何か名前を付ける必要がある場合。このデータが指している名前を付けます。この場合、あなたの_idはmarker_idであるか、少なくともセカンダリルックアップテーブルを参照するようにして、これをクエリするために使用しているコードで、特定の列に一般的な条件を記述して、ルックアップ値の場所を知ることができます。

于 2012-12-03T20:24:47.883 に答える