zoukankan      html  css  js  c++  java
  • 阿里巴巴B2B搜索学习

    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
  • 相关阅读:
    ABP dynamic API
    SQL语句 还原未知逻辑名称数据库
    SQL 还原数据库
    使用开源项目集锦
    webp性能测评
    js通过继承实现私有函数
    js组合继承和寄生组合式继承比较
    JS中循环绑定遇到的问题及解决方法
    JS学习之事件流
    OpenGL利用模板测试实现不规则裁剪
  • 原文地址:https://www.cnblogs.com/whuqin/p/4981957.html
Copyright © 2011-2022 走看看