【案例篇】DataOps崛起:数据治理需要重建!

2023-11-08 09:50

本文主要是介绍【案例篇】DataOps崛起:数据治理需要重建!,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

福利:关注公众号,后台回复【风扇】,包邮免费领手持风扇!

来源 | AI前线

作者 | Ryan Gross

译者 | 王强

导读:机器学习时代,以往的数据治理模式已经摇摇欲坠。我们应该重建数据治理,将其发展为一套工程规范来实现数量级的效率提升。

企业明知道自己需要数据治理,但并没有为此付诸任何行动

如今高管们都对数据治理感兴趣,下面这些文章就是证据:

  1. 最近 Gartner 的一篇研究发现,组织认为糟糕的数据质量平均每年会带来 1500 万美元的损失。

  2. GDPR 的第一个罚款大单是法国数据管理局对谷歌的 5700 万美元罚金。

  3. Equifax 数据泄露已使公司损失了 14 亿美元(总额还在统计中),而且 泄漏的数据都没有被找到。

但相对应的是,绝大多数数据治理计划都没有付诸实施;Gartner 还将 84% 的公司归到数据治理成熟度较低的分类。尽管几乎所有组织都认识到自己需要数据治理,但许多公司甚至没有启动相应的计划,因为这一术语在管理领域有着很强的负面含义。

现有的数据治理“最佳实践”已千疮百孔

其实,这一领域缺乏进展的原因在于 我们一直在以错误的方式进行数据治理,结果方案一见光就死。Stan Christiaens 在他为福布斯撰写的文章中指出了这一事实,我同意他的观点,过去数据治理失败的主要原因是技术尚未做好准备,并且组织没法激励人们遵循一套流程来弥补技术的不足。但现代数据目录工具就是技术层面的终极答案(尽管它们是朝着正确方向迈出的一步)。

如果答案不是数据目录工具,那又是什么?

数据湖工具的一系列进展(特别是大规模版本化数据的能力)将引发一场变革,让我们可以重新构想数据管理的方式(例如通过文化、架构和流程来改进治理模式,降低风险和成本)。变革完成后,数据治理将更像 DevOps,其中数据管理员、数据科学家和数据工程师紧密合作,在整个数据分析生命周期中共同制定治理策略。早早拥抱这些变革的公司将获得巨大的竞争优势。

这个结论是怎样得出来的呢?我们先来回顾一下软件工程的历史。过去有两项核心技术创新引发了企业流程乃至文化的变革,将编程从一种爱好转变为影响世界的革命。接下来的创新主要是 DevOps 运动,它在云时代也为 IT 基础设施带来了类似的革新。最后,我们来看这些创新将如何在数据治理领域推动类似的流程和文化变革。

背景:源代码控制和编译是怎样塑造软件工程产业的

形成软件工程规范的核心创新包括:

  1. 将一组输入编译为可执行输出的能力

  2. 用于跟踪输入的版本控制系统

20 世纪 60 年代,在这些系统诞生之前的软件开发就是一种手艺,一名开发工匠必须独立建立整个工作体系。而这些创新使软件开发产业迎来了新的组织结构和流程,让编程成为一套工程规范。这并不是说编程艺术没那么重要,只不过它不是本文要谈的主题。

从手艺转向工程的第一步就是引入编译器,从而能够以更高级的语言来编写程序。这使程序变得更容易理解,还可以分解为多个文件,更容易由团队中的多名成员一同编写。此外,随着编译器愈加先进,编译器也可以通过中间代码来为原始代码添加许多自动优化。

接下来是为生成最终系统的代码所做的所有更改添加统一的版本管理系统,从而让编程艺术逐渐变得“可测量”(就像 Peter Drucker 的名言所说的那样:“无法测量的内容也没法管理“)。从那之后又有了很多渐进式创新,如自动化测试、代码质量的静态分析、重构、持续集成等等,这些创新又定义了许多新的指标。最重要的是,团队可以针对特定版本的代码提交更改并跟踪错误,并对他们所提供软件的特定层面 作出保证。显然,还有许多其他创新为软件开发带来了改进,但那些创新都在某种程度上依赖编译器和版本控制两大源头。

一切皆代码:将软件工程的核心创新应用到所有领域

近年来,这些核心创新正在不断应用于新的领域,这种运动得到了一个称号:一切皆代码。70 年代的软件开发者看到第一个版本的 SVN 的时候肯定满腹狐疑。类似的,一切皆代码运动波及的许多新领域也对此报以怀疑的态度,有些行业甚至声称他们的规范永远不会被简化为几行代码。结果只用了几年时间,那些规范就被完全简化成代码了,并且为“传统”的行为方式带来了一系列改进。

