MongoDB:使用长文本作为_id

MongoDB:使用长文本作为_id,mongodb,mongodb-indexes,Mongodb,Mongodb Indexes,背景和需求 我在MongoDB中有一个文本类型的自然主键(url或句子,我们称之为text)。我需要确保独特性。我也经常使用部分搜索(文本包含子字符串),但这部分不太重要 对于MongoDB

背景和需求 我在MongoDB中有一个文本类型的自然主键(url或句子,我们称之为
text
)。我需要确保独特性。我也经常使用部分搜索(
文本
包含
子字符串
),但这部分不太重要

对于MongoDB<4.2,索引键限制为1024字节,这迫使我使用哈希作为
\u id
。但是,版本4.2删除了索引键限制()

问题使用4.2版,什么更好:

  • 使用
    text
    作为
    \u id
  • 使用散列id(
    \u id:hex\u md5(text)
    )并在
    文本
    字段上添加索引(可能是一个文本索引以加快部分搜索) 为了重新表述,我想知道将长文本作为
    \u id
    的缺点是什么。创建的索引是否与其他“常规”索引不同?通过使用md5 ID我能获得什么