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

原文地址https://mp.weixin.qq.com/s?__biz=MzIzOTU0NTQ0MA==&mid=2247488245&idx=1&sn=1c70a32f11da7916cb402933fb65dd9f&chksm=e9292ffade5ea6ec7c6233f09d3786c75d02b91a91328b251d8689e8dd8162d55632a3ea61a1&scene=21#wechat_redirect

TPS:系统吞吐量,每秒钟request/事务 数量

  搜索离线:将各种来源数据转换处理后送入搜索引擎等“在线”服务的系统统称为“离线”系统。

其他的我是真的看不懂

来源https://mp.weixin.qq.com/s?__biz=MzIzOTU0NTQ0MA==&mid=2247488245&idx=1&sn=1c70a32f11da7916cb402933fb65dd9f&chksm=e9292ffade5ea6ec7c6233f09d3786c75d02b91a91328b251d8689e8dd8162d55632a3ea61a1&scene=21#wechat_redirect

★ 基于Hbase的存储架构

搜索离线大约在2012年即引入了Hbase作为数据的存储引擎,有力的支持了搜索业务从淘宝主搜到离线平台的整个发展历程,历经多次双11考验,稳定性和性能都得到明确的验证。从功能层面,搜索离线引入Hbase的原因主要是以下几点:

  1. 通过Scan/Get可以批量/单条的获取数据,通过bulkload/put可以批量/单条的导入数据,这与搜索的全量/增量模型完全吻合,天然适合支持搜索离线业务。

  2. 底层存储基于HDFS,LSM-Tree的的架构能够确保数据安全性,计算存储分离的架构保证了集群规模水平可扩展,易于提高整体的吞吐。通过单机性能优化(Async、BucketCache、Handler分层、Offheap)和集群的扩容,确保了业务大幅增长时,存储从来没有成为系统的瓶颈。

  3. Free Schema的特性能够很好的应对业务数据频繁变化的情况,也能够方便支持一些特殊业务场景的数据逻辑。

通过引入Hbase做为离线系统的内部数据存储,我们成功解决了每天全量时对上游Mysql造成很大压力的问题,大幅度的提升了整体系统的吞吐。数据存储到Hbase也是全量任务向流式处理流程转型(MR->Stream)的基础,而这一点为后来Blink流引擎在搜索离线的孕育和发展也埋下了伏笔。

当然Hbase也不是毫无缺点,JVM内存管理的痼疾、单机Handler打满导致雪崩、缺乏容器化部署能力等也带来了不少烦恼,很快我们就会替换Hbase为阿里内部发展的另外一套存储引擎,期望能够部分的解决这些问题。

猜你喜欢

转载自www.cnblogs.com/0710whh/p/11028132.html