倒排索引简单地就是:根据单词,返回它在哪个文件中出现过,而且频率是多少的结果。这就像百度里的搜索,你输入一个关键字,那么百度引擎就迅速的在它的服务器里找到有该关键字的文件,并根据频率和其他一些策略(如页面点击投票率)等来给你返回结果。这个过程中,倒排索引就起到很关键的作用。
正排索引(forward index):从文档角度看其中的单词,表示每个文档(用文档ID标识)都含有哪些单词,以及每个单词出现了多少次(词频)及其出现位置(相对于文档首部的偏移量)。
倒排索引(inverted index,或inverted files): 从单词角度看文档,标识每个单词分别在那些文档中出现(文档ID),以及在各自的文档中每个单词分别出现了多少次(词频)及其出现位置(相对于该文档首部的偏移量)。
简单记为:
正排索引:文档 ---> 单词
倒排索引:单词 ---> 文档
http://zhengzhou.seosrx.net/jichu/
昨天说了这个图的第一部分:
第一部分是搜集,其实收集也有很多的知识点可以说,我先尽快的把我认识的搜索引擎的工作方式给先大致的说一遍,然后再根据某一个点进行深入的聊聊。
搜索引擎蜘蛛在经历了第一步之后,收集了一大批的网页,当然他想把互联网上的所有的页面都抓取到,不过这个显然是不可能的事情。
互联网上存在着大量的暗网,也就是搜索引擎不能抓取到的网页,这些就先不聊了,我们就说他抓取过来的这一部分。
搜索引擎把这一批网页抓取过来之后,很显然要进行一下处理,处理过程是非常复杂的,不过对我们SEO最重要的一步就是建立正排索引和倒排索引了。
搜索引擎是个软件,他是看不懂网页的内容的,他看到的一个网页就是一堆的词。
可以这样看:
网页A=关键词1+关键词2+关键词3+关键词4+关键词5+关键词6+关键词7+.......
网页B=关键词2+关键词5+关键词+关键词12+关键词56+关键词36+关键词99+.....
网页C=关键词1+关键词3+关键词6+关键词9+关键词55+关键词65+关键词98+.....
网页D=
网页E=
.大概网页在搜索引擎眼里就有是这样一堆东西,具体怎么分词,这个是一个很有意思的东西,我自己在处理大批量关键词的时候也经常卡在这个分词上,不过没办法,我们没有那么大量的词库,也没有大数据来做匹配,当然了,我们一般也用不了那么多的词,有一部分就行了。
其实刚刚这个网页被分成一个个关键词的过程就是一个正排索引的过程,当所有的网页都被分成这样的文件的时候,正排索引的过程就算结束了。
再说倒排索引之前,要说一下搜索引擎为用户要提供什么样的服务来满足用户的需求。
搜索引擎也是一个大型的网络应用软件,他的出现必然是要满足用户的,他要满足的就是用户的检索需求,就是用户在关键词搜索框里面输入一个关键词的时候,他能够快速的返回给用户一个搜索结果。
这个就是现在我们看到的界面,也就是搜索结果页面。
看看这个:
这个页面就是我搜索“原创文章代写”这个关键词出现的页面。
他的实质是什么?
就是:原创文章代写这个关键词后面跟了一堆的网页。
用最开始正排索引的公式来表达一下就是:
关键词1=网页A+网页B+网页C+网页O+....
关键词2=网页B+网页P+网页Z+......
关键词3=网页D+网页T+网页Y+网页Z+.....
这个过程就是倒排索引的过程,就是用每个网页中的关键词来给网页进行建立另外一个索引库。
倒排索引之后,就是排序过程了,也就是说关键词1后面跟了ABCD....一堆网页,那么哪个网页更重要呢?哪个网页应该排在前面呢?
这个点就是我们最大众的SEO要研究的一个点了。