实时数仓实时数仓|你想要的数仓分层设计与技术选型你想要的数仓分层设计与技术选型
数据仓库概念的提出都要追溯到上世纪了,我们认为在大数据元年之前的数仓可以称为传统数仓,而后随着海量数据不断增
长,以及Hadoop生态不断发展,主要基于Hive/HDFS的离线数仓架构可以兴起并延续至今,近几年随着
Storm/Spark(Streaming)/Flink等实时处理框架的更新迭代乃至相互取代,各厂都在着力构建自己的实时数仓,特别是近两
年,随着Flink声名鹊起,实时数仓更是名声在外并且还在不断快速发展。
目前大多企业的数据体系都是围绕数仓的数据平台架构,特别是在着力建设实时数仓,或者在建设离线数仓与实时数仓相统一
的数仓体系。本文我们精选了实时数仓建设的典型代表,包括美团点评、网易、知乎、OPPO等几家的实时数仓架构,他们的
数仓实践肯定对我们有所借鉴或启迪。笔者这里特别推荐参考他们的分层设计,存储与计算引擎的选型。
本文举的四个代表案例:
1.美团点评基于 Flink 的实时数仓平台实践
2.网易基于Flink的严选实时数仓实践
3.知乎实时数仓实践及架构演进
4.OPPO 实时数仓揭秘及离线到实时的平滑迁移
美团点评基于Flink的实时数仓平台实践
实时计算平台架构
下图所示的是美团点评实时计算平台的架构。
最底层是收集层,这一层负责收集用户的实时数据,包括 Binlog、后端服务日志以及 IoT 数据,经过日志收集团队和 DB 收集
团队的处理,数据将会被收集到 Kafka 中。这些数据不只是参与实时计算,也会参与离线计算。
收集层之上是存储层,这一层除了使用 Kafka 做消息通道之外,还会基于 HDFS 做状态数据存储以及基于 HBase 做维度数据
的存储。
存储层之上是引擎层,包括 Storm 和 Flink。实时计算平台会在引擎层为用户提供一些框架的封装以及公共包和组件的支持。
在引擎层之上就是平台层了,平台层从数据、任务和资源三个视角去管理。
架构的最上层是应用层,包括了实时数仓、机器学习、数据同步以及事件驱动应用等。
从功能角度来看,美团点评的实时计算平台主要包括作业和资源管理两个方面的功能。其中,作业部分包括作业配置、作业发
布以及作业状态三个方面的功能。
在作业配置方面,则包括作业设置、运行时设置以及拓扑结构设置;
评论0