【问题标题】:What hash function is used for web search engine indexing什么哈希函数用于网络搜索引擎索引
【发布时间】:2012-03-15 19:51:59
【问题描述】:

我认为这个问题可能有点过于开放,但我很想知道当网络搜索引擎索引网页时散列是如何工作的。用于该目的的一些常见哈希码是什么?

【问题讨论】:

  • 我没有这方面的专业知识,但我想知道为什么你甚至需要一个哈希函数,为什么不使用单词(或短语)本身呢?在我看来,散列是一个额外的层,没有任何功能。
  • 我想了解的是网络搜索引擎如何索引他们的页面。由于他们使用哈希表来存储所有页面,因此应该涉及一些哈希函数。有意义吗?
  • 一个好问题 TommyG +1。每个单词或字符串都可以转换为整数,因为这会使比较变得非常快。请记住,即使是一个短语也会在散列后产生一些唯一的 int 值(暂时忘记冲突),因此如果它是一个 int 而不是字符串匹配,则查找/搜索该短语/单词将很快 O(1)。跨度>
  • 我认为 murmurhash3 非常适合,因为它具有速度和碰撞特性。 code.google.com/p/smhasher/wiki/MurmurHash3

标签: search data-structures indexing web hashtable


【解决方案1】:

Sphinx 搜索引擎是非常流行的开源产品,可与 Lucene 媲美,使用的哈希函数是 CRC。它使用 CRC 将在它索引的文件中找到的每个单词转换为 32 位/64 位 int。

【讨论】:

  • 狮身人面像岩石。很高兴看到它得到了一些爱!
猜你喜欢
  • 2012-10-09
  • 2010-11-23
  • 2014-08-01
  • 1970-01-01
  • 1970-01-01
  • 2013-06-27
  • 1970-01-01
  • 2010-11-16
  • 1970-01-01
相关资源
最近更新 更多