阿里搜索离线大数据平台架构

阿里搜索离线大数据平台架构

 

首先我们来看一张离线数据处理系统(Offline System)的是一部图,以此来思考什么是搜索离线?

 

什么是离线?在阿里搜索工程体系中我们把搜索引擎、在线算分、SearchPlanner等ms级响应用户请求的服务称之为“在线”服务;与之相对应的,将各种来源数据转换处理后送入搜索引擎等“在线”服务的系统统称为“离线”系统。商品搜索的业务特性(海量数据、复杂业务)决定了离线系统从诞生伊始就是一个大数据系统,

    大数据系统有以下的特点,任务模型上区分全量和增量、需要支持多样化的输入和输出数据源、需要提供一定能力的数据处理能力,全量是指将搜索业务数据全部重新处理生成,并传送给在线引擎,一般是每天一次,增量是指将上游数据源实时发生的数据变化更新到在线引擎中,性能方面有较高要求。全量需要极高吞吐能力,确保数以亿计的数据可以在数小时内完成。增量则需要支持数万TPS秒级的实时性,还需要有极高的可用性。

  阿里商品搜索体系从使用hadoop+habase的淘宝搜索阶段到组件化开发的离线平台阶段,整个搜索离线系统的演进是沿着性能和效率两条主线,以业务和技术为双驱动,一步一步走到今天。这是一个技术与业务高度融合互动,互相促进发展的典型样例 离线平台的技术架构展开,主要分为平台流程以及计算和存储架构等几个方面。离线平台技术组件结构的组件主要分为几个方面,分布式任务调度平台Maat,执行引擎,Flink的阿里内部版本Blink等,阿里采用基于hbase的存储结构和基于flink的计算架构,采用hbase做为离线系统的内部数据存储,成功解决了每天全量时对上游Mysql造成很大压力的问题,大幅度的提升了整体系统的吞吐,采用blink可以直接完成生成HFile的任务,调度可以大幅的节省计算资源,提高集群效率。

    搜索离线数据处理是一个典型的海量数据处理的模型,他将批次处理和实时计算,搜索内部技术结合开源大数据存储和计算系统,针对自身业务和技术特点构建了搜索离线平台,提供复杂业务场景下单日批次处理千亿级数据,秒级实时百万TPS吞吐的计算能力。离线平台目前支持不同业务线的搜索业务需求,大幅度提高业务执行的效率成为了搜索平台中的重要组成部分

 

转载于:https://www.cnblogs.com/wj1998/p/11052665.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值