论数据中台的企业数据架构规划

(整期优先)网络出版时间:2020-12-01
/ 3

论数据中台的企业数据架构规划

陈立

华东勘测设计研究院有限公司 浙江杭州 310014

摘要:当前计算机、互联网、大数据技术的联姻,大力助推着现代企业管理走上高速公路。在当今和未来的相关领域,企业必将面对的挑战包括“利用信息技术提升企业组织对市场的快速响应能力”,“快速捕捉、搜集竞争信息,并迅速把它们转换成竞争情报和知识”,“快速配置和系统地集成人、技术和资源”等。企业数据中台这一理念正是在这样的应用需求场景下应运而生的,它通过对海量数据的准确分析,着眼于解决各业务领域信息共享的效率提升和技术集成等问题,为企业管理提供高效而准确的信息提供数据支撑。本文通过对企业数据中台建设过程中的核心架构剖析,阐明了数据中台应该具备的能力和作用,并结合企业自身的系统建设实践经验,指明了数据中台建设过程中需关注的核心架构功能点,以期为企业数据中台建设提供一定的借鉴和启示。

关键词:大数据;数据中台

一、数据中台建设的意义

大数据时代的到来,极大地改变了企业信息化的管理模式。其包容性将模糊掉内部各单位间、与企业的边界,信息孤岛现象大幅消减,数据共享成为可能,从而提高各机构的协同办公效率和为企业办事效率,提升自我治理能力和公共服务能力。具体而言,依托大数据的发展,有利于节约投资、加强企业市场监管,从而提高决策能力、提升公共服务能力,实现智慧管理目标。

利用大数据整合信息,将业务所收集的基础信息进行共享和比对,通过分析,可以发现监管漏洞,提高识别预警能力,达到促进营业增收、提高监管水平的目的。建设大数据中心,加强数据的获取、组织、分析、决策,通过云计算技术实现大数据对信息资源的统一管理,依据法律法规和各部门的需求进行资源的开发和利用,可以提高设备资源利用率、避免重复建设、降低维护成本。大数据也将进一步提高决策的效率,提高决策的科学性和精准性,提高预测预警能力以及应急响应能力,节约决策的成本。

数据中台是企业大数据建设和应用的重要基础和核心平台。通过此系统的建设,可使得企业未来各大数据应用项目统一在一个总体框架下,更加集中、有序、高水平整合与共建共享数据,实现对现有信息资源和应用系统的充分整合,打破信息孤岛,实现跨行业、跨部门的创新应用,提高协调效率和服务水平。数据中台包括两个方面,一是数据的技术能力,二是数据的资产技术能力,数据中台负责了所有业务数据的采集、加工处理、服务应用等工作,是一个多技术的整合。但数据中台不仅仅是一个数据的集合,经过处理后的数据不再像蜘蛛网一样眼花缭乱,它从各个业务线,业务域上的海量数据中提取核心内容,经过一定业务逻辑下的组装,还原出企业经营、生产与管理全链路下各个对象的行为树,同时能被灵活使用,并快速扩展。

数据中台的理念是让企业的整个职能业务都可以共享同一套数据技术与资产,数据中台的数据源自各业务系统,为业务体系提供了有力的算法、数据和技术支持。数据来自于业务,反哺业务,并循环往复,蕴含更大能量,形成一个数据生态,从而衍生无限的可能性。

5fc5eb43290a0_html_d6726ce54e1c3fbe.png

图 一

系统的建设将自然有效的继承前期企业信息化建设的成果,进一步实现信息互通、数据融合、数据共享、数据开放及业务协同。有效的支撑创新性大数据应用。

二、数据中台建设

