《企业级搜索托管平台介绍2》由会员分享,可在线阅读,更多相关《企业级搜索托管平台介绍2(29页珍藏版)》请在金锄头文库上搜索。
1、企业级搜索托管平台介绍企业级搜索托管平台介绍Smith.2008.3.26.搜索技术中心.1目录n检索算法基础n搜索托管平台介绍n搜索托管平台展望2第一部分检索算法基础基本概念基本算法算法难点n搜索托管平台介绍n搜索托管平台展望3检索算法基础-基本概念正文数据库正文数据库正文数据库正文数据库相关结果检索相关结果检索相关结果检索相关结果检索请求请求响应响应 检索检索格式化格式化DBDBDB检索数据库检索数据库检索数据库检索数据库( (倒排数据库倒排数据库倒排数据库倒排数据库) )4检索算法基础-基本概念名词:名词:Doc,文档文档Word,词词Index Term,索引项索引项DocID,文档文
2、档IDWordID,词词IDInverted Index,倒排倒排Forward Sort,顺排顺排Broker,代理代理Cache,缓存(检索结果)缓存(检索结果)Abstract,摘要摘要Query Keywords,检索串检索串 5检索算法基础-基本概念n问题1:信息如何表示?n信息的来源?nQnSINA.COMnQQMailnn如何表示?n对于非结构化信息,需要进行抽取抽取、整理,转换成格式化信息;n格式化信息还需要进行过滤,去除无用信息,去噪去噪;n最后表示为格式化文档,DataSrc:=Doc*;Doc:=DocID,Text Field*, Num Field* ;例如:DocI
3、D:=46233597118; TextField:=Title:我的博客,Text:今天封闭开发开始了,;NumField:=回复数:108,QQRank:Lv3,; 6检索算法基础-基本概念n问题2:倒排? 文档内容Doc1.奥运会夺日程.Doc2.2008奥运会日程.Doc3公司班车日程表。索引词索引项(intex term)奥运会。日程。原始文档倒排索引倒排(invert sorting)7检索算法基础-基本概念n问题3:检索? 奥运会词典倒排文件日程 奥运会日程 文档属性8检索算法基础-算法的分解n二分查找nHASH查找n快速排序n窗口排序n多路归并n平衡树nB+TreenSkipL
4、istnn多级索引算法n数值压缩nBitmap索引n路由分布算法n摘要提取算法n多级相关性排序算法n内存倒排算法针对不同应用需求,选择简单、快速的算法;9检索算法基础-常用算法n问题1:存储?nGZip压缩正文,减小文档大小;n通过路由算法进行分布式存储;n平滑扩容,通过少量数据的搬迁;nDOCID索引+顺序文件;n通过定期整理完成删除;n通过大小库完成数据的同步;10检索算法基础-常用算法n问题2:索引?n索引过程分为以下几步n切词,通过中文分词算法,Doc:=wordstring*;n建立词典,HASH或顺序,完成文本到编码的转换;Dict:=WordID,String*;n顺排,计算Do
5、c内部的词的排序信息,Doc:=WordID,pos,weight*;n倒排;WordID:=DocID,Weight,Pos*;11检索算法基础-常用算法n问题3:检索?n获取用户的检索串;n对检索串进行分词;n将检索串分解为词的and,or,not关系的复合;n分别读出倒排,进行and,or,not的计算;n进行相关性排序,返回topn的结果给用户。ORORANDANDANDAND下载下载下载下载腾讯腾讯腾讯腾讯腾讯腾讯腾讯腾讯搜索搜索搜索搜索12检索算法基础-常用算法n问题4:CACHE?n用户检索的几个特征n63%的用户只浏览检索结果第一页;n96%的用户只浏览检索结果前三页;nCac
6、he的对象nSearchresultsnInvertfilesBlockn三级cachenTop10000热门查询放内存cache;n余下的查询按照LRU策略放硬盘;n倒排cache策略;13检索算法基础-常用算法n问题5:排序?n文档的内部属性n词频、词性n位置、区域n格式、颜色n文档的外部属性n重要程度n重复度n引用数nURLn评论n文档的关系属性nAnchorTextnLink关系n文档的用户属性n用户login行为分析n用户检索行为特征n用户的本地方信息特征14检索算法基础-常用算法n问题6:压缩?压缩的基本思想:n以Bit作为存储的单位;n高频使用较短的位表示,低频使用较长的位表示;
7、n有序整数序列,记录距离;n对于稀疏序列的压缩;15检索算法基础-常用算法n问题7:分布式?文档分布,分解索引量的问题;语素分布,分解检索计算量的问题;16检索算法基础-常用算法doc正文库属性库顺排库倒排库检索集群检索集群CacheCache代理集群代理集群APACHEAPACHE17检索算法基础-算法难点n未来的一些挑战n硬件成本过高;n应对数据量激增;n排序的难度、个性化;n快速与精确的权衡;n新介质技术的应用;n个性化的搜索;18第二部分n检索算法基础搜索托管平台介绍项目背景平台介绍n搜索托管平台展望19项目背景n支持R线如下项目nX漩涡下载搜索系统nVvideo视频搜索nT滔滔搜索n
8、QQclient消息搜索n支持互联网线如下项目nQZoneqzone博文搜索nQZone个人档案搜索nQQShow商品搜索nQQPhoto相册搜索nQQLive节目搜索nP商品检索20项目背景问题问题问题原因原因办法办法沟通成本沟通成本沟通成本沟通成本1.1.尽可能减少沟通环节尽可能减少沟通环节尽可能减少沟通环节尽可能减少沟通环节; ;2.2.站在公司的角度统一规站在公司的角度统一规站在公司的角度统一规站在公司的角度统一规划各种专项搜索的实施节划各种专项搜索的实施节划各种专项搜索的实施节划各种专项搜索的实施节奏;奏;奏;奏;3.3.由一个团队来主要完成由一个团队来主要完成由一个团队来主要完成由
9、一个团队来主要完成大部分事情,减少接口,大部分事情,减少接口,大部分事情,减少接口,大部分事情,减少接口,简化协议;简化协议;简化协议;简化协议;1. 1. 部门间合作流程复杂,沟部门间合作流程复杂,沟部门间合作流程复杂,沟部门间合作流程复杂,沟通环节较多;通环节较多;通环节较多;通环节较多;2.2. 问题解决的成本较高;问题解决的成本较高;问题解决的成本较高;问题解决的成本较高;3. 3. 大家理解问题的角度、背大家理解问题的角度、背大家理解问题的角度、背大家理解问题的角度、背景不一样,需求变化大。景不一样,需求变化大。景不一样,需求变化大。景不一样,需求变化大。1. 1. 合并相同、类似需
10、求,合并相同、类似需求,合并相同、类似需求,合并相同、类似需求,在一个系统中加载多业务在一个系统中加载多业务在一个系统中加载多业务在一个系统中加载多业务数据;数据;数据;数据;2.2.定期提供升级、优化的定期提供升级、优化的定期提供升级、优化的定期提供升级、优化的版本,提高用户体验;版本,提高用户体验;版本,提高用户体验;版本,提高用户体验;3. 3. 对对对对Log,Log,数据源特征进数据源特征进数据源特征进数据源特征进行挖掘,迭代优化排序效行挖掘,迭代优化排序效行挖掘,迭代优化排序效行挖掘,迭代优化排序效果、检索特性。果、检索特性。果、检索特性。果、检索特性。4. 4. 对搜索相关服务质
11、量对搜索相关服务质量对搜索相关服务质量对搜索相关服务质量(排序、速度、用户检索(排序、速度、用户检索(排序、速度、用户检索(排序、速度、用户检索LogLog与质量)的持续跟进;与质量)的持续跟进;与质量)的持续跟进;与质量)的持续跟进;1.1.技术中心同事疲与应付技术中心同事疲与应付技术中心同事疲与应付技术中心同事疲与应付各种需求的变更;各种需求的变更;各种需求的变更;各种需求的变更;2.2.排序、存储、速度、优排序、存储、速度、优排序、存储、速度、优排序、存储、速度、优化没有空隙时间去做;化没有空隙时间去做;化没有空隙时间去做;化没有空隙时间去做;服务质量服务质量服务质量服务质量1. 1.
12、没有简单的办法能彻没有简单的办法能彻没有简单的办法能彻没有简单的办法能彻底避免工作量,但统一存底避免工作量,但统一存底避免工作量,但统一存底避免工作量,但统一存储、计算、提供能大大缩储、计算、提供能大大缩储、计算、提供能大大缩储、计算、提供能大大缩减开发工作量;减开发工作量;减开发工作量;减开发工作量;2. 2. 尽可能复用尽可能复用尽可能复用尽可能复用OMOM系统,系统,系统,系统,这些小系统有很大的相似这些小系统有很大的相似这些小系统有很大的相似这些小系统有很大的相似度;度;度;度;3. 3. 稳定、复用核心算法,稳定、复用核心算法,稳定、复用核心算法,稳定、复用核心算法,花少部分人力解决
13、维护、花少部分人力解决维护、花少部分人力解决维护、花少部分人力解决维护、算法中相似但不相同的细算法中相似但不相同的细算法中相似但不相同的细算法中相似但不相同的细节问题;节问题;节问题;节问题;1.1.数据源没有集中存储,数据源没有集中存储,数据源没有集中存储,数据源没有集中存储,变更不可控,带来额外工变更不可控,带来额外工变更不可控,带来额外工变更不可控,带来额外工作量;作量;作量;作量;2.2.系统复用度低;系统复用度低;系统复用度低;系统复用度低;3. 3. 周边的小系统太多;周边的小系统太多;周边的小系统太多;周边的小系统太多;工作量工作量工作量工作量1. 1. 针对一些搜索服务,硬针对
14、一些搜索服务,硬针对一些搜索服务,硬针对一些搜索服务,硬件资源可以复用;件资源可以复用;件资源可以复用;件资源可以复用;2. 2. 周边的周边的周边的周边的OMOM系统,可以系统,可以系统,可以系统,可以搭建好平台提供给多个业搭建好平台提供给多个业搭建好平台提供给多个业搭建好平台提供给多个业务使用;务使用;务使用;务使用;3. 3. 从平台系统的角度对架从平台系统的角度对架从平台系统的角度对架从平台系统的角度对架构与资源进行优化,减少构与资源进行优化,减少构与资源进行优化,减少构与资源进行优化,减少硬件资源的使用,降低硬件资源的使用,降低硬件资源的使用,降低硬件资源的使用,降低TCOTCO成本
15、。成本。成本。成本。1.1.一些搜索数据量、一些搜索数据量、一些搜索数据量、一些搜索数据量、PVPV较较较较低的业务,还有一些辅助低的业务,还有一些辅助低的业务,还有一些辅助低的业务,还有一些辅助系统占有了较多服务器;系统占有了较多服务器;系统占有了较多服务器;系统占有了较多服务器;2. 2. 备份、容灾系统的冗余备份、容灾系统的冗余备份、容灾系统的冗余备份、容灾系统的冗余太多;太多;太多;太多;硬件成本硬件成本硬件成本硬件成本21搜索托管平台介绍检索服务托管检索服务托管数据存储托管数据存储托管服务升级托管服务升级托管维护、更新托管维护、更新托管提供提供XMLXML检索协议接口;检索协议接口;
16、直接提供直接提供CGICGI服务;服务;建立多业务可复用的运营、维护平台;建立多业务可复用的运营、维护平台;解决日志分析问题、内容安全等问题;解决日志分析问题、内容安全等问题;检索服务统一升级,提供更多实用、简单的特性;检索服务统一升级,提供更多实用、简单的特性;提供检索提供检索loglog数据分析服务、界面;数据分析服务、界面;提供类提供类XMLXML协议接口、协议接口、pingping协议接口;协议接口;提供文本数据存储、状态数据更新等接口;提供文本数据存储、状态数据更新等接口;22搜索托管平台介绍23搜索托管平台介绍服务控制单元服务控制单元服务控制单元服务控制单元索引、加载单元索引、加载
17、单元索引、加载单元索引、加载单元协议接口控制单元协议接口控制单元协议接口控制单元协议接口控制单元CacheCache代理单元代理单元代理单元代理单元数数数数据据据据存存存存储储储储单单单单元元元元分布式检索单元分布式检索单元分布式检索单元分布式检索单元内存检索单元内存检索单元内存检索单元内存检索单元主要功能单元分析主要功能单元分析主要功能单元分析主要功能单元分析日日日日志志志志分分分分析析析析单单单单元元元元运运运运营营营营维维维维护护护护单单单单元元元元24第三部分n检索算法基础n搜索托管平台介绍搜索托管平台展望25搜索托管平台展望-流程收集需求托管支持统一维护排序改进26搜索托管平台展望-
18、流程新需求开发维护与支持服务质量改进服务、运营质量改进维护与支持新需求开发27搜索托管平台展望-计划以托管的方式继续支持公司内新的专项搜索项目,群搜索,QZone搜索2.0,新版video搜索,新版漩涡搜索。托管平台1.0设计、部分开发完成。重点是运营维护单元、数据存储单元、协议接口单元。托管平台运维质量控制流程、新项目开发流程、新特性升级等接口流程实践。团队建设:补充相应的前台开发、后台开发、日志分析、系统运维人员。平台2.0版本设计与开发.重点是排序优化,日志的挖掘,与应用系统接口的简化等。为paipai等关键重要业务提供健壮的搜索提供托管式检索服务。开始对腾讯内部重点数据进行分析、整理,为网页搜索补充腾讯内部各重点数据。Q1-Q2Q1-Q2Q3Q3Q4Q4完成现有主要支持项目到到托管平台的迁移。托管平台1.0全部开发测试完成。包括通用的内外存索引、检索单元,排序单元。托管平台各项工作流程规范化。开始研究与采用Login后检索的体验,进行用户行为分析,包括有商业价值的数据与流量的分析。28谢谢各位谢谢各位29