对 DataOps 的一些理解

最近看了一些关于 DataOps 的书和文章,对自己的理解做个总结。

DataOps 要解决什么问题?

两个价值点,第一是提高数据生产到价值产出全链路的效率,第二是用数据来持续优化整个数据链路的可用性和价值

DataOps 是什么?

下面是 Gartner 对 DataOps 的定义

DataOps is a collaborative data management practice focused on improving the communication, integration and automation of data flows between data managers and data consumers across an organization.

这里包含三份信息:

  1. DataOps 是包括人,流程和技术的一组体系和实践,用来管理代码,工具,基础架构和数据本身,
  2. 它针对的是数据生产者和数据消费者间的整个数据流(价值链路),
  3. 它持续优化链路上参与方的协作,集成和自动化能力。

接下来的描述,指出了 DataOps 理念的的三个支柱:

The goal of DataOps is to deliver value faster by creating predictable delivery and change management of data, data models and related artifacts.

敏捷,

DataOps uses technology to automate the design, deployment and management of data delivery with appropriate levels of governance,

自动化,

and it uses metadata to improve the usability and value of data in a dynamic environment.

和持续优化。

基于这些支柱,DataOps 构建和持续优化两个工作流。一个是 “The Value Pipeline”,覆盖数据接入,ETL、建模、可视化/报表整个流程,我认为可以抽象成“建好数据”。第二是 “The Innovation Pipeline”,流程包括从想法、到研发、再到生产验证,我认为可以抽象为“用好数据”。

DataOps 对“建好数据”流程进行全链路提效,以及通过数据反向优化进一步提高效率和质量。为“用好数据”流程提供高效的开发和试验工具,以及多环境支持(Sandbox或预发、测试环境),高效试验不影响线上。

如何来落地 DataOps?

从人、流程和技术的三方面来看。

DataOps 的客户是谁?

是整个数据团队,包括了产品经理,数据研发,工程开发,测试,运维,数据科学,数据分析师等人员。

数据生产者到数据消费者的流程包括哪些环节?

1)开发阶段,目标是持续集成;2)部署阶段,目标是持续部署;3)编排阶段,是解决工作流自动化和调度问题;4)测试阶段,建立监控和告警机制,目标是提升数据的质量。

涉及到的数据技术有哪些?

1)数据采集:采集和整合异构数据;2)数据存储:基于计算基础设施之上的数仓或数据湖;3)数据生产:数据开发、优化、测试等技术;4)数据管理:元数据管理和数据治理技术;5)数据分析:数据报表,可视化,数据科学工具等技术。

基于以上技术,在敏捷、自动化和持续优化的加持下,要建立四个能力:数据工程(处理和加工数据的能力),数据集成(多样、异构数据的整合能力),数据安全(端到端的数据安全和隐私管控能力)和数据质量(数据的一致性、准确性、及时性等数据质量保障能力)。

摘抄 The DataOps Cookbook 书中的一些内容:

The Seven Steps to Implement DataOps

  1. Add data and logical tests
  2. Use a version control system
  3. Branch and merge
  4. Use multiple environments
  5. Reuse and containerize
  6. Parameter your processing
  7. Working without fear or heroism

总结起来,就是将数据纳入测试,提供分支和多环境能力,自动化执行,且便于复用。

The DataOps Manifesto

  1. Continuously satisfy your customer
  2. Value working analytics
  3. Embrace change
  4. It’s a team sport
  5. Daily interactions
  6. Self-organize
  7. Reduce heroism
  8. Reflect
  9. Analytics is code
  10. Orchestrate
  11. Make it reproducible
  12. Disposable environments
  13. Simplicity
  14. Analytics is manufacturing
  15. Quality is paramount
  16. Monitor quality and performance
  17. Reuse
  18. Improve cycle times

书中关于作为CDO如何让数据的价值被CEO认可和信任,这其实就是数据人的目标:

CAOs and CDOs: Earn the Trust of your CEO

  1. Earn trust by delivering a journey of value
  2. Earn trust by delivering quickly
  3. Earn trust by delivering accurately

获得信任,首先要做到数据是有价值的,并且做到快速交付,高质量交付。