数据中台构建企业全域数据中心,其中的公共数据层将作为所有数据服务开发的基础,公共数据层模型做到了“书同文,车同轨”,无论应用的数据模型有多复杂,总是能溯源到公共数据层的基础表,这奠定了数据核对和认知的基础,最大程度的避免了“重复数据抽取和维护带来的成本浪费。曾经企业的数据抽取就有多份,报表一份,数据仓库一份,各种数据集市也有一份,无论是抽取压力、维护难度及数据一致性要求都很高。同时,统一的公共数据层将相关业务领域的数据做了很好的汇聚,消除企业内的数据孤岛,解决了数据互通的诉求。

5fc5eb43290a0_html_40509b8e1c3580ab.png 图 2.1 数据服务中台的基本范畴

2.1 规划概述

数据中台是整个数据系统的核心部分,其理念是让企业的整个业务都可以共享同一套数据的技术与资产,即数据源自各业务系统,通过整合打通及萃取融通,实现数据的再增值,同时在其基础之上通过产品和算法的能力,反哺业务,实现数据价值链路的闭环。即:数据来自于业务,反哺业务,并循环往复,蕴含更大能量,形成一个数据生态,从而衍生无限的可能性。

数据应用是利用来自数据中台的数据创造属于企业自身的数据价值。企业大数据应用如同智能中枢,内核采用大数据技术,可以对整个平台进行全局实时分析,发现业务中的Bug,自动为各部门给出反馈意见,随着数据的积累和技术更新,最终将进化成为能够配合业务系统自动治理的人工智能大脑。

数据中台建设包括如下部分:

(1)数据中台服务架构设计

聚焦于“分析场景如何实现”,进行数据共享服务全局架构设计。工作内容如下:

系统分析盘点企业数据资产建设和管理现状,包括企业各类数据源、数据生产、数据使用、数据质量、数据共享等方面的问题。

规划企业数据共享服务架构蓝图,对基础数据中心、全域数据中心、萃取数据中心三大中心及统一数据服务层、数据资产管理体系进行设计。

依据企业数据共享服务架构蓝图,基于可用性、前瞻性、可扩展性及投资合理性原则,对基础设施架构进行设计及辅助产品选型。

(2)数仓规划

基于企业现有数据、业务流程、数据应用需求现状,制定数据共享服务的业务板块、数据域、业务空间全局规划。

(3)数据规范定义

对企业的相关数据进行规范定义,如定义数据维度、业务过程、原子指标、业务限定等。

(4)数据建模研发

基于数仓规划、数据的规范定义、业务流程以及现有数据,设计逻辑数据模型(设计维度、事实、汇总等逻辑表模型结构),基于逻辑模型设计和数据引入策略(清洗、结构化、更新时效等),进行模型实体物化设计。

(5)数据引入

进行多源数据整合,根据不同渠道数据特征及分析需求,设计不同的数据同步策略及清洗结构化规则,设计数据合并及内容逻辑的更新策略,实现数据周期自动化同步。

(6)集成调度

基于模型设计,进行数据研发,实施数据生产链路,配置周期性作业,通过规范定义、智能数据建模、通用数据研发、数据连接萃取、集成调度等实施建设垂直数据中心、公共数据中心、萃取数据中心,形成初步的数据资产管理体系。

2.2 规划的蓝图设计

数据中台在内部强调的是共享,对于社会企业和成员单位的是开放,面向大数据产业和行业应用强调的是融合。而随着数据体量增大、共享成为常态化、数据安全隐私愈发受重视等内外部环境变化,数据治理和统一运营管控是大数据平台建设的重要组成部分。围绕五大核心能力,数据中台由存储与处理、数据技术平台、数据治理(数据资产管理)、数据运营和数据应用五部分内容组成,总体架构如下:

5fc5eb43290a0_html_71e022baff819ff2.png

图 2.2 (规划蓝图设计)

5fc5eb43290a0_html_f5997aa3970ad0cb.png

图 2.3 (规划总体架构)

