DataOps 方法承诺帮助企业以更少的错误更快地构建数据解决方案。然而,从理论到实践需要仔细规划。本文将概述该策略的基本原则,并为您提供一个框架,以启动您自己的 DataOps 计划并改进您的数据开发实践。
DataOps简介
DataOps 不再是可选的。对于在分析领域展开竞争的公司来说,人工智能和其他大数据解决方案的普及已使其成为生存问题。
多年来,数据分析一直是一门手工艺。在大多数公司,训练有素的数据工程师、科学家和分析师会根据需要构建精品解决方案。不幸的是,这种模式不适合不断增长的数据需求。随着数据源和目标的增加以及用例变得更加复杂,分析的质量和速度下降。数据团队,即使是非常熟练的团队,也跟不上。
DataOps 代表了公司处理流水线开发和部署的方式发生了翻天覆地的变化。它借鉴了软件世界的 DevOps 和敏捷方法,设想了一种可持续的前进方式。与手工分析不同,DataOps 开创了一个工业化数据开发的世界。
DataOps 主要组成部分
与手工分析不同,DataOps 开创了一个工业化数据开发的世界
现代数据管道由众多工具组成,这些工具以越来越复杂的方式相互交互。尽管比过去的管道要复杂得多,但构成它的技术仍然属于过去的三大类工具之一。第一类包括用于连接和获取数据的工具;第二,数据建模工具;第三,查询和分析数据的工具。 DataOps 不会改变这一切。
相反,DataOps 专注于构建和自动化管道所需的基础设施。这是关于制造制造机器的机器。要开始,公司必须建立四个技术支柱——持续集成和交付 (CI/CD)、编排、测试和监控。这些功能不会取代管道组件;它们补充它们以支持整个系统。(见图1)
图 1. DataOps 支持的数据管道模型
- 持续集成/持续交付 (CI/CD)。软件工程在几年前就将瀑布式开发抛弃。数据世界也需要。 CI/CD 依赖于存储代码的中央存储库,通常是 Git。这允许团队以受控和版本化的方式分支和修改代码,而不会影响生产。测试后,团队可以通过将更改合并回生产环境来无缝部署新代码。该存储库还提供了用于存储工具和系统配置的位置。由于这种集中化,团队可以轻松地重新利用旧代码并开发新的管道,而无需重复工作。
- 编排。编排工具协调软件、代码和数据。它们连接到管道的每个部分,并将数据从一个阶段传送到下一个阶段。无需人工输入,他们就可以提供平台和环境、触发新工作以及将数据从一个工具传递到另一个工具。这使开发人员可以腾出时间来构建新的管道,并使一名工程师能够管理数百个生产中的管道。鉴于现代数据环境的复杂性,如果没有这个组件,DataOps 根本无法运行。
- 测试。数据团队在测试上花费的资源少得惊人。而DataOps 要求工程师将测试烘焙到数据管道的每个阶段。这些测试必须检查数据质量和管道功能。它们不仅在数据开发期间运行,而且在生产中运行。从长远来看,测试可以节省时间,即使它们需要更多的前期工作。经过全面测试的管道可以更一致地提供更好的数据,增加数据消费者的信任并减少工程师花费在解决问题上的时间。当管道确实中断时,它们更容易排除故障。
- 监测。 DataOps 的最后一个支柱涉及监控生产环境中管道的执行。监控工具可以深入了解处理代码和数据的服务器、CPU、内存和存储节点的底层基础架构。它们帮助工程师发现瓶颈和破损,并优化管道对共享资源的影响。与编排一样,监控需要能够查看整个复杂数据环境的专用工具。然而,通过提高效率而减少的开销通常会抵消这些工具的成本。在云中尤其如此,其中监控工具可以为资源使用提供更多衡算计量。
结论
尽管 DataOps 还有许多其他方面,但刚刚开始 DataOps 之旅的公司应该首先专注于这四个功能。一个很好的方法是使用像 Zaloni 这样的 DataOps 平台,它将多个 DataOps 功能集成到一个解决方案中。甚至在实施其余理念之前,组织就应该看到他们的投资回报。 CI/CD 将带来更快的开发时间,编排将使团队能够支持更多项目,测试和监控将提高解决方案的质量和资源效率。由于这些组件,DataOps 有望最终实现“更快、更好、更便宜”的承诺。