1、搜索引擎流程
如图,整个搜索引擎逻辑可以理解成两条线,上面是需求理解,下面是资源管理,然后合理的让资源以符合用户需求的方式给出,就是搜索引擎做的事情。
所以,总结为以下3件事:需求理解、资源管理、匹配逻辑
2、检索关系图
各个模块的工作
master(M1/M2)是大脑,控制中心,负责进行全局调控,外加整合处理;
QS负责用户的需求理解分析
GS负责对页面整体排序
RS是对结果的包装和美化
各个模块的具体工作:
M1:
连接Master1(Gs),接收Master2-Gs排序后返回的结果
连接LBS、外部整合、KS 等服务
负责大库数据 与 LBS、外部整合、KS的混排工作
负责整体结构化结果聚合工作
QS热度 + 结构化聚合策略 + Gs结果信息 = 共同指导混排
【整合结果层:策略来源QS,决定者M1】
QS:
需求分析,可以提供query分类、核心词、同义词、实体词等信息
M2:
连接各类worker-IS检索集群
通过QS、GS策略 执行 检索调度
获取IS数据发送GS 进行全局排序
获取DI
【大库搜索结果层:决定者GS】
QS:
Query解析、变换
Query用户需求识别
需求类别热度识别(排序参照)
QT 含 内部、外部整合、LBS query类别召回
Query实体词识别
连接纠错、新闻词server 识别纠错词、新闻词
GS:
从Master2获取IS检索结果
进行全局结果排序
(暂不包括 外部整合与LBS排序)
IS:
根据Query特征对索引进行检索,结合网页特征及Query特征,基本确定相关网页集合
3、 网页结果构成
可以从query的理解上研究怎样找到最好的给出结果的方式(即上面说的第三件事,匹配逻辑);
也可以从搜索结果的来源上,研究怎样逐一优化,这种方式可以理解为上面说的第二件事,资源管理;
4、系统架构图
检索关系图可以看成是对搜索引擎的业务的横向理解,即理解用户从输入query到结果呈现的过程是怎样的;
系统架构图可以看成是纵向理解;