QCon 演讲火热征集中,快来分享技术实践与洞见! 了解详情
写点什么

百度技术沙龙第 5 期回顾:现代搜索核心技术(含资料下载)

  • 2010-08-19
  • 本文字数:1564 字

    阅读完需:约 5 分钟

在上周六举行的百度技术沙龙活动上,来自百度搜索技术部的研究员殷庆轩和去哪儿网站的搜索技术负责人何伟平,分享了如何提高搜索引擎的时效性,以及数据库在现代搜索技术中的应用。本文对这次活动的内容做简要总结,并提供了演讲用幻灯片下载

殷庆轩在题为“搜索引擎的时效性需求满足”演讲中,主要介绍了时效性问题的定义、需求分析,以及包括收录、排序和系统等相关的技术点。比如结合当前的热点事件对突发时效性的难点进行了分析,在目前每天全球新增或者修改的网页数量以数十亿为量级的海量数据下,要在几秒或者几分钟内提供准确而详细的信息,是非常困难的。这也就要求搜索引擎具备“全、准、快、新”的特点,其中“全”即对数据的收录详细程度,”准“为对相关数据进行排序,而”快“则是确保系统能够以最快的速度响应用户的需求。现场参会者周志奇对这个话题也做了简单总结:

百度索引中提供检索的数据只有百亿条,而现在每天增加的数据量已是 2-3 亿条,现在每一天增加的数据量是 2003 年一年数据的增长量。对于如此强势的增长,要对数据进行全部索引并在 200-300 个毫秒级返回检索结果几乎是不可能的,所以就要对数据进行优化。 数据是有时效性的,索引可以为分最新最常使用的、不常使用的、很少使用的和很老又不用的等。所以可以多几个索引库,并对数据进行整理,对于时效性不强的可以向后面的索引里转移,检索时对这几个索引并发检索,最后将结果合并后返回用户。对于不用的数据只是一个保存,而不提供检索,或是在检索结果很少的情况下,再多增加一个链接"点击查看更多",点击后就去查找老而全的库。虽然返回时间可能会很长,但是用户体验的感受是不会降低的。

来自去哪儿的工程师和搜索技术负责人何伟平,在活动现场分享了”数据库在现代搜索技术中的应用“。在加入去哪儿之前,何伟平在雅虎中国研发中心从事网页搜索相关工作,并且是 PostgreSQL 数据库研究人员和中文文档维护人员,在数据库技术领域有自己的见解。在他的演讲中,他先是介绍了数据库的演变史,而后重点介绍了数据库和现代搜索的关系,比如 SQL 数据库并没有过时,SQL 数据库也有强大的扩展能力,用好了也可以拥有很好的性能。他也提到对于中等业务规模,访问量也不是非常巨大,而对需求要求灵活的网站,选择 SQL 数据库是比较理想的。在谈到使用 SQL 数据库来做搜索的优缺点时,他提到:

简而言之,用 SQL 数据库来做搜索,其有点是简单、方便、通用,而且易于维护;不足之处是需要比较强的专业知识,而且可能需要额外的编码等。

最后他以下拉提示、相关推荐、站内搜索和垂直引擎等几个案例分享了他对现代搜索技术的看法。在提问环节,有参会者问道”去哪儿网站在抓取航班数据的时候如何确保时效性“,何伟平解释说:

这个问题和刚才百度朋友提到的时效性挺像的,我们最头疼的地方也是时效和 Cache(缓存)之间的关系,我们采取的是比较短的时间 Cache 策略,这是(系统)比较长时间运行出来的经验,一般也就几秒钟就足够了。比如热门的航线,比如京沪,我们几乎是实时地去抓,但也不是真的实时,因为用户的使用习惯是一旦查到一个结果后都会再刷好几次,它刷的这几次就需要坚决地不去影响后面的网站或者航信系统。我们一般是这样考虑的!

也有参会者在会后记录了自己参会的一些感触,比如来自凤凰网的孙立,在他的”实时搜索之微博“博客中提到”这也是我第一次参加 InfoQ 的聚会,感觉非常不错,不但免费,而且内容质量非常高,活动形式也非常的好,不幸的是回来后感冒发烧了。“他还记录了在现场活动的 OpenSpace“每一个人都是讲师”环节自己小组所讨论的主要内容,如果构建一个基于微博的实时搜索系统。网上的一些图文报道见“图文大亮相~~ 百度技术沙龙第 5 期”。

