1.搜索业务

主搜索:商品搜索、商家搜索、采购搜索、app搜索
行业搜索:淘货源、淘工厂、聚好货、主题市场、品牌馆等

2.优势

由于用户多,需求强烈,收益大,所以功能、场景、架构做到极致高效。
  • 代码复用性强:基础通用功能进行组件抽象化
  • 组件通用性好:一些组件或者组件进行组合的服务,适用更多场景,支持更多功能
  • 转化效果好:算法做的比较深入、细致

3.搜索技术架构

架构分为三部分:离线、实时、在线。

离线

  • NLP文本分析:Natural Language Processing,基于自然语言处理进行文本分析,提取特征
  • ODPS-MPI:Open Data Processing Service,阿里自己开发的开发数据处理服务,也就是基于Hadoop/MapReduce来跑大数据量的任务,进行机器学习、数据挖掘等工作
  • ODPS-UNIV:理解应该是一个web平台,来管理复用计算模块、计算任务,如任务调度,输入输出的设置,模块复用等
  • Dump平台:Universe数据中心生成的离线索引,通过dump平台传到线上搜索引擎

实时

实时部分针对用户行为进行处理反馈,实现个性化
  • Pora平台用户实时分析:基于Storm的流式计算平台,通过用户行为进行实时收集和分析,及时更新用户特征
  • Antispam平台内容分析:更新offer特征(offer就是一条返回内容,可以是一个商家、或者一个商品),像标题、交易状态发生变化时重新计算offer的特征,通过dump平台的增量流程,将数据更新到线上搜索引擎
  • TT实时数据源:淘宝研发的日志收集和分发系统–TimeTunnel

在线

在线搜索引擎接收线上请求,返回排序结果。
  • SP查询计划:search plane,将查询请求分发给各个平台,对各平台返回结果进行拼串
  • QP平台:Query Parse
  • Ups平台:猜测是User parse service,获取用户特征
  • Isearch平台:搜索引擎,维护索引,接收query,匹配文档,返回结果

4.Query分析

query分析很重要,能更精确的返回用户需要的结果。流程有:
  • 拼写纠错
  • 分词、属性标注
  • 语义归一:同义词标准化
  • 分类:query意图分类,如是搜商家的、或者是泛查询、或者是搜商品
  • 聚类:我理解是用于query扩展,对长尾query给出与其相关更精确的query,扩大召回,提高准确率
  • 个性化:用户历史行为的使用

用到query分析的产品很多,开发就使用了上文提到的代码组件化、功能通用化的思想,如下图,基本小功能模块化,小模块组合成较大的模块,支持不同的应用。

后面的应用场景就不再记录了。

学习资料

http://www.infoq.com/cn/presentations/b2b-search-field-algorithm-challenges
http://www.aliyun.com/product/odps/
http://www.searchtb.com/2012/11/pora.html