数据中台涵盖数据从采集、加工、处理、分析以及服务的全流程能力,其具备多元化的采集手段,依托统一的元数据、主数据以及数据资产管理形成了一套数据治理体系,并以此为基础构建了包括各类基础信息、数据仓库以及大数据资源三大类数据资源,最终通过API服务的形式形成统一的数据服务平台。

企业共享数据中台一共分三个层面,第一层,是垂直数据中心,汇聚大量的数据存储起来;第二层,打造公共数据中心,在公共数据中心中,这些数据会按业务划分形成用户域、交易域、库存域等,形成的数据按类型划分和整理,使用统一、标准化的管理;第三层,是萃取数据中心,数据在搬运之上需要萃取加工,核心是深度挖掘、标签萃取。整个过程中,工作需要靠两个系统,第一个系统是一套完善的智能数据套件。第二个系统是将所有内部数据做资产管理。

2.2.1 垂直数据中心

企业垂直数据中心按照不同的业务分类组织成为承担不同业务功能的纵向数据存储中心,垂直数据中心将采集企业的业务数据和管理数据,包括下设各业务子系统的结构化和非结构化数据。

2.2.2 公共数据中心

企业公共数据中心的主题(Subject)是在较高层次上将信息系统中的数据进行综合、归类和分析利用的一个抽象概念,每一个主题基本对应一个宏观的分析领域。面向主题的数据组织方式,就是在较高层次上对分析对象数据的一个完整并且一致的描述,能刻画各个分析对象所涉及的的各项数据,以及数据之间的联系。

2.2.3 萃取数据中心

以业务/自然对象和萃取标签为架构构架强企业数据中台萃取数据中心,形成业务/自然对象的数据体系,如用户的、施工的、财务的等,数据体系涵盖多维度数据指标、基础数据标签、统计数据标签以及算法数据标签。

2.3 中台功能设计

在企业发展初期,数据研发模式一般紧贴业务的发展而演变的,数据体系也是基于业务单元垂直建立,不同的垂直化业务,带来不同的烟囱式的数据体系。随着企业的发展,一方面数据规模在快速膨胀,垂直业务单元也越来越多,另一方面基于大数据的业务所需要的数据不仅仅基于某个垂直单元,使用全域的多样化数据(Variety)才能具备核心竞争力。跨垂直单元的数据建设接踵而至,混乱的数据调用和拷贝,重复建设带来的资源浪费,数据指标定义不同而带来的歧义、数据使用门槛越来越高。这些问题日益凸显,成为企业发展迫在眉睫必须要解决的问题。那么一站式的数据开发和数据资产管理平台也是未来企业必备的一个平台能力,这个平台需要覆盖离线计算、实时计算应用,满足开发人员从数据采集、数据分析、数据挖掘、数据质量、数据地图、数据模型、数据API的各层次应用,可以解放开发人员的生产力,提高企业数据开发效率,极大的缩短数据价值的萃取过程。

2.3.1 数据计算与存储引擎

整体平台基础层会采用比较流行分布式平台Hadoop,离线计算采用Spark计算引擎,实时计算采用Flink引擎,系统完全基于分布式架构,具备横向扩展能力,当数据量增大,计算性能面临瓶颈时,只需要增加节点,即能解决计算性能问题,满足多种场景的数据需求,支持SQL、Java、Python等接口,满足多种开发方式。存储系统架构基于HDFS分布式文件存储系统,支持大数据量分布式计算能力,计算集群可基于异构硬件资源构建,可以基于性能需求随时可做弹性扩展。

2.3.2 数据离线开发与运维

(1) 数据集成

数据集成模块是在各个存储单元之间执行数据交换的管道,它需要支持MySQL、Oracle、GBase、HBase、Redis、FTP、Carbondata等常见的20多种数据库集成交换,数据集成支持分布式架构,支持同步阀值控制等。

(2)数据开发

