2012-02-25 65 views
3

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

+0

我对这件事情没有什么专业知识,但我想知道为什么你甚至需要一个散列函数,为什么不自己使用单词(或短语)呢?对我来说,看起来哈希是一个额外的层,它不起作用。 – Ali 2012-02-25 17:53:01

+0

我想了解的是网络搜索引擎如何为他们的页面编制索引。由于他们使用散列表来存储所有页面,因此应该包含一些散列函数。是否有意义? – TommyG 2012-02-25 17:57:30

+1

TommyG +1的好问题。每个单词或字符串可以转换为一个整数,因为这会使比较超快。请记住,即使一个参数在散列之后也会产生一些唯一的int值(暂时忘记碰撞),因此,如果它是一个int而不是字符串匹配,那么查找/搜索该短语/词将会很快O(1)。 – Yavar 2012-02-25 18:05:39

回答

2

对于Sphinx搜索引擎,这是一个非常受欢迎的开源产品,与Lucene相媲美,所使用的散列函数是CRC。它使用CRC将在索引中找到的douments中的每个单词转换为32位/ 64位int。

+0

斯芬克斯的岩石。很高兴看到它得到一些爱! – Fuser97381 2015-09-07 00:38:27