Ruby on rails 使用Mongoid,如果我们修改一个项目,它会拉出一大块数据并保存一大块数据吗?
假设我们有一些使用Mongoid的东西:Ruby on rails 使用Mongoid,如果我们修改一个项目,它会拉出一大块数据并保存一大块数据吗?,ruby-on-rails,mongodb,mongoid,Ruby On Rails,Mongodb,Mongoid,假设我们有一些使用Mongoid的东西: data: 'products': "2010-09-07": { pageviews: 123 timeOnPage: 1823 } "2010-09-08": { pageviews: 138 timeOnPage: 2607 } ... 因此,2、3年后,将有700或1000个日期映射到一个散列。如果我们修改1个数字,是否需要将整个大对象读入内存,进行更改
data:
'products':
"2010-09-07":
{ pageviews: 123
timeOnPage: 1823 }
"2010-09-08":
{ pageviews: 138
timeOnPage: 2607 }
...
因此,2、3年后,将有700或1000个日期映射到一个散列。如果我们修改1个数字,是否需要将整个大对象读入内存,进行更改,然后将大对象写回磁盘?或者Mongoid知道如何去那个特定的位置更改1号吗
我想如果它是为了读取一个数字,它不需要读取RAM中的整个结构?对这两个都是
有关只读选择字段,请参见此列表中的#3:
有关递增计数器的典型分析用例,请参阅:
这种文档结构似乎不太正常。为什么不让每一天都成为自己的文档呢?然后,您可以轻松地让Mongo对几天进行操作,例如查看给定日期范围内的页面浏览量。至少有很多其他的分析软件包是这样做的。