数据中台全景架构及模块解析!一文入门中台架构师!

回顾一下,第一篇文章大白话 六问数据中台!你想知道的都在这了!。把数据中台是什么?为何?有什么价值?说的明明白白。数据中台是企业级能力复用平台,目标是让数据持续用起来,经过数据中台提供的工具、方法和运行机制,把数据变为一种服务能力,让数据更方便地被业务所使用前端

今天就来点实际干货,把企业真实数据平台架构分享给您!相信看完这篇文章,你会真正对数据中台有一个全景的认识与理解,从抽象过分到具体。无图无真相,我赶忙po一张数据中台整体架构图:mysql

image.png

数据中台是在底层存储计算平台与上层的数据应用之间的一整套体系,屏蔽掉底层存储平台的计算技术复杂性,下降对技术人才的需求,可让数据的使用成本更低。若是用三句话来归纳数据中台的组成架构,那么必定是:算法

  • 经过数据中台的数据汇聚、数据开发模块创建企业数据资产
  • 经过资产管理与治理、数据服务把数据资产变为数据服务能力,服务于企业业务
  • 数据安全体系、数据运营体系保障数据中台能够长期健康、持续运转

如今您已经知道了,数据中台离不开这几个模块:数据汇聚、数据开发、资产管理、数据安全、数据服务。那么赶忙跟上个人脚步潜入内部去一探究竟吧。sql

数据汇聚

数据汇聚,首先必然要有数据来源,有了数据来源以后,须要肯定采集工具,有了采集工具以后你还要肯定存储位置。数据库

数据来源

数据是数据中台的核心,因此数据汇聚无疑是数据中台的入口。企业中的数据来源极其多,但大都都离不开这几个方面:数据库,日志,前端埋点,爬虫系统等。编程

  • 数据库咱们不用多说,例如一般用mysql做为业务库,存储业务一些关键指标,好比用户信息、订单信息。也会用到一些Nosql数据库,通常用于存储一些不那么重要的数据。后端

  • 日志也是重要数据来源,由于日志记录了程序各类执行状况,其中也包括用户的业务处理轨迹,根据日志咱们能够分析出程序的异常状况,也能够统计关键业务指标好比PV,UV。安全

  • 前端埋点一样是很是重要的来源,用户不少前端请求并不会产生后端请求,好比点击,但这些对分析用户行为具备重要的价值,例如分析用户流失率,是在哪一个界面,哪一个环节用户流失了,这都要靠埋点数据。微信

  • 爬虫系统你们应该也不陌生了,虽然如今不少企业都声明禁止爬虫,但每每禁止爬取的数据才是有价值的数据,有些管理和决策就是须要竞争对手的数据做为对比,而这些数据就能够经过爬虫获取。网络

这些数据分散在不一样的网络环境和存储平台中,另外不一样的项目组可能还要重复去收集一样的数据,所以数据难以利用,难以复用、难以产生价值。数据汇聚就是使得各类异构网络、异构数据源的数据,方便统一采集到数据中台进行集中存储,为后续的加工建模作准备。

数据汇聚能够是实时接入,好比实时消费mysql的binlog进行数据同步,也能够是离线同步,好比使用sqoop离线同步mysql数据到hive。

技术选型

数据汇聚通常用到的技术包括:

  • Flume
  • Sqoop
  • Datax
  • Canal

数据落地

采集以后必然须要将数据落地,即存储层,常见的有:

  • MYSQL、Oracle、Tidb
  • Hive、Hdfs、HBase
  • Redis
  • ElasticSearch

因为篇幅问题,本文不详细说明。关于采集工具以及存储层的选择和使用、后续会有专门的文章介绍。请关注公众号【胖滚猪学编程】,一个集颜值与才华为一身的女程序媛,坚持原创,用漫画形式让编程so easy

数据开发

数据开发能够理解为数据汇聚和数据资产的一个桥梁。何为数据资产?数据资产是有价值的数据。而数据汇聚是原始数据,业务人员通常是难以使用的。原始数据-->有价值的数据,是须要一个过程的。那么就是让数据开发模块来完成这个过程。

image.png

数据开发是一整套数据加工及管控的工具,包括离线开发,智能调度,实时开发,人工智能等。

举个例子,某公司想知道广告投放的效益,而原始数据包括埋点数据,用户注册数据,用户消费数据等,是否是须要整理一个sql,跑一个广告效益报表呢?毫无疑问须要。那么咱们就能够经过智能调度平台,定时跑出业务须要的数据;也能够经过实时流计算,实时展现业务须要的数据。这都是属于数据开发模块的功能。

  • 离线计算:计算推荐使用Spark\Hive。调度平台可使用Azkaban、Oozie、EasySchedule。
  • 实时计算:推荐使用Flink、SparkStructStreaming、SparkStreaming、Storm
  • 人工智能:推荐使用TensorFlow、Spark ML

因为篇幅问题,本文不详细说明。后续文章有详细说明离线计算、实时计算的选型、应用场景和落地方案。请关注公众号【胖滚猪学编程】,一个集颜值与才华为一身的女程序媛,坚持原创,用漫画形式让编程so easy

数据开发模块适合对象是数据开发、算法建模人员,提供离线、实时、算法开发工具以及任务的管理、代码发布、运维、监控、告警等一些列集成工具,方便使用,提高效率。他们能够依赖于数据开发模块提供的基础功能,快速把数据加工成对业务有价值的形式,提供给业务使用。