关于两位演讲嘉宾的更多细节内容,请下载他们的演讲幻灯片,随后 InfoQ 中文站还会发布他们的演讲视频,敬请期待。

2010-08-19 00:355069

评论

发布
暂无评论
发现更多内容

为了KPI,对APK进行极限优化!,大厂Android研发岗面试复盘

android 程序员 移动开发

为了弄懂Flutter的状态管理,-我用10种方法改造了counter-app(1)

android 程序员 移动开发

为什么说Android开发一定要有身处安乐之窝,却逢乱世之感的觉悟?

android 程序员 移动开发

互联网BAT大厂(百度、美团等,作为Android开发程序员

android 程序员 移动开发

互联网寒冬下,原生Android开发的路该怎么走?,flutter代码扫描

android 程序员 移动开发

五分钟搞定正则表达式,如果没搞定,再加两分钟(1),2021Android面试笔试总结

android 程序员 移动开发

今日头条APK瘦身之路,kotlin教程pdf下载

android 程序员 移动开发

为了弄懂Flutter的状态管理,-我用10种方法改造了counter-app

android 程序员 移动开发

二本渣渣6年开发面试字节跳动Android研发岗,被怼的有点惨---

android 程序员 移动开发

人手必备的Jetpack操作手册来了!针对性解决Jetpack组件问题(1)

android 程序员 移动开发

人手必备的Jetpack操作手册来了!针对性解决Jetpack组件问题

android 程序员 移动开发

什么?这个天天使用的API竟然被废弃了?,android组件化和模块化区别

android 程序员 移动开发

为什么Flutter是跨平台开发的终极之选,安卓framework开发

android 程序员 移动开发

二本渣渣6年开发面试字节跳动Android研发岗,被怼的有点惨---(1)

android 程序员 移动开发

Vue进阶(幺陆贰):vue render函数介绍

No Silver Bullet

Vue 11月日更

京东技术中台的Flutter实践之路,android界面开发经典书籍

android 程序员 移动开发

纯干货分享 | 研发效能提升——敏捷需求篇

云智慧AIOps社区

开源 开发者 敏捷开发 研发效能 提升效率

为什么高级Android程序员永远不必担心自己的技术过时?

android 程序员 移动开发

五年开发经验杭州竟找不到工作:Android开发真等于废人?

android 程序员 移动开发

从 0 到 15k+ star ,GSYVideoPlayer 的发展历程|项目复盘

android 程序员 移动开发

为什么-Android-要采用-Binder-作为-IPC-机制?,android输入法开发源码

android 程序员 移动开发

为什么有些大公司的技术,实在是弱爆了?,flutter教程dart

android 程序员 移动开发

互联网如今趋势,30岁的程序员如何应对?,PDF超过6000页,

android 程序员 移动开发

今日头条 Android '秒' 级编译速度优化,我的腾讯安卓面试经历分享

android 程序员 移动开发

今日头条APK瘦身之路(1),android设计模式

android 程序员 移动开发

事件分发三连问:事件是如何从屏幕点击最终到达 Activity 的?CANCEL 事件什么时候会触发

android 程序员 移动开发

事件分发三连问:事件是如何从屏幕点击最终到达-Activity-的?CANCEL-事件什么时候会触发

android 程序员 移动开发

人都傻了!看完这份字节跳动师兄给我的程序员面试笔记,只能说一句牛啊

android 程序员 移动开发

天猫Java研发岗面经(技术三面):基础+算法+MySQL+Redis+秒杀架构

Java 编程 程序员 架构

五分钟搞定正则表达式,如果没搞定,再加两分钟,flutter小程序实现

android 程序员 移动开发

五年Android 开发大厂面经总结,详解系列文章

android 程序员 移动开发

百度技术沙龙第5期回顾:现代搜索核心技术(含资料下载)_数据库_霍太稳@极客邦科技_InfoQ精选文章