倒排索引的理论和实现
1、应用场景
1.1、百度,google等搜索引擎
- 我们在打开百度,或者是谷歌,360浏览器,我们输入关键字以后;
- 浏览器作为客户端把关键字发到对应的搜索引擎的服务器server端,服务器去分析这个关键字,在全网的所有网页html中(几千万,上亿个文件)中快速搜索出我们想要的内容;
- 我们输一个关键字,敲一个回车,很快的所有的搜索结果都出来了,不到1秒的时间内搜索几千万个网页。
- 为什么搜索这么快?依赖倒排索引!
我们在自己的电脑上去搜索一个文件,速度却非常的慢,有时候几十分钟都搜索不出来。
为什么搜索引擎的服务器搜索那么多的文件内容很快就可以定位到哪些文件包含这些关键字呢?
- 百度服务器启动后,在提供搜索服务之前,已经对全网的搜到的html页面的内容进行分词,看看有哪些关键字,对这些关键字建立了倒排索引,才能够通过一个关键字进行非常快速的搜索。
1.2、淘宝、京东搜索服务
海量商品实时搜索!