数据资产管理

有了数据汇聚、数据开发模块,中台已经具有传统数仓平台的基本能力,能够作数据的汇聚以及各类数据开发,就能够创建企业的数据资产体系。

这里我有必要再次强调一遍:数据资产指的是有价值的数据。这个也正是资产管理模块须要去作的事情。如何让数据变的有价值?第一体如今数据自己上,好比须要保证数据的质量。第二体如今业务上,偏技术的数据体系业务人员是比较难理解的,所以资产管理须要用企业全员更好理解的方式,把企业的数据资产展示给企业全员(固然要考虑权限和安全管控)。

数据资产管理包括数据地图、元数据管理、数据质量、数据血缘、数据生命周期等进行管理和展现,以一种更直观的方式展示企业的数据资产,提高企业的数据意识。

如今你会有不少疑问,数据地图是什么?元数据管理是什么?数据血缘又是什么?这些都是很是核心的地方,别急,后续文章我会以公司真实落地方案和应用场景对每个模块进行说明,先发几张图让你对它们有一个初步的概念。

数据地图

数据血缘

数据质量和安全

数据质量和安全在不少架构图中归属于资产管理模块,可是笔者认为数据质量和安全应该是贯穿整个数据中台的。数据汇聚和数据开发的时候显然也应该考虑质量和安全问题,因此笔者倾向于将数据质量单独拿出来做为一个模块。

数据质量

咱们会遇到无处不在的数据质量问题,包括业务系统脏数据、数据不一致不许确等。影响数据使用和上层决策。

为何会出现数据质量问题呢?大部分是以下几个缘由

  • 开发代码的BUG
  • 数据源变动:好比因为MYSQL表结构变动,致使HIVE同步MYSQL任务失败。
  • 基础设施和服务不稳定或资源不足:好比流量猛增的状况致使OOM

因为这些缘由,会致使数据不符合如下"四性",所以存在数据质量问题:

  • 完整性:指的是数据信息是否存在缺失的情况,多是整个数据记录缺失,也多是数据中某个字段信息的记录缺失。
  • 一致性:是指数据是否遵照了统一的规范,数据集合是否保持了统一的格式。好比商品购买率=商品购买用户数 / 商品访问量,若是在不一样的模型中,商品购买用户数是1W、商品访问量10W,商品购买率20%,那这三个指标就存在不一致。
  • 准确性:是指数据记录的信息是否存在异常或错误。好比数据格式是否为正确的ip。
  • 及时性:是指数据从产生到能够查询的时间间隔,也叫数据的延时时长。

而数据质量无疑是很是重要的一部分,就算你数据再多再快,不许也无用。所以数据质量管理平台尤其重要。数据质量管理是支持多种异构数据源的质量校验、通知、管理服务的一站式平台。包括数据探查、对比、质量监控、SQL扫描和智能报警等功能。数据质量监控能够全程监控数据加工流水线,根据质量规则及时发现问题,并经过报警通知负责人及时处理。

在实际生产中,可从如下几个方面作好数据质量工做:

  • 离线数据:数据是否完整、一致和准确,好比HIVE离线同步业务库MYSQL数据,同步完须要对比数据条数。
  • 实时数据:除了数据是否完整、一致和准确,还须要检测数据是否断流、数据是否延迟。
  • 报警监控:支持短信、微信告警到对应负责人。

数据安全

数据安全的重要性不用多说,若是你把用户信息泄露了,严重会致使整个公司都倒闭。所以对于全链路的数据,都应该作好数据安全工做。好比应该把业务库/日志的敏感数据进行脱敏,为身份证、银行卡等经常使用的数据类型提供掩盖脱敏策略。以及日志审计等。

数据生命周期安全能够分为如下几个部分:

  • 数据采集安全:包括数据源鉴别以及记录等
  • 数据传输安全:包括数据传输加密等
  • 数据存储安全:包括存储介质安全、数据备份恢复等
  • 数据处理安全:包括数据脱敏等
  • 数据交换安全:包括数据共享安全、导入导出安全等
  • 数据销毁安全:包括数据销毁和介质销毁等

数据服务体系

前面利用数据汇聚、数据开发建设企业数据资产,利用数据管理展示企业的数据资产,可是并无发挥数据的价值。数据的价值体现必定是在业务层面、即数据服务体系。就是把数据变为一种服务能力,经过数据服务让数据参与到业务,激活整个数据中台,数据服务体系是数据中台存在的价值所在

数据服务体系是基于公司自身的产品和业务的,好比以电商公司为例,数据服务就包括了:精准营销、用户画像、经营分析、可视化大屏等。
image.png

总结

搭建企业级数据中台以前,务必把数据中台全景架构图设计好,对每个模块的定位、功能、做用作到心中有数。
笔者收集到10张高清数据中台架构图,包括阿里数据中台全景图、电商数据中台全景图等,对你理解数据中台构建数据中台具备重大价值!文章不便于一次发10张图,请关注公众号【胖滚猪学编程】回复"数据中台" 获取
image.png

wchat1

本文转载自公众号【胖滚猪学编程】 用漫画让编程so easy and interesting!欢迎关注!形象来源于微信表情包【胖滚家族】喜欢能够下载哦~

相关文章
相关标签/搜索