阿里巴巴B2B搜索学习的更多相关文章

  1. [转载]SharePoint 2013搜索学习笔记之搜索构架简单概述

    Sharepoint搜索引擎主要由6种组件构成,他们分别是爬网组件,内容处理组件,分析处理组件,索引组件,查询处理组件,搜索管理组件.可以将这6种组件分别部署到Sharepoint场内的多个服务器上, ...

  2. [转载]SharePoint 2013搜索学习笔记之自定义结果源

    搜索中心新建好之后在搜索结果页上会默认有所有内容,人员,对话,视频这四个结果分类,每个分类会返回指定范围的搜索结果,这里我再添加了部门日志结果分类,搜索这个分类只会返回部门日志内容类型的搜索结果,要实 ...

  3. SSM+solr 通过商品搜索学习solr的简单使用

    学习了一下https://github.com/TyCoding/ssm-redis-solr这个github上的solr搜索功能,现在来记录一下. 我的理解就是solr有点类似于数据库,但它是有索引 ...

  4. Lucene/Solr企业级搜索学习资源

    Solr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口.用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引:也可以通过Http GSol ...

  5. Sharepoint2013搜索学习笔记之搜索构架简单概述(一)

    Sharepoint搜索引擎主要由6种组件构成,他们分别是爬网组件,内容处理组件,分析处理组件,索引组件,查询处理组件,搜索管理组件.可以将这6种组件分别部署到Sharepoint场内的多个服务器上, ...

  6. Sharepoint2013搜索学习笔记之自定义结果源(七)

    搜索中心新建好之后在搜索结果页上会默认有所有内容,人员,对话,视频这四个结果分类,每个分类会返回指定范围的搜索结果,这里我再添加了部门日志结果分类,搜索这个分类只会返回部门日志内容类型的搜索结果,要实 ...

  7. Sharepoint2013搜索学习笔记之自定义结果精简分类(八)

    搜索结果页左边的结果精简分类是可以根据搜索结果自定义的,在搜索的部门日志结果集页面上我搜索测试关键字,左边分类导航在默认分类的基础上增加了一个日志类型的分类,如下图: 要实现这个效果,导航到之前定义的 ...

  8. Sharepoint2013搜索学习笔记之自定义结果显示模板(九)

    搜索结果通过套用定义好的显示模板来展示结果,显示模板由js和html组成,我们可以通过修改显示模板,然后将修改好的显示模板跟搜索结果绑定起来,来修改搜索结果的显示效果,例子如下图: 修改前 修改后 第 ...

  9. Sharepoint2013搜索学习笔记之自定义查询规则(十)

    自定义查询规则,可以根据搜索的关键字将指定的一个或一堆搜索结果提升到第一的位置,如我搜索周杰伦,可以指定搜索最靠前的结果是sharepoint网站内周杰伦的视频如下图: 第一步,进入管理中心,点击管理 ...

随机推荐

  1. app.js

    //第一步,引入express模块 var exp = require('express'),     http = require('http'),//引入http模块     path = req ...

  2. NOIP2014 总结

    想了很久,才开始动笔. 怎么说,感觉挺对不起自己的.愚蠢的失误让我正好卡着一等线,真希望不要是二等奖. 最难过的是,努力全葬送在愚蠢上面了. 不过也好,学会平静自己也是一种能力. 半期考试也遭的一塌糊 ...

  3. python基础整理笔记(七)

    一. python的类属性与实例属性的注意点 class TestAtt(): aaa = 10 def main(): # case 1 obj1 = TestAtt() obj2 = TestAt ...

  4. Linq学习工具及Lamada表达式

    好东西.转载一个.以备学习 Linq学习工具:     http://www.linqpad.net/ Lamada表达式: Func<int, int, int> IntPow = (x ...

  5. Thinkphp内置截取字符串函数

    Thinkphp内置了一个可以媲美smarty的模板引擎,给我们带来了很大的方便.调用函数也一样,可以和smarty一样调用自己需要的函数,而官方也内置了一些常用的函数供大家调用. 比如今天我们说的截 ...

  6. opencv在ios上的开发教程

    http://docs.opencv.org/doc/tutorials/ios/hello/hello.html  openCV 2.4.3 iOS background_segm.hpp 'lis ...

  7. android5.0 aosp编译记录(由于机器硬件原因,改为4.4.2编译通过)

    编译环境必须是64位系统啊,妥妥的又装了64位的ubuntu,虚拟机推荐server版本,不带x省性能…… 接着要装openjdk 1.7,记得更新一下系统的源,下面这个不错 deb http://m ...

  8. toad的基本操作

    1.把鼠标停在sql所在行,然后ctrl+Enter直接执行当前sql. 2.解决Toad对中文显示乱码问题(如果数据库所在主机的NLS_LANG是AMERICAN_AMERICA.WE8ISO885 ...

  9. java学习笔记六——数组

    数组类型 数组是一种常见的数据结构,可用于存放多个数据,每一个数组元素存放一个数据,通常可以通过下标进行访问其元素. Java数组要求所有数组元素具有相同的数据类型.因此,数组元素的数据类型是唯一的. ...

  10. MJExtension笔记(一)

    之前有说,看好的编程就去敲好的开源项目:一直觉得这个无从下手,但是这次跟着一点点敲MJExtension,我明白了这句话的深度:其实并不需要去找,每一个三方项目都有很多值得学习的地方:笔记一只记录在敲 ...