`
fiercelf
  • 浏览: 24187 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

谈搜索架构师的不同阶段

阅读更多


 

文/腾讯soso 乔建秀

 

    乔建秀,国内早期从事搜索引擎技术的专家,拥有十年的搜索经验。作为搜索首席架构师,2000年-2007年在中搜在线工作。2007年以高端技术专家身份加入腾讯公司。自加入公司以来,全面负责网页搜索的后台技术架构的研发,直到2009年9月soso网页搜索成功上线。目前任命网页搜索平台和公共平台的总监,负责搜索引擎新架构和公共平台的研发工作。

 

 

    搜索技术的应用越来越广,掌握搜索技术或者针对搜索技术有了解的人也越来越多。最近接触了不少搜索人才,从对搜索的了解程度来讲,大体分为几种不同的阶段。

    第一个阶段是使用开源的单机搜索系统(最常见的是lucene),在其之上加入broker和Cache,在其之上在构造应用。这个阶段一般对lucene的工作原理以及基本的搜索原理会略有了解,甚至还是有不少看过lucene的源码的。这也是大多数人接触搜索引擎的最方便和最常见的方式。但是这种系统一般只适用于较少量数据(千万级),其并发性能一般也只能达到百万级。好处是开发周期短,这一类的人才在市场上也容易找到,再加上一些好的idea,简单的数据挖掘方法(分类、聚类、协同过滤、用户行为分析等)就可以很快做出原型系统,满足一些小公司的前期创业阶段的技术要求。

    第二个阶段是自行开发的垂直领域内的搜索,这个阶段一般数据量会达到上亿或者几亿,如果用开源系统,其性价比已经不能满足要求,需要的服务器会超出承受能力,所以就会进行自己开发搜索系统,这种系统大都是针对内存的系统。这个阶段的人才会对搜索引擎的原理有较深的理解,可以自行开发简单的搜索应用。这类人才有很多是从第一个阶段发展过来的,他们会对搜索的各个方面都有所了解,包括切词、索引的建立、更新、应用的搭建、broker系统、cache系统、简单的排序策略等等。对于大部分搜索系统来讲,这部分人才都可以完成对系统设计和开发。

前两个阶段,其数据来源一般也是定向的抓取,基于模板的内容分析抽取,对服务的稳定性要求也没有那么高,更新无法做到无缝更新。

    第三个阶段是针对网页搜索(通用搜索)的人才,这个阶段的人才比较少,针对整个网页搜索都有了解的人就更少了。主要集中于百度、谷歌、搜狗等大的搜索公司。

了解通用搜索的人主要集中于大型的搜索公司,有以下几个原因:一是其它公司很难有做网页搜索的实力,也就很难有这种工作经历。没有经历过这样的挑战就很难想像出其中的难度。二是即使有做过,但是很难拿到用户的反馈,而缺乏用户反馈数据,网页搜索引擎就象缺了一条腿。三是做网页搜索的人一般比较多,包括百度、谷歌等公司,大部分人也只能从事网页搜索中较小的一个部分,针对网页搜索整体了解和思考都是比较少的。

    这个阶段的人才会对通用搜索遇到的挑战有一定的解决能力。包括如何能够在有限的资源内做到尽快的返回用户的结果(性能指标),如何做到第一时间更新互联网的热点并且能够展示到用户面前(时新性指标),如何能够尽可能多的收录互联网的有用页面(覆盖率指标),如何能够把用户最感兴趣的结果放到最前面(相关性指标),还有很多用户可用性、以及显相关的指标。这些是评价通用搜索的最主要的指标,每个指标都会有很大的挑战。这个阶段的人才一般最少会对其中的部分指标有自己解决的办法。

    第四个阶段是对网页搜索系统的设计能力和架构能力都很强的人才,他们会针对搜索系统的除暴露给用户的表现部分有很深的理解和自己的解决方案外,还包括跨机房解决方案,基础存储运算在搜索中的应用,高可用和灵活性的相关性实验支持,高效灵活的数据挖掘平台、接口及解决方案,系统的高度可扩展性和柔性服务能力等。这类人才在市场上凤毛麟角,大家都在争取。

 

上述是从事搜索十余年总结的一点经验,欢迎大家一起探讨。

 

 


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/soso_blog/archive/2010/07/01/5706555.aspx

分享到:
评论

相关推荐

    天翼云认证解决方案架构师

    天翼云认证解决方案架构师题库知识点,帮你直接通过天翼云解决方案架构师认证考试。天翼云认证解决方案架构师题库知识点,帮你直接通过天翼云解决方案架构师认证考试。天翼云认证解决方案架构师题库知识点,帮你直接...

    架构师的自我修养pdf

    架构师在不同公司、不同的发展阶段,他们的定位会有所差异。他们可能承担各种不同的角色,包括但不限于技术领导者、项目管理者、团队领导者,甚至是业务运维的专家。架构师是否带团队,是否具有管理职能,是否注重...

    架构师第一阶段 架构师之路 百度网盘

    架构师之路的第一阶段视频教程,百度网盘。需要的拿去................

    架构师成长之路,架构师成长指南

    此外,架构师还需要具备良好的沟通能力,能够与项目经理、开发人员、测试人员以及业务分析师等不同角色进行有效的协作。 二、技术知识体系 成为一名合格的架构师,需要掌握广泛的技术知识。这包括但不限于:编程...

    测试架构师修炼之道:从测试工程师到测试架构师1

    书中区分了测试经理、系统架构师和测试架构师的不同职责,并详细列出了测试架构师所需的知识能力模型,包括软件产品质量模型、测试类型、方法、设计技术、探索式测试、自动化测试等。通过这些知识和技能的积累,测试...

    架构师(第1期).架构师(第2期).架构师(第3期).pdf

    此外,第一期还深入探讨了不同的架构模式,如微服务架构和分布式系统架构,并分析了这些模式在特定业务场景下的应用,让读者能够根据实际需求做出合适的架构选择。 《架构师(第2期).pdf》则转入更为具体和实践的...

    系统架构师教程.pdf

    系统架构师必须了解信息系统的生命周期,包括规划、分析、设计、实施、运维和废弃等阶段。在此基础上,还需掌握信息系统的种类和特点,比如事务处理系统、决策支持系统、专家系统、办公自动化系统等。同时,必须对...

    C#架构师之路C#架构师之路

    每个阶段都需要架构师具备不同的技能和知识,比如需求分析阶段需要架构师能够准确把握用户需求,而总体设计阶段则需要架构师能够设计出一个清晰、合理的软件框架。 面向对象的分析(OOA)、设计(OOD)和编程(OOP...

    一线架构师实践指南 电子书

    《一线架构师实践指南》是一本专为有志于或已经在IT行业中担任架构师角色的专业人士准备的电子书籍。该书旨在提供实用的、一线的架构设计与实施经验,帮助读者提升自己的专业技能,理解并解决实际工作中遇到的挑战。...

    做人、做事,做架构师——架构师能力模型解析

    【架构师能力模型解析】 架构师,作为IT领域的一个关键角色,不仅关乎技术实力,更涉及个人特质和软技能的全面发展。成为一名优秀的架构师,意味着你需要在“个人特性”和“技术技能”两方面下足功夫。在这个能力...

    历年高级系统架构师真题

    9. **架构评估与决策**:如何进行技术选型,评估不同架构的优缺点,以及如何在成本、性能、时间表之间做出权衡。 10. **项目管理与沟通**:架构师需要具备良好的团队协作和沟通能力,了解项目管理方法如瀑布模型、...

    架构师官方教材.zip

    2. **架构模式与范式**:例如微服务架构、服务导向架构(SOA)、事件驱动架构(EDA)等,这些模式提供了不同场景下的解决方案,有助于选择合适的架构风格。 3. **技术选型**:探讨如何根据业务需求选择适合的技术栈...

    Java架构师视频教程

    Java架构师视频教程 Java架构师视频教程

    软件架构师-架构资料.zip

    总的来说,"软件架构师-架构资料.zip"中的内容可能会涵盖以下方面:软件架构设计原则、架构模式、架构评估方法、架构文档编写、技术选型策略、项目管理技巧、团队协作经验分享、以及针对不同领域的特定架构解决方案...

    软件架构师教程 软件架构

    0_架构师与设计师.pdf 01_软件流程实施方案选择.pdf 02_软件架构文档设计.pdf 03_软件架构风险管理.pdf 04_如何描述和评估软件架构质量.pdf 05_设计模式与软件架构设计.pdf 06_AOP开发实践.pdf 07_软件架构通用服务....

    高级系统架构师经典案例分享

    在IT行业中,系统架构师扮演着至关重要的角色,他们负责设计和规划复杂的软件系统,确保其高效、稳定、可扩展并易于维护。本资源“高级系统架构师经典案例分享”聚焦于这一领域的专业知识与实践经验,旨在为有志于...

    java 高级架构师教程,java 高级架构师教程,java 高级架构师教程,java 高级架构师教程,java 高级架构师教程

    java 高级架构师教程,java 高级架构师教程,java 高级架构师教程,java 高级架构师教程,java 高级架构师教程,java 高级架构师教程,java 高级架构师教程,java 高级架构师教程,java 高级架构师教程,java 高级...

Global site tag (gtag.js) - Google Analytics