eri*_*oco 7 database indexing metadata mongodb
在 MongoDB 中存储描述集合的元数据的最佳方法是什么?
我有一个集合,其中包含任意数量的文档。当我创建新文档时,我想根据集合中当前的文档数量分配一个新的临时名称(字符串),例如“Doc 1”、“Doc 2”……由于可以删除文档,只需执行 count() 不会产生有用的结果。
一种选择是将描述集合的元数据存储在不同的集合中,但这似乎很尴尬。
由于 Mongo 是无模式的,我可以将集合的元数据保存在集合本身中,也许保存在名为“元数据”的文档中。在这种情况下,我如何快速访问该文档?我是否需要为“元数据”建立索引以立即获取它,而无需 O(n) 搜索时间?
有没有比我在上一段中描述的更标准或更简单的方法?将来我可能会得到更多元数据,而不仅仅是计数。
您可以检查此链接https://docs.mongodb.com/v3.0/tutorial/create-an-auto-incrementing-field/。
根据上面的链接,我的观点是,只需将它们存储在metadata以以下格式命名的集合中:
{
'_id':'collection1'
'c': 0,
'other metadata1': 'foo',
'other metadata2': 'bar'
}
Run Code Online (Sandbox Code Playgroud)
然后你可以根据集合名称获取这些元数据。如果你想向这个文档添加一个字段,只需使用$set和 update 即可。
| 归档时间: |
|
| 查看次数: |
12476 次 |
| 最近记录: |