数据开发是完成数据清洗、统计或数据挖掘的计算逻辑的一站式过程,它需要具备广泛的任务类型支持,如:SparkSQL、工作流、HiveSQL、MR、Python、深度学习、机器学习、Shell、ImpalaSQL、虚节点等任务类型,强大的调度引擎和友好的团队协作式开发平台。调度周期方面,支持各类任务按照,支持天、周、月、小时、分钟多种调度周期配置。记录每次版本的变更历史,便于不同版本代码/参数比较。

(3) 运维中心

绝大多数的离线任务都是周期运行的,任务中的代码错误、节点运行异常等问题都会导致任务失败,需要运维中心来监控每个任务的运行情况,记录每个任务的运行日志,协助开发人员排查各种异常问题,运维中心支持批量任务的重跑、冻结、补数据等操作。支持多种方式的告警,可以对接邮件、钉钉、短信等方式。

(4) 项目管理

项目包含的内容内包含用户、计算任务、数据表、任务实例、数据源连接等信息,支持各开发小组进行不同的任务开发。不同项目内的数据是相互隔离的,用户必须在审批授权的前提下才可以跨项目访问数据,保证数据安全性。

2.3.3 数据实时开发与运维

(1) 数据集成

需要支持实时数据源的采集,且实时采集需要集成到开发模块里面,页面配置数据源、表和部分过滤条件即可。可以支持MySQL Binlog、Oracle OGG、Beats等不同类型的数据源。实时采集模块,除了将其他存储系统的数据实时的传输至Kafka,也需要支持将数据放在HDFS、Hive存储中,用于后续的流计算处理。

(2) 数据开发

提供SQL交互接口。支持用户自定义函数(UDF)以及实时计算扩展语法等支持则更好,满足SQL易用性特点。基于WEB的SQL的实时任务代码编辑。通过SQL完成关联比对(包括流数据与维度数据,流数据与流数据),支持维度数据的不同缓存策略,例如全缓存、不缓存、部分缓存。平台需要支持可视化配置源表、结果表、维度表,且可以将实时计算结果写出到MySQL、ElasticSearch、HBase、Kafka、Redis等数据库。

(3) 运维中心

实时采集任务在运行时,系统也可对输入、输出的数据量进行实时监控并告警。支持实时任务的运行状态监控,列出任务实例执行中的不同状态;同时支持对任务进行告警规则配置,可设置任务失败、任务停止等触发条件; 支持短信、邮件等告警方式,支持告警接收人的配置。

2.3.4 数据应用层

平台数据准备完成后,需要通过合适的应用提供给用户,让数据最大化地发挥价值。企业的相关数据或主题分析将直接取结果数据进行可视化、BI或数据应用展示。未来企业的数据目录、数据服务等应用都将借着大数据主体平台的数据资源和分析计算能力来发挥更多的业务价值。本次项目的相关数据应用开发技术选型将采用市场主流的技术路径。依据最后呈现的需求,对于固定的分析内容将采用成熟的BI报表软件来做,可以做成PC端和移动端。对于特色的一些智能数据应用将采用定制化开发的形式来展现,如仓库选址,企业画像等等。



一个企业的数据要能够充分发挥价值,很重要的一个前提条件就是这个企业的数据结构和数据资产目录是对整个企业开放的。所有人都能够通过这个资产目录了解公司有哪些类别的数据、包含什么属性、源数据由谁管理。但数据本身可以不开放,因为数据是有隐私信息和安全级别的。同时,面向短时间尺度的动态需求响应,可结合5G技术,采集海量多元化数据提升全息感知、广泛连接、开放共享能力,实现行业与信息的互联互通,“网聚人的力量”,最终实现共建、共治、共享。

参考文献:

[1]张旭,戴丽,闫赛华.数据中台架构企业数据化最佳实践 ISBN 978-7-121-38636-7.


作者简介:陈立(1981-3-5--),男,汉,浙江省湖州市,高级工程师,大学本科。主要研究方向 :企业信息化, 数据库技术及其应用,软件工程。