罗德岛战记ova,健身私教学校,赤西凉
原题目:小红书基于DorisDB实现内容服务平台同一化,简化内容链路
小红书是年轻人的生活记录、分享平台,用户能够通过短视频、图文等形式记录生活点滴,分享生活方式。在2017年后,跟着买卖类型和用户体量的爆炸式增长,各类内容阐发的需求以及应用体系的内容需求快速显现,例如:贸易智能阐发,内容应用报表,用户行为阐发、算法策略内容等。小红书大内容团队逐步引入了多种OLAP阐发引擎来更好的满足需求。DorisDB采用了全面向量化的较量手艺,是性能非常强悍的新一代MPP内容库。通过引入DorisDB,小红书构建了全新的同一内容服务平台,大大低落了内容链路开发复杂性,提拔了高并发极速查询能力。
一、OLAP引擎在小红书的演进史
第一阶段,在2017年之前,内容总量还不是稀奇大,这个阶段使用AWS的Redshift,此时数仓系统还没有完全创建,很多内容需求的实现都是用短平快、烟囱式开发的方式来满足。内容ETL、数仓模型到最后报表端展现,在Redshift中一站式完成。
但跟着买卖复杂度络续提拔,以及内容量的快速增长,这种模式很快遇到了瓶颈。主要有以下问题:
·Redshift无法在不影响线上查询性能的条件下弹性扩展,一旦涉及到扩容,就会涉及到内容重分布,从而影响集群的性能以及可用性。
·ETL任务严重影响集群可用性。在Redshift中同时进行ETL任务的时候,会大量抢占资源,从而影响内容阐发的效率,导致查询超时甚至因为集群负载过大后整个集群溃逃弗成用。
·没有优越的存算分离,内容存储容量存在瓶颈,无法满足随买卖而快速增长的内容量存储需求。
第二阶段,跟着内容仓库在Hadoop/Hive系统上搭建和完美,ETL任务全部转移至Hadoop集群,这个阶段使用Presto完成OLAP阐发。Presto自然和Hive共享元内容信息,且共同使用物理内容存储,即插即用。大量的对数仓表的机动查询使用Presto完成。
第三阶段,买卖及时性加强,对查询性能的要求络续升高,同时许多内容应用发生。这个阶段引入了ClickHouse,用来扶植性能更强悍,响应时间更短的内容阐发平台以满足及时性要求。
第四阶段,小红书大内容团队进行了及时数仓的团体设计和搭建,同时为同一对各买卖团队供应内容接口而构建了内容服务平台,外接了多个内部或者To B服务的应用体系。既必要做低延时的复杂查询,同时对并发量也有很高的要求。这个阶段我们又根据场景引入了DorisDB,以满足以上各类需求。
二、小红书内容阐发系统架构
1、小红书OLAP系统近况
小红书的整个内容阐发系统,由内容采集、内容存储加工/内容共享和应用层组成。
1)内容采集
服务器日志或者App日志通过Flume网络埋点日志,内容同时分发到离线存储S3和及时存储kafka;线上买卖内容库通过Canal及时采集MySQL binlog等信息。
2)内容存储加工
离线内容处理:行使Hive/Spark高可扩展的批处理能力承担所有的离线数仓的ETL和内容模型加工的工作。
及时内容处理:Flink完成及时侧内容的ETL(包含维度丰富,双流Join,及时汇总);离线表通过调度平台同步到ClickHouse/DorisDB,Flink实现了ClickHouse和DorisDB的sink connector,落地到DorisDB或ClickHouse。
3)内容共享
内容共享层的主要供应对外服务的底层内容存储,离线或者及时的内容写入相关的内容库组件中,面向多种服务,分歧场景供应查询能力。
内容共享层主要有TiDB/Hbase/ClickHouse/DorisDB。通过DorisDB和ClickHouse供应的高速OLAP查询能力,在应用侧承接了报表平台,供应即席阐发的平台,对开发侧供应内容接口,以及实现多个内容产物(好比流量阐发平台,用户标签平台)。
本文地址:http://www.wbwb.net/bianchengyuyan/219235.html 转载请注明出处!