下面主要介绍一下分布式元搜索:
分布式搜索:由多台计算机组成的搜索引擎
元搜索就是只每个索引服务器都拥有独立的结构。
分布式元搜索的各个单元相互独立,每个检索节点中的DocID(文档标识)不构成重复,也就是说一篇文档不可能同时出现在两台或者两台以上的机器上。
这里我是这么理解的,每个服务器上包含的文档都是唯一的(不考虑备份的),但是每个服务器包含的关键词是有重复的,这样使得分布式元搜索引擎具有良好的健壮性,当一个节点被摘掉之后不会出现搜不到的情况,而是搜索结果相对变小。
分布式元搜索的要求:各个节点具有相同的排序算法和数据输出结构
分布式元搜索优点:设计简单、快速,并且任何一个单元可以被随时摘掉但是并不影响太大,即健壮性;
分布式元搜索的缺点:无法应对大规模的并发,搜索每一个关键词都要遍历所有的节点;
几种改进方式:
改进的主要思想是讲主节点也进行分布式处理,第一种将关键词分开,并分给不同的节点,第二种将用户分割开,每个子节点负责搜索不同用户的需求。不管怎么样改进主节点、子节点与任务分配器,对索引服务器的访问次数都没有减少。
减少网络流量:将倒排表进行排序,每次只读得分最高,最靠前的几个文档。