使用虚拟化和配置管理的“编译”层将代码转换为基础架构

这个运动扩张的第一个领域是基础设施管理。在这一案例中,代码指的是一组配置文件和脚本,用于指定跨环境的基础架构配置;编译在云平台内进行,通过云服务 API 读取并执行配置和脚本,从而创建并配置虚拟基础架构 。虽然基础设施即代码运动似乎在一夜之间就席卷了所有基础设施团队,但其实是先有了大量重大创新(虚拟机、软件定义网络、资源管理 API 等),才为“编译”这一步打好了基础。

一开始可能只有 VMWare 和 Chef 等公司的专有解决方案,之后当公有云服务商在他们的平台上免费提供相应的核心功能后,这种方案就得到了广泛普及。在变革之前基础架构团队很难重新创建环境,所以需要 管理 他们的环境以确保一致性和质量。于是团队需要一系列治理层级来在开发过程中控制各个检查点。如今,DevOps 团队会 设计 他们的环境,控件可以构建到“编译器”中。这使得团队部署变更的能力提高了几个数量级,从几个月或几周变为几小时或几分钟。

于是人们就能彻底从头考虑基础设施的改进思路了。团队开始开发从零开始创建系统的各个阶段,使编译、单元测试、分析、设置、部署、功能和负载测试成为一个完全自动化的过程(也就是持续交付)。此外,团队开始测试系统在部署前后是否安全可靠(DevSecOps)。每当一项新组件进入版本控制系统后,该组件的发展轨迹就可以被一系列指标测量了;这样自然就带来了持续改进的能力,因为我们现在可以对提供的环境的特定层面 作出保证 了。

切入重点:这样的故事也会发生在数据治理领域

这一运动将改造的下一个领域就是数据治理 / 数据管理。不好说对应的运动名称应该叫什么(DataOps、数据即代码和 DevDataOps 似乎都有点偏差),但它的影响可能比 DevOps/ 基础设施即代码运动更为深远。

将数据管道用作编译器

“通过机器学习技术,你的数据就能写成代码。”——AWS 机器学习部门主管 Kris Skrinak

机器学习技术的迅速发展为复杂软件的构建提供了一种新的途径(一般是分类或预测事物的软件,但随着时间的推移会扩张到更多领域)。这种将数据视为代码的新思路会是将数据治理转换为工程规范的关键的第一步。换句话说:

“数据管道就是将数据作为源代码的编译器。”

与软件或基础设施使用的编译器相比,这些“数据编译器”有三点不同,也更加复杂:

  1. 数据团队既有数据处理代码也有底层数据。但是如果数据就是源代码,那样数据团队都得编写自己的编译器来从数据中构建可执行的程序。

  2. 对于数据而言,我们一直通过元数据来手动定义数据结构,因为这有助于编写数据编译器的团队了解每个步骤的操作。但软件和基础设施编译器通常会通过输入形成结构。

我们不明白数据如何变成代码

  1. 我们还是不太明白数据是怎么变成代码的。所以要让 数据科学家 做实验来弄清楚编译器的逻辑,然后 数据工程师 来构建优化器。

现有的数据管理技术平台(Collibra、Waterline、Tamr 等)就是为了实现这一工作流程而构建的,并且它们做得非常好。但它们支持的工作流程仍然需要一系列审查会议来为数据治理手动制定规范,这样就很难出现像 DevOps 和基础设施即代码变革那样的一系列进化了。

缺少的桥梁:数据版本控制

