这就是搜索引擎(核心技术讲解)---读书笔记

第一章 搜索引擎及其技术架构web

1.搜索引擎为什么重要算法

2. 搜索引擎技术发展历史
  • 分类目录时代,表明网站为 yahoo,hao123
  • 文本检索的一代,匹配用户的输入query 与网页内容,而后按照匹配程度进行计算排序
  • 连接分析的一代,文本检索没有考虑用户意图以及网页自己的质量,可能会返回排名靠前的低质量的欺诈网页给用户,连接分析能够考虑网页的入链和出链,至关因而一种推荐机制,能够有效筛选出相关且高质量的网页给用户,典型的表明为google的pagerank
  • 用户中心的一代,考虑了不一样用户自己查询相同query可能会有差别,同一个用户在不一样的时间、地点查询相同的query可能也会有差别,也须要考虑用户的查询意图,总之围绕尽量真正理解用户的查询需求而改进搜索引擎。
 
3.搜索引擎的三个目标:更快、更全、更准
 
4.搜索引擎的三个核心问题:
  • 用户真正的需求是什么
  • 哪些信息是和用户的需求真正相关的
  • 哪些信息时用户能够依赖的
5.搜索引擎的技术架构图

          

 

第二章  网络爬虫服务器

1.通用爬虫框架   网络

               

2.优秀爬虫的特性
  • 高性能
多进程、多线程爬虫,优化待抓取、已抓取URL队列
  • 可扩展性
分布式爬虫、增长并发性
  • 健壮性
可以处理各类异常状况、可以异常恢复
  • 友好性
遵循爬虫协议、robots.txt,不给待抓取网站服务器形成很大的负担
 
3.爬虫质量的评价标准
抓取网页覆盖率、抓取网页时新性、抓取网页重要性
4.爬虫抓取策略
宽度优先遍历策略
非彻底pagerank策略
OPIC(online page importance computation,在线页面重要性计算)
大站优先策略
5.网页更新策略
历史参考策略:参考网页的历史更新频率,以泊松分布建模
用户体验策略:按照网页对于用户体验的影响来决定什么时候更新网页
聚类抽样策略:将不一样的网页进行聚类,同一个类别的网页更新方式相同,每一个类别进行抽样计算类别的平均更新频率
6.暗网抓取
非web,非结构化的数据抓取
  • 组合查询问题
google 富含信息查询模板
  • 文本框填写问题
给定种子查询关键词列表,而后从返回的数据中提取出更多的关键词,而后迭代查询
 
7. 分布式爬虫
分布式数据中心、分布式抓取服务器、分布式爬虫程序
  • 主从分布式爬虫
  • 对等分布式爬虫
对主域名进行hash计算,而后对应分配到不一样的服务器进行抓取
改进:采用一致性hash算法,将不一样的服务器组成一个环,将主域名映射到[0,2^32]的某个数值,实现了能够方便进行服务器的扩展,以及某台服务器宕机了能够直接将url分发到其后的服务器,大大加强了可扩展性。
相关文章
相关标签/搜索