我在 MongoDB 中为 PHP 应用程序制作了 MySQL 表的“副本”。 我有 id 列,它是主键。 我应该将其存储在 mongodb 中:
['_id' => (string) $id]
或
['_id' => (int) $id]
或
['_id' => new \MongoId($id)]
或
['_id' => new \MongoId, 'id' => $id]
我不打算为 mongodb 使用多于一台机器,也不打算仅通过该 ID 进行大量查询。
这里使用字符串、整数或ObjectId有什么区别?
最佳答案
以上所有选项都可以。我个人喜欢将 _id
留给 mongodb 来管理,因此会选择第四个选项。
对于该集合可能增长到很大的情况,我会破例。在这种情况下,我会选择第二个选项,因为它占用的空间最少。
关于php - 在 MongoDB 中使用整数作为 ID 的缺点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33655724/