从2020年开始,在数据领域中,有一个比较流行的术语:The Modern Data Stack(现代数据堆栈),简单理解就是汇集了处理海量数据的最佳工具集。这包括在最好的工具上建立数据基础设施,如用于数据仓库的Snowflake,用于数据湖的Databricks,以及用于数据提取的Fivetran。
本文将通过问答的方式给大家分享下Modern Metadata for the Modern Data Stack(基于现代元数据管理构建现代数据堆栈)。
Q:现代数据栈有什么优缺点呢?
A:现代数据栈速度超快,在几秒钟内只需要很少的开销很容易扩大规模。缺点就是在为数据带来治理、信任和背景方面,它仍然是个新手。这就是元数据的用武之地。
Q:在今天的现代数据栈中,现代元数据应该是什么样子的?基本的数据目录如何能发展成为数据民主化和治理的强大工具?为什么元数据管理需要一个范式的转变来跟上今天的需求?为什么现代数据栈比以往更需要 "现代 "元数据管理?
A:几年前,数据主要是由企业的IT团队消费。然而,今天的数据团队比以往任何时候都更加多样化--数据工程师、分析师、分析工程师、数据科学家、产品经理、商业分析师、数据科学家等等,这些人中都有自己喜欢的、同样多样化的数据工具如从SQL、Looker、Jupyter到Python、Tableau、dbt和R,应有尽有。这种多样性既是一种力量,也是一种挣扎。每个人都有自己处理问题的方式、工具、技能组合、技术栈、工作方式等等。基本上,每个人都有独特的 "数据基因"。这就带来了一种结果就是协作中的混乱。如上篇介绍CDO关注的趋势中提到,我们经常遇到这些问题如 "这个字段代表什么意思?"和 "为什么看板上的指标数值又不对了?"等等,当他们需要使用数据时遇到这些问题时就会让原本能够快速敏捷的团队陷入了困境。虽然这些问题并不是什么新鲜事。但目前仍然没有好的解决方案。大多数数据目录只不过是Hadoop时代的创可贴解决方案,而不是与当今现代数据栈背后的创新和进步保持同步。
在聊现代元数据是什么样子之前,我们先来回顾下过去元数据管理的解决方案,就像数据一样,在过去的三十年里,我们对元数据的思考和处理方式也在稳步发展。它可以大致分为三个演变阶段:数据目录1.0、数据目录2.0和数据目录3.0。
一、数据目录1.0:IT团队的元数据管理
第一阶段的数据目录大概从20世纪90年代到21世纪初,当时主要以Informatica, Talend等产品解决方案为主
从技术角度讲,元数据自古以来就存在,例如,图书馆中每个书籍上都有描述性的标签。然而,元数据的现代概念可以追溯到20世纪末。在20世纪90年代,我们庆幸地把软盘放在一边,拥抱这个叫做互联网的新奇工具。很快,大数据和数据科学大行其道,各组织都在试图找出如何组织他们新收集的数据。
随着数据类型和格式以及数据本身的爆炸性增长,IT团队被要求负责创建一个 "数据清单"。像Informatica这样的公司很早就在元数据管理方面取得了领先地位,但是建立和保持他们的新数据目录对IT人员来说是一个持续的斗争。
在02年的时候数仓权威专家Ralph Kimball说过:数据仓库团队经常会花费大量的时间来讨论、担心和对元数据感到内疚。尽管每个人都知道元数据的重要性,但大多数开发人员对文档的开发和有序归档有一种天然的厌恶感,所以元数据经常会从项目计划中省略掉。
二、数据目录 2.0:由数据管理员提供支持的数据清单
第二阶段的数据目录大概从08年起一直发展到20年,这中间有Collibra、Alation等产品解决方案
随着数据逐渐成为主流,并超出了IT团队的范围,数据管理的概念也逐渐深入人心,这指的是一套专门的人员,他们负责一个组织的数据,主要负责处理元数据,维护治理实践,手动记录数据等等。
与此同时,元数据的概念也发生了变化。随着公司开始建立大规模的Hadoop实施,他们意识到一个简单的IT数据清单已经不够了。相反,新的数据目录需要将数据清单与新的业务背景相融合。就像这个时代的超级复杂的Hadoop系统一样,数据目录2.0也很难建立和维护。它们涉及到严格的数据治理委员会、正式的数据监管人、复杂的技术设置和漫长的实施周期。总而言之,这个过程可能需要长达18个月。
这个时代的工具基本上是建立在单片机架构上,并在内部部署。每个数据系统都有自己的安装,公司不能通过推送简单的云更新来推出软件变化。技术债务不断增加,元数据管理开始稳步落后于现代数据栈的其他部分。
虽然数据基础设施栈的其他部分在过去几年中不断发展,像Fivetran和Snowflake这样的工具可以让用户在30分钟内建立一个数据仓库,但数据目录却无法跟上。即使是尝试数据目录2.0时代的元数据工具,也需要大量的工程时间来设置,更不用说至少要和销售代表打5次电话才能得到演示。
由于缺乏可行的替代方案,现代数据栈的最早采用者和大多数大型科技公司都诉诸于建立自己的内部解决方案。一些明显的例子包括Airbnb的Dataportal、Facebook的Nemo、LinkedIn的DataHub、Lyft的Amundsen、Netflix的Metacat和Uber的Databook。
然而,并不是所有的公司都有工程资源来做这件事,而且建立几十个类似的元数据工具也不是特别有效。所以现在是时候有必要范式转变来建立一个现代的元数据解决方案了,一个和现代数据栈的其他部分一样快速、灵活和可扩展的解决方案。
三、数据目录3.0:为不同的数据用户提供协作的工作空间
今天我们正处于元数据管理的一个拐点--从缓慢的、企业内部的数据目录2.0转变为一个新时代的开始,即数据目录3.0。就像从1.0到2.0的跳跃一样,这将是我们对元数据思考方式的根本转变。
数据目录3.0将建立在嵌入式协作的前提下,这是当今现代工作场所的关键。而且数据目录 3.0 的 4 个特点:
特点1:数据资产 > 表
数据目录2.0一代是建立在 "表 "是唯一需要管理的资产的前提下。但现在情况完全不同了,如今,BI仪表盘、代码片段、SQL查询、模型、功能和Jupyter笔记本都是数据资产。3.0时代的元数据管理将需要足够灵活,以便在一个地方智能地存储和链接所有这些不同类型的数据资产。
特点2:端到端的数据可见性,而不是零散的解决方案
数据目录2.0时代的工具在改善数据发现方面取得了重大进展。然而,他们并没有给组织提供一个关于他们数据的 "单一真理来源"。有关数据资产的信息通常分散在不同的地方--数据血缘工具、数据质量工具、数据准备工具等等。
特点3:专为元数据本身就是“大数据”的世界而构建
我们正在快速接近一个元数据本身就是大数据的世界,能够处理和理解元数据将帮助团队更好地理解和信任他们的数据。这就是为什么新的数据目录3.0应该不仅仅是一个元数据存储。它应该从根本上利用元数据作为一种数据形式,可以像所有其他类型的数据一样被搜索、分析和维护。
今天,云的基本弹性使之成为可能,这是前所未有的。例如,查询日志只是今天可用的元数据的一种。通过解析 Snowflake 中查询日志的 SQL 代码,它可以自动创建列级线,为每个数据资产分配一个流行分数,甚至推断每个资产的潜在所有者
特点4:嵌入式协作的时代到来
Airbnb在分享他们推动内部数据门户采用方面的经验时,说了一句很深刻的话:"设计数据工具的界面和用户体验不应该是事后的想法"。由于数据团队的基本多样性,数据工具需要被设计成与团队的日常工作流程无缝整合。这就是嵌入式协作的理念真正的活力所在。嵌入协作是指在你所在的地方开展工作,并以最少的摩擦。
如果你在得到一个链接时请求访问一个数据资产,就像使用在线文档 or办公系统一样,责任人会收到访问请求,并批准或拒绝它。或者,当你检查数据资产并需要报告一个问题时,你可以立即触发一个与工程团队的JIRA工作流程完美整合的支持请求,这种嵌入式协作可以统一这些因为浪费时间、造成挫折、导致数据团队工具疲劳的几十个微观工作流程,而使这些任务变得令人愉快!这就是嵌入式协作的好处
任何从事数据工作的人都知道,数据目录早就应该赶上现代数据栈的其他部分了。毕竟,如果没有使其可理解的资产--文档、查询、历史、词汇表等,数据是非常没有意义的。随着元数据本身成为大数据,我们正处于元数据管理的变革性飞跃的边缘。相信在未来几年,将有一个现代元数据管理产品的崛起,在现代数据栈中占据应有的地位。