搜索引擎的实现原理,可以看作四步:从互联网上抓取网页→建立索引数据库→在索引数据库中搜索→对搜索结果进行处理和排序。
- 从互联网上抓取网页. 利用能够从互联网上自动收集网页的网络蜘蛛程序,自动访问互联网,并沿着任何网页中的所有URL爬到其它网页,重复这过程,并把爬过的所有网页收集到服务器中。
- 建立索引数据库 . 由索引系统程序对收集回来的网页进行分析,提取相关网页信息(包括网页所在URL、编码类型、页面内容包含的关键词、关键词位置、生成时间、大小、与其它 网页的链接关系等),根据一定的相关度算法进行大量复杂计算,得到每一个网页针对页面内容中及超链中每一个关键词的相关度(或重要性),然后用这些相关信 息建立网页索引数据库。
- 在索引数据库中搜索 . 当用户输入关键词搜索后,分解搜索请求,由搜索系统程序从网页索引数据库中找到符合该关键词的所有相关网页。
- 对搜索结果进行处理排序 . 所有相关网页针对该关键词的相关信息在索引库中都有记录,只需综合相关信息和网页级别形成相关度数值,然后进行排序,相关度越高,排名越靠前。最后由页面生成系统将搜索结果的链接地址和页面内容摘要等内容组织起来返回给用户。 下图是一个典型的搜索引擎系统架构图,搜索引擎的各部分都会相互交错相互依赖。其处理流程按照如下描述: