【问题标题】:Assigning Unique Ids to large set of documents为大量文档分配唯一 ID
【发布时间】:2011-10-13 21:23:23
【问题描述】:

本质上,我们希望能够为包含在大量文档中的所有 N 克唯一地分配 ID。因此,如果我有 1000 万个文档要处理,我会从每个文档中读取文本并获得 N 克(主要是三元组),并且应该能够为这些 N 元组分配唯一的 ID。不知何故,我需要存储这些唯一 ID,以便快速获取它们。

【问题讨论】:

  • 假设你的 N 相当小,为什么不使用每个 N-gram 来标识自己呢?
  • 在大多数情况下,N=3(三元组),但我仍然需要将它们保存在某个地方,以便以后获取它们。本质上,有一个扫描阶段(其中 trigram 分配给所有文档的唯一 ID)和处理阶段(读取 doc 并使用其所有 trigram 中的 uniqueIds 创建文档的签名)

标签: map unique-id


【解决方案1】:

基于上面的 cmets,我建议您简单地使用 N-gram 作为它自己的标识符。这样就无需维护从 ID 到 N-gram 的单独映射。

例如,假设您有一个包含文本“hello”的文档,其中包含三元组“hel”、“ell”和“llo”(假设您不包括单词边界)。您可以直接使用 N-gram,而不是首先设置像 1="hel"、2="ell"、3="llo" 之类的 ID 映射并将文档签名设置为 { 1, 2, 3 }作为文档签名{“hel”、“ell”、“llo”}。通过这种方式,您甚至可以将扫描和处理阶段合并到一个文档上。

【讨论】:

    猜你喜欢
    • 2011-10-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-03
    • 2011-04-09
    • 1970-01-01
    相关资源
    最近更新 更多