如果我将任何现有的mongoId保存为任何其他文档密钥中的字符串,我想知道是否有任何性能增益或损失。例如,我有两个集合ans我正在保存一个集合文档Id,即_id是另一个文档密钥作为字符串。我不会将它用作ref,但它是用于查看目的,稍后我可以使用它来从另一个集合中获取信息。例 一个医生
{_id : ObjectId() , Name : "Test"} // This is one document
另一个集合中的第二个文档
{_id : ObjectId , Detail : { AID : ObjectIdASString } } // ObjectIdAsString is Id from first document
答案 0 :(得分:1)
我会将其存储为ObjectId
,ObjectIds
需要更少的磁盘空间。另外,基于ObjectId
而不是字符串对集合进行排序会更容易,更有效。但是,没有什么可怕的,您可以使用ObjectId
和toString()
方法轻松地将valueOf()
转换为字符串,反之亦然。