Mongodb 什么';文档存储中缓存副本的名称是什么?

Mongodb 什么';文档存储中缓存副本的名称是什么?,mongodb,naming,document-store,nosql,Mongodb,Naming,Document Store,Nosql,非技术性命名问题: 我有一个文档包含对另一个文档的引用。大多数时候,我访问它时需要引用文档中的几个字段,因此我将这些字段存储在引用旁边,以避免查找 Mongo示例: 自动的 制造者 因此,auto.maker.name不是主要来源——它永远不应该被更改,除非制造商的名称被更改,这虽然代价高昂,但非常罕见 这个领域叫什么?我所见过的最好的是“缓存”,但这是相当超载的,特别是在谈到数据存储时。有更好的术语吗?老实说,您应该真正考虑更改模式,使其符合NoSQL的指导原则,尤其是Mongo 你真的不想要

非技术性命名问题:

我有一个文档包含对另一个文档的引用。大多数时候,我访问它时需要引用文档中的几个字段,因此我将这些字段存储在引用旁边,以避免查找

Mongo示例:

自动的

制造者

因此,auto.maker.name不是主要来源——它永远不应该被更改,除非制造商的名称被更改,这虽然代价高昂,但非常罕见


这个领域叫什么?我所见过的最好的是“缓存”,但这是相当超载的,特别是在谈到数据存储时。有更好的术语吗?

老实说,您应该真正考虑更改模式,使其符合NoSQL的指导原则,尤其是Mongo

你真的不想要一个架构,在这个架构中,你必须在每个查询上查找东西


如果你必须给它起个名字;我将这些数据命名为它所指向的;在这种情况下,您的_id是marker _id,或者至少让它引用您的二次查找表,以便在您用来查询它的代码中,您可以在特定列上写一个通用条件,并知道在哪里可以找到它的查找值。

老实说,您应该真正考虑更改模式,使其符合NoSQL的指导原则,尤其是Mongo

你真的不想要一个架构,在这个架构中,你必须在每个查询上查找东西


如果你必须给它起个名字;我将这些数据命名为它所指向的;在这种情况下,您的_id是marker _id,或者至少让它引用您的二次查找表,以便在用于查询该表的代码中,您可以在特定列上编写通用条件,并知道在何处查找它的查找值。

关键是我不进行二次查找。它都存储在第一个文档中。在这个例子中,“maker.name”从未被查找过,因为它是被复制的——我不必在每个查询中查找。我的问题不是关于命名约定,而是关于您如何引用这种非规范化实践,更具体地说,是由于复制了字段。啊,我误解了您最初的问题。当我有时间在这里时,我将重新工作一个答案。重点是我不做这个二次查找。它都存储在第一个文档中。在这个例子中,“maker.name”从未被查找过,因为它是被复制的——我不必在每个查询中查找。我的问题不是关于命名约定,而是关于您如何引用这种非规范化实践,更具体地说,是由于复制了字段。啊,我误解了您最初的问题。当我有时间在这里时,我会重新做一个答案。
{
  'color' : 'blue',
  'maker' : {
     '_id' : '1234',
     'name' : 'Ford'
  }
  ...
}
{
  '_id' : '1234',
  'name' : 'Ford',
  'ceo' : 'Alan Mulally'
  ...
}