阿里如何实现秒级百万TPS?搜索离线大数据平台架构解读阅读心得

时间:2019-06-20 00:03:55   收藏:0   阅读:164

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

1. 任务模型上区分全量和增量

 

1)全量是指将搜索业务数据全部重新处理生成,并传送给在线引擎,一般是每天一次。这么做有两个原因:有业务数据是daily更新;引擎需要全量数据来高效的进行索引整理和预处理,提高在线服务效率。

 

2)增量是指将上游数据源实时发生的数据变化更新到在线引擎中。

 

3)性能方面有较高要求。全量需要极高吞吐能力,确保数以亿计的数据可以在数小时内完成。增量则需要支持数万TPS秒级的实时性,还需要有极高的可用性。

 

2. 需要支持多样化的输入和输出数据源,包括:Mysql,ODPS,TT等各种数据库和消息队列作为输入,搜索、Ranking、图、推荐等各种引擎作为输出。

 

3. 需要提供一定能力的数据处理能力,例如多表Join、UDTF支持等,以方便搜索业务的开发和接入。

 

在后续的段落中我们会看到离线系统架构围绕着这些特点,针对搜索业务的变化,做出的各种演进和发展。

 

原文:https://www.cnblogs.com/andibier/p/11055176.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!