数据版本控制。来源:DVC 项目(https://dvc.org/)

由于数据是“在现实世界中”生成的,而不是由数据团队生成的,因此数据团队专注于控制描述它们的元数据。这就是数据治理(试图管理你无法直接控制的东西)和数据工程(实际上是设计数据编译器而非数据本身)之间的分界线所在。现在数据治理团队正在尝试在很多点上应用手动控制来控制数据的一致性和质量。如果对数据引入版本跟踪功能,数据治理和数据工程团队就能共同 设计 数据、针对各个数据版本提交错误报告、对数据编译器实施质量控制检查等等。这样数据团队就能对从数据中生成的系统组件 作出保证;一旦有了这种保证,历史证明将随之而来的就是数据驱动系统的可靠性和效率飞速提升。

数据版本控制技术已经来到了临界点

像 Palantir Foundry 这样的平台已经开始像开发者处理代码版本一样对待数据管理流程了。在这些平台中,数据集可以通过版本化的代码进行版本化、分支和一系列操作,从而创建新的数据集。这就为数据驱动测试打下了基础,其中测试数据本身的方法与对修改数据的代码做单元测试的方法基本是一样的。当数据以这种方式流过系统时系统会自动跟踪数据的谱系,每个数据管道在各个阶段产生的数据产品也会被这样跟踪。

这些转换步骤都可以被视为编译步骤,其将输入的数据转换为中间代码,最后由机器学习算法将最后一步的中间代码(数据团队通常称之为特征工程数据集)转换为可执行形式以进行预测工作。如果有人手里有 1000 万到 4000 万美元想购买这样一套流程,那么可以考虑一下 Foundry,他们做出来的这套流程令人印象非常深刻。

DataBricks Delta Lake 开源项目实现了数据湖的数据版本控制

其他人手里可能没那么多钱可花,还好现在也有开源的替代品。数据版本控制项目(https://dvc.org/)是一个专为数据科学家用户打造的选择。针对大数据负载,DataBricks 已经向数据湖的完整开源版本控制系统迈出了第一步,并发布了他们的开源 Delta Lake 项目。 这些项目刚诞生不久,因此还没有加入分支、标记、谱系跟踪、错误归档等功能。

下一步就是重建数据治理

版本控制和编译数据的技术诞生后,数据团队开始思考他们的流程该如何利用这些新技术。那些能够积极利用这种能力来作出保证的人们可能会为他们的组织创造巨大的竞争优势。第一步将是取消基于检查点的治理流程,变为让数据治理、数据科学和数据工程团队紧密合作,通过在数据管道中编译成可执行文件来实现数据的持续治理。接下来是将分别由数据与单纯软件编译的组件和基础设施集成为同一个单元;虽然我还没看到实现它的技术出现。随着时间推移,其它创新也将陆续出现,从而改造治理文化,解决许多现有的关键问题,同时加快机器学习技术普及实用的步伐。我知道这听起来像是吹牛,但数据治理真的要迎来激动人心的时代了。

以数据为驱动,云原生DataOps数据中台解决方案

能读到这里,你可能已经对数据治理感兴趣了,所以请在评论区写下你的看法。如果你恰好在寻找企业数据治理以及更多数据驱动的方法,那么现在可以来看看智领云科技这家公司。

武汉智领云科技有限公司成立于2016年8月,专注于云计算、大数据领域前沿技术的研发。公司创始团队成员来自于推特(Twitter)、苹果(Apple)和艺电(EA)等硅谷知名企业,是硅谷最早一批从事云计算和大数据研究与实践的技术专家,拥有十多年的云计算、大数据系统的系统架构和系统开发经验。

公司为企业级客户提供以云原生DataOps为底座的大数据平台数据中台/大数据平台数据中台系统解决方案;帮助企业搭建数据和AI中台实现云原生DataOps,轻松打造业务数据能力闭环,掌握全面、及时、更多维度的业务现状,提升数据驱动应用的迭代和发布速度;实现系统资产(人/资源/数据/应用) 在同一系统中的统一管理,建立数字化运营体系,并最终完成数据驱动的数字化转型。

公司研发的BDOS(大数据操作系统)是业界第一个使用云计算和微服务技术将大数据底层技术架构进行标准化和产品化的整体技术解决方案。BDOS采用云原生Mesos技术作为底层数据中心管理系统,提供BDOS应用云平台和大数据平台两个子系统,为用户提供一个端到端的可直接用于生产环境的的大数据操作系统平台,大大降低了用户在基于云计算技术的基础上开发大数据应用的技术门槛。

以数据为驱动,BDOS为企业提供一站式的云原生DataOps数据中台解决方案,赋能企业用户的数字化运营建设。企业用户借助BDOS提供的数据资产管理系统、数据服务及模型服务管理系统、可视化算法平台等系统可以高效自助地构建企业数据中台,构建企业数字化运营体系,加速实现企业数字化转型。

查看英文原文:

https://towardsdatascience.com/the-rise-of-dataops-from-the-ashes-of-data-governance-da3e0c3ac2c4

- FIN -

  文末抽奖  

扫码关注公众号

后台回复关键字【风扇】

邀请10位好友领取奖品

更多精彩推

  • 一文读懂大数据实时计算

  • Hudi 实践 | 使用 Apache Hudi 构建下一代数据湖 | 文末福利

  • 【工具篇】41 款实用工具,数据获取、清洗、建模、可视化都有了

  • 从Hadoop到云原生,谈如何消除程序员35岁危机

  • 我们为什么需要云原生?看完这一篇就够了

????更多智领云科技详细内容,点击“阅读原文

这篇关于【案例篇】DataOps崛起:数据治理需要重建!的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/369082

相关文章

大模型研发全揭秘:客服工单数据标注的完整攻略

在人工智能(AI)领域,数据标注是模型训练过程中至关重要的一步。无论你是新手还是有经验的从业者,掌握数据标注的技术细节和常见问题的解决方案都能为你的AI项目增添不少价值。在电信运营商的客服系统中,工单数据是客户问题和解决方案的重要记录。通过对这些工单数据进行有效标注,不仅能够帮助提升客服自动化系统的智能化水平,还能优化客户服务流程,提高客户满意度。本文将详细介绍如何在电信运营商客服工单的背景下进行

基于MySQL Binlog的Elasticsearch数据同步实践

一、为什么要做 随着马蜂窝的逐渐发展,我们的业务数据越来越多,单纯使用 MySQL 已经不能满足我们的数据查询需求,例如对于商品、订单等数据的多维度检索。 使用 Elasticsearch 存储业务数据可以很好的解决我们业务中的搜索需求。而数据进行异构存储后,随之而来的就是数据同步的问题。 二、现有方法及问题 对于数据同步,我们目前的解决方案是建立数据中间表。把需要检索的业务数据,统一放到一张M

关于数据埋点,你需要了解这些基本知识

产品汪每天都在和数据打交道,你知道数据来自哪里吗? 移动app端内的用户行为数据大多来自埋点,了解一些埋点知识,能和数据分析师、技术侃大山,参与到前期的数据采集,更重要是让最终的埋点数据能为我所用,否则可怜巴巴等上几个月是常有的事。   埋点类型 根据埋点方式,可以区分为: 手动埋点半自动埋点全自动埋点 秉承“任何事物都有两面性”的道理:自动程度高的,能解决通用统计,便于统一化管理,但个性化定

Hadoop企业开发案例调优场景

需求 (1)需求:从1G数据中,统计每个单词出现次数。服务器3台,每台配置4G内存,4核CPU,4线程。 (2)需求分析: 1G / 128m = 8个MapTask;1个ReduceTask;1个mrAppMaster 平均每个节点运行10个 / 3台 ≈ 3个任务(4    3    3) HDFS参数调优 (1)修改:hadoop-env.sh export HDFS_NAMENOD

使用SecondaryNameNode恢复NameNode的数据

1)需求: NameNode进程挂了并且存储的数据也丢失了,如何恢复NameNode 此种方式恢复的数据可能存在小部分数据的丢失。 2)故障模拟 (1)kill -9 NameNode进程 [lytfly@hadoop102 current]$ kill -9 19886 (2)删除NameNode存储的数据(/opt/module/hadoop-3.1.4/data/tmp/dfs/na

异构存储(冷热数据分离)

异构存储主要解决不同的数据,存储在不同类型的硬盘中,达到最佳性能的问题。 异构存储Shell操作 (1)查看当前有哪些存储策略可以用 [lytfly@hadoop102 hadoop-3.1.4]$ hdfs storagepolicies -listPolicies (2)为指定路径(数据存储目录)设置指定的存储策略 hdfs storagepolicies -setStoragePo

Hadoop集群数据均衡之磁盘间数据均衡

生产环境,由于硬盘空间不足,往往需要增加一块硬盘。刚加载的硬盘没有数据时,可以执行磁盘数据均衡命令。(Hadoop3.x新特性) plan后面带的节点的名字必须是已经存在的,并且是需要均衡的节点。 如果节点不存在,会报如下错误: 如果节点只有一个硬盘的话,不会创建均衡计划: (1)生成均衡计划 hdfs diskbalancer -plan hadoop102 (2)执行均衡计划 hd

性能分析之MySQL索引实战案例

文章目录 一、前言二、准备三、MySQL索引优化四、MySQL 索引知识回顾五、总结 一、前言 在上一讲性能工具之 JProfiler 简单登录案例分析实战中已经发现SQL没有建立索引问题,本文将一起从代码层去分析为什么没有建立索引? 开源ERP项目地址:https://gitee.com/jishenghua/JSH_ERP 二、准备 打开IDEA找到登录请求资源路径位置

深入探索协同过滤:从原理到推荐模块案例

文章目录 前言一、协同过滤1. 基于用户的协同过滤(UserCF)2. 基于物品的协同过滤(ItemCF)3. 相似度计算方法 二、相似度计算方法1. 欧氏距离2. 皮尔逊相关系数3. 杰卡德相似系数4. 余弦相似度 三、推荐模块案例1.基于文章的协同过滤推荐功能2.基于用户的协同过滤推荐功能 前言     在信息过载的时代,推荐系统成为连接用户与内容的桥梁。本文聚焦于

【Prometheus】PromQL向量匹配实现不同标签的向量数据进行运算

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,阿里云开发者社区专家博主,CSDN全栈领域优质创作者,掘金优秀博主,51CTO博客专家等。 🏆《博客》:Python全栈,前后端开发,小程序开发,人工智能,js逆向,App逆向,网络系统安全,数据分析,Django,fastapi