DataOps系列丨DataOps的技术考量

imgRainful2019-12-17

“数据的资产负债表与现状”“DataOps理念与设计原则”直至“DataOps的组织架构与挑战”,我们对于DataOps的讨论已经进行了三周。

不难发现,在此期间,我们探讨的话题始终围绕在上层建筑层面(理念、组织架构),没有向下延伸到实践落地。鉴于此,本篇将在前三篇文章的基础上详谈DataOps落地所需考虑的技术点。

一、DataOps的技术考量

DAMA(数据管理协会)的数据治理体系包括的技术考量非常全面,涵盖了数据架构的方方面面,在此我们就不一一赘述。重点谈在DataOps的概念中,应该有什么样的提升。

Gartner2019年提出数据体系的最新趋势为“Augmented Data Management增强数据管理”,定义为:

“Augmented data management leverages ML capabilities and AI engines to make enterprise information management categories including data quality, metadata management, master data management, data integration as well as database management systems (DBMSs) self-configuring and self-tuning.”

这和DataOps的理念不谋而合,其内涵和目标都是尽量减少数据体系工作中手工的部分,利用AI算法来提高自动化,智能化,让企业将有限的资源投入到更有价值的工作中,尽可能快地满足业务用户的数据需求。在增强数据管理的体系下,值得着重强调以下几个模块:

· 极为灵活且快速的数据集成融合服务

· 动态元数据的管理

· 智能主数据管理

· 算法驱动的数据质量管理

· 快速构建API的数据服务(也被Gartner称为Data Hub)。

在技术考量的具体原则中,我们要遵循自助和智能原则。通过使用先进的技术和产品,反复思考数据部门给业务部门的工具是否能够让他们做到自助,即取数、用数的需求流程不需要数据部门排期。同时数据部门自己使用的工具和系统能否做到智能,即始终与业务发展变化保持一致。

之前讲到,随着企业拥有的数据源越来越多,业务部门也随之开始开放式的思考,什么样的数据能够辅助决策,创新业务。这时能够随时随心快速提取使用数据就变成一种刚需。

1.灵活且快速的数据集成融合服务

这就需要非常灵活的数据集成融合服务,它应当可以支持各种形式的数据源,包括但不限于各种数据库管理系统,例如MySQL、Oracle、SQLServer,PostgreSQL、TiDB、MongoDB等,以及大数据平台或分布式存储,例如HDFS、Hive、HBase、Greenplum、Clickhouse,还有在各类主流云上的RDS版本以及对象存储,例如AWS的MySQL RDS,S3和阿里云的OSS,Hybrid for PG等,另外还有各类应用系统API,类似于CRM、ERP、BOM、HR系统等。

同时,需要对所有数据源提供实时(低延迟)和定时(高延迟)两种采集模式,并可以自由组合这两种模式,通过批流一体的方式快速帮助业务用户满足快速取数的时效性要求。

在这一过程中,需要提供所见即所得的批量配置和Schema Mapping功能,因为数据量庞大,客户可能有几十数百的数据源,成千上万的数据库或者应用系统表需要被集成,如果不能自动化地配置和Mapping,工作量也会让人望而生畏。

另外,由于数据量经常会有周期性的变化,占用的资源如果总按峰值处理,会造成大量的成本浪费,因此自动的扩缩容能力是必备的。

2.动态元数据的管理

企业业务的飞速发展已经让元数据管理遭遇巨大的挑战,过去的业务静态属性较大,变化幅度小、频率低,并且没有承载集中式数据使用权限管理的功能,而这一点已经在过去十年发生了翻天覆地的变化。例如,如果一个企业有10000张业务表,如果没有自动化适配、智能化匹配的能力,元数据系统会难以帮助分析师、科学家理解数据。这时,如果没有一个系统按照数据合规委员会制定的规则,来实时更新、查询,并强制性地管控、审计数据使用,那么开放式的使用离落地仍旧会存在差距。

因此,符合DataOps理念的的元数据管理系统需要包括两个重要功能:

1)元数据管理可以动态地发现业务数据结构的变化并保持一致,可以将所有增加删除表,增加删除字段,以及其他对于数据结构的修改全部记录下来,并通知给所有关心这些变化的用户;

2)我们应当构建以动态元数据为核心的企业数据使用规范,即将合规原则、权限管控、审计要求和整个元数据目录紧密地结合,可以非常轻松的在元数据系统中制定、更新、维护企业的数据使用规范,时刻保持业务用户使用数据的合规和自由度。当业务用户希望查询、理解、使用数据时,可以有丰富的素材促进数据的创新。

3.智能主数据管理

在数据逐渐变复杂的过程中,界定数据标准的主数据也愈发有挑战。在企业收集各种数据时,由于数据来源的多样性和变化性,确定数据的主数据变得越发困难。如何确定在Web端和App端有查询行为和后续线下消费用户是同一人?如何在四个独立事业线的采购系统确定同一种零件的采购价格?这就要求企业的主数据系统引入根本性的改变,从非常确定性的唯一标示匹配,转到基于AI的多维度模糊匹配,在一个不确定性极高的世界中,寻找确定性闭环。

4.算法驱动的数据质量管理

此外,企业过去的数据质量管理,也存在两个主要挑战:

1)主要针对静态数据;

2)依赖于人工制定的规则(通常是一些业务代码和SQL检查),随着企业拥有的实时数据应用越来越多以及人工制定规则的局限性和滞后性,过去的数据质量方案价值每况愈下,企业在摸索新的行之有效的数据质量管理方式。

这时必须采用在线机器学习的思路,一是为了应对大量的实时数据,进行实时数据质量监测。二是从算法中自动产生比手工制定大一到两个数据量级的规则,并自适应的前置应用起来。这才可能让很多基于数据的业务(销售预测/推荐/反欺诈/采购降本等)随着变化持续产生价值、避免损失。

5.快速构建API的数据服务(也被Gartner称为Data Hub)

最后,业务部门意识到数据用来做BI分析只是很小的应用场景,如果能提供数据服务API给到其他业务部门或者是企业的客户,就可以创造新的业务和商业模式。不过一个一个地写API,很难快速满足需求,企业需要一种数据服务Data Hub。

主要目标是:

1)通过所见即所得的方式选择数据,并快速创建API给到用户,监控其使用情况;

2)构建一个数据服务Data Hub层,来解耦大数据平台所需要承载的压力。该需求非常简单明了,实现起来却非常复杂,因为Data Hub需要负责所有对外提供服务的API的生命周期管理,包括API创建、安全认证、权限管理、流量控制、质量监控,访问审计等服务层要求。但如果成功构建了这样一个Data Hub,对于业务部门快速使用数据进行业务和商业模式的创新,将会大有裨益

用数据驱动决策与创新!