【问题标题】:What algorithm does MongoDB use to hash ObjectIds?MongoDB 使用什么算法来散列 ObjectId?
【发布时间】:2014-12-17 03:36:12
【问题描述】:

要在 MongoDB objectIds 上建立索引,我使用 db.collection.ensureIndex({ _id: "hashed"})

这会生成一个 Number 类型,集合被索引。进入这个的算法是什么?是MD5吗?我如何在 ObjectID 对象上调用它?

例如,我想做一些事情,比如从集合中提取前 10 个 _id 哈希,并将其用于处理。

【问题讨论】:

    标签: algorithm mongodb


    【解决方案1】:

    the file hasher.cpp in the MongoDB sourcecode,使用的哈希函数确实是MD5。

    但是,MongoDB 仅在内部使用这些哈希值。它不会将它们暴露给公共 API。散列索引只允许您查询确切的值。它通过获取您的输入,在对数据库中的索引字段进行哈希处理时对其进行哈希处理,并在代表索引的哈希表中搜索冲突。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-06-27
      • 1970-01-01
      • 2012-06-28
      • 1970-01-01
      • 2021-08-25
      • 1970-01-01
      • 2012-06-10
      • 2014-07-13
      相关资源
      最近更新 更多