ITPub博客

首页 > 数据库 > 数据库开发技术 > 数据治理的大方向是Database Mesh?先把数据之间的血缘关系搞明白,咱再吹行吗?

数据治理的大方向是Database Mesh?先把数据之间的血缘关系搞明白,咱再吹行吗?

原创 数据库开发技术 作者:头哥侃码 时间:2018-04-19 07:15:00 0 删除 编辑

题图: from Zoommy

随着服务化进程的加速,越来越多的服务化横向拆分、数据库垂直拆分,如何行之有效的管理,成为了架构师(或技术经理)为之头痛的头等大事。

早在2017年,我曾写过一篇 #把越来越多的服务治理好才是当务之急,服务微不微可以慢慢来# 的文章,使用略带吐槽的口吻,将我们在服务治理上的问题、挑战及解决手段一一的罗列。而在今年,一篇 #Service Mesh是大方向,那Database Mesh呢?# 的文章在圈内引起了热议,文中提到了技术治理的另一种视角 —— 数据治理。

在我看来,想将杂乱无章的数据治理的仅仅有条,无论从成本收益,还是从技术投入来说,都比服务治理显得更麻烦、更复杂,但随着服务治理工作的深入,这却又是一项不得不翻越的障碍。

#在启动数据治理之前,先把数据之间的血缘关系搞明白# ,五年前在大智慧时期的顺口溜,最近在数据治理的工作中,给我带来了一些启示,今天通过一篇短文的方式向大家进行下分享。

- 01. 什么是数据血缘关系?有什么用? -

任何的数据,从产生、加工、融合、流转,到最终消亡,数据之间自然会形成一种关系。好比人类社会中的人际关系,类似的一种关系来表达数据之间的这种关系,称之为数据的血缘关系。

图1. 结构化数据血缘关系的层次表达

与人类社会中的血缘关系不同,数据的血缘关系还包含了一些特有的特征:

  • 归属性:特定的数据归属特定的组织(或个人),也就是谁是你爹,你是谁的儿子。

  • 多源性:同一个数据可以有多个来源,一个数据可以是多个数据经过加工而生成的,也就是你可能有一个爸,还有一个妈。

  • 可追溯性:数据的血缘关系,体现了数据的生命周期,也就是你从出生到老死的路线图。

相对之下,结构化数据血缘关系的层次结构比较简单,对于非结构化数据,如以文件服务器存储的数据来说,血缘关系的层次结构会略有不同。

图2. 非结构化数据血缘关系的层次表达

不同层级数据的血缘关系,体现着不同的含义。所有者层次,体现了数据的提供方、需求方及来龙去脉。

数据血缘关系的作用,也可以理解为提供数据流转的各项信息,作为数据价值的评估、管理依据。

- 02. 这对数据治理又有什么帮助? -

对于数据的血缘关系,可视化是成败的关键。想象一下,如果数据血缘之间的关系都无法用可视化呈现,那治理数据还有什么意义呢?

图3. 当时的数据血缘关系可视化设想

当时的规划,是希望通过可视化,将规则、流向分布显示在图形上的不同位置,从而起到如下几个方面的作用:

  • 追踪数据溯源:当数据发生异常,帮助追踪到异常发生的原因,平时也能帮助我们追踪数据的来源,追踪数据处理过程。

  • 评估数据价值:要对数据价值进行评估,就需要有依据,数据血缘关系,可以从#数据受众、数据更新量级、数据更新# 频次等方面给数据价值的评估提供依据。

  • 数据质量评估:数据的血缘关系图上,可以方便的看到数据清洗的标准清单,这个清单反映了对数据质量的要求。

- 最后补充下 -

也许有人说:

数据血缘分析的理念是大数据(BI、ETL)领域的,扯到服务上来干啥,不懂还在那瞎BB……

解释下,这里所说的 “数据之间的血缘关系” ,理解为一种 数据产生的链路关系 可能更为恰当,这也正是五年前在大智慧的业务场景下,我们急需解决的。至于那些 元数据管理、数据维度分析、数据转换 等大数据(BI、ETL)的关键词,并不在当时的痛点范畴内。

#不管白猫还是黑猫,能抓老鼠的就是好猫#,是我坚信的执行原则,这也是从一次又一次的实践过程中学习到的。这篇短文有感而发,用启示到回顾的视角向大家分享,至于技术架构的环节,我将在后期的文章中补齐,希望大家喜欢。

- End -


原文作者:头哥侃码;如有侵权,请联系管理员删除。

请登录后发表评论 登录
全部评论

注册时间:2017-05-29

  • 博文量
    303
  • 访问量
    118896