前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >实时数仓

实时数仓

原创
作者头像
平常心
修改2021-07-16 17:59:45
1.3K0
修改2021-07-16 17:59:45
举报
文章被收录于专栏:个人总结系列个人总结系列
一. 背景说明

        一方面互联网行业对实时化服务的要求日益增多,尤其在信息流,短视频应用最为显著,同时随着实时技术引擎的发展能够提供高效,稳定的实时数据服务能力。另一方面初期实时计算都是以需求为导向,采用"一路到底"的开发模式,没有形成完整的,统一的,规范化的实时数据体系。

为了避免我们同事踩坑,总结自己的过往实时开发经验,梳理对应实时数据体系。

二. 实时数仓技术架构和应用

根据离线数据的开发,过往实时开发经验,对应实时计算架构和分层如下图所示:

通常离线数仓,采用空间换取时间的方式,所以层级划分比较多从而提高数据计算效率;而对于实时数仓考虑时效,分层越少越好,减少分层也是为了减少中间流程出错的可能,主流的是数据接入 → 数据汇总 → 结果输出 这三层。

① ODS层:主要是埋点,流量等消息数据的接入,这一层是数据输入层。

② DIM层:主要是一些维表,如用户维表,产品维表等信息数据,在实时ETL,实时统计,或者特征加工时需要进行流数据和静态维表数据关联处理,这一层非必须的。

③ DWD层:一般是数据关联后的多维数据,比如双流join, 消息聚合,多维明细数据,特征加工数据输出,提供在线消息系统(如规则告警),实时olap,特征工程使用,这一层因为直接对接是业务层,也可以叫DWS层。

④ DWS层:主要分为两部分,一部分是统计计算,指标汇总输出,提供给实时大屏显示,实时报表等,或者实时标签输出到redis, 被push推荐系统调用等;另一部分就是DWD层,能够进行实时olap处理的数据输出。

还有一种情况,是一个实时流任务中,既要先进行多维明细数据的关联,这种数据没有进行持久化存储,然后进行汇总计算,也是考虑数据和外部多一次交互,出错的可能性就会增加,缺点是增加了对应的计算资源要求。

附: 实时计算引擎选型对比 https://tech.meituan.com/2017/11/17/flink-benchmark.html

三. 实时规范

① 数据接入规范

         kafka基于group id区分对应消费topic数据内容,group ip 命名规范  计算引擎_业务方_数据输出类型,汇总还是明细数据_存储db类型__存储表名, 例如flink_push_sum/detail/feature_mysql/es_tab_demo

②. 实时任务规范

        实时任务名和kafka的group id的命名保持一致,因为是7*24小时服务,所以不涉及调度,只涉及任务监控;

        实时数据的一致性和准确性,从两方面处理,一是进行在线测试,通过测试数据进行计算结果或者数据输出测试,是否符合业务需求,符合才正式上线;另一种是实时输出数据,通过hive等离线进行对比,如果一致则任务实时任务没有异常,需要对应离线的数据处理脚本。

③. 实时存储规范

         实时数据输出是在线系统侧遵从业务方命名规范,如果是数据中心自己的存储,使用实时任务一致的命名规范。

四. 实时监控

         分为两部分监控,一个是计算集群层面的,一个是计算任务层面,简单说明如下:

①实时计算集群:现有服务器,hadoop集群或者k8s监控,实时计算资源和状态监控;

②实时计算任务:根据job id进行kafka lag消息延迟,任务内存消耗,任务状态异常,任务自动重启等监控告警。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一. 背景说明
  • 二. 实时数仓技术架构和应用
  • 三. 实时规范
  • 四. 实时监控
相关产品与服务
大数据处理套件 TBDS
腾讯大数据处理套件(Tencent Big Data Suite,TBDS)依托腾讯多年海量数据处理经验,基于云原生技术和泛 Hadoop 生态开源技术提供的可靠、安全、易用的大数据处理平台。 TBDS可在公有云、私有云、非云化环境,根据不同数据处理需求组合合适的存算分析组件,包括 Hive、Spark、HBase、Flink、Presto、Iceberg、Elasticsearch、StarRocks 等,以快速构建企业级数据湖仓。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档