2011.10.22
杨震原讲了一些关于百度搜索基本功能实现过程的技术细节,包括怎么对网络上海量URL进行爬行建索引、用户输入后怎样对索引排序、以及BaiduWebSever的知识。听说了很多名词spider、mapreduce,都似曾相识却一知半解,终于明白很多技术是切实需要用的。
L-match:高频词不能说明问题,低频词有偏差,在页面中的中频词可以代表这个网页。
Direct I/O:对系统文件的IO操作越过读写缓存区。
网页的时效性分层:steam,hour,day,weekly,对于易变的索引页要关注,对于爆发性资源要及时抓取。
对用户检索的信息,后台在百亿级的索引中检索、排序,经过3次左右排序,生成摘要返回。
2011.10.23
王磊讲了关于测试的相关概念,测试对象、工具方法、主要指标等,代码级别和模块级别的测试细节。
主要指标包括消耗的硬件资源指标,如:CPU、内存、IO、带宽,其中内存是可以忽略的,因为在系统完成后,内存消耗的大小是可以提前预知的。
业务性能指标,如:连接成功率、相应时间、超时率、同时并发数,这是从互联网产品的效果来讲的。
董海峰从fit for purpose的角度讲了对quality assurance的理解,他的right first time原则很有启发。
2011.11.5
江庆松讲了在百度敏捷开发的历史和现状。
宋金永讲了IT人修炼之道,百度人的六大意识,对于广大学子的十二项建议,受益匪浅,不愧是在不同IT公司修炼过的前辈。
六大意识:质量、求实、进取、团队、时间、沟通。(我太符合了)
十二项建议:
team:together everyone achieves more.
注重流程:实践的精华。(大公司很强调这一点)
编程规范:建立自己的。
主动出击:串讲。(积极的态度)
设计与内存分析。
耦合与内聚:避免环形依赖。(死锁的条件)
高负荷设计。
不过度依赖、相信他人。(编写防御型代码)
不能过度优化。
iShare:乐于与他人分享。
注重版本:可回溯。
敏捷开发:快速发布。
2011.11.6
徐串讲了海量数据处理在百度的应用,处理四种业务:网页、广告、日志、UGC(user generated content)。
三种方法mapreduce、message passsing interface、volunteer computing的不同应用方向。
mapreduce通用性好,千台规模,有master控制结点,用来容错。用于日志分析、链接选取、网页分析、广告展现。新方向是超大规模(>一万台)、快速计算(<一分钟)。
MPI采用随机游走方式模拟用户上网过程,建立概率转移,获得每个网页被访问的概率,用于超链分析、新闻聚类、机器翻译,主要缺点是迭代I/O不可忍,不保存中间结果,容错性差、恢复代价高,对网络带宽要求高。
volunteer computing主要用于网页的离线分析,因为它是上下文无关的计算密集型。
肖伟讲了百度云计算平台,以及现有的应用。
总体信息量很大,先回忆个大概,以后学习过程中再理解。
mark一下。
http://campus.baidu.com/ 上有介绍和相关ppt下载~