什么是DataOps
DataOps(数据运维)是一门新兴学科,它将DevOps团队与数据工程师和数据科学家角色召集在一起,以提供工具,流程和组织结构来支持以数据为中心的企业。
DataOps(数据操作)是一种敏捷的,面向过程的方法,用于开发和交付分析。它汇集了DevOps团队,数据工程师和数据科学家,以提供工具,流程和组织结构来支持以数据为中心的企业。Forrester的副总裁兼首席分析师Michele Goetz将DataOps定义为“具有从基础设施到体验的所有技术层,实现解决方案,开发数据产品以及激活数据以实现商业价值的能力。”
DataOps目标
根据[Dataversity的]说法,[DataOps]的目标是基于数据和数据分析来简化应用程序的设计,开发和维护。它试图改善数据管理和产品创建的方式,并将这些改进与业务目标进行协调。
DataOps与DevOps
DevOps是一种软件开发方法,通过将开发团队和运营团队合并为一个负责产品或服务的单一部门,将持续交付交付到系统开发生命周期。DataOps通过增加数据专家(数据分析师,数据开发人员,数据工程师和/或数据科学家)建立在该概念的基础上,以专注于数据流的协作开发和整个组织中数据的连续使用。
“您已经有了开发运维的现代趋势,但是越来越多的人正在将某种数据科学能力注入到开发和系统中,因此,您需要在运维团队中拥有一个具有数据心态的人。” HPE MapR的CTO Ted Dunning和《[机器学习物流:现实世界中的模型管理》的]合著者。
DataOps原则
像DevOps一样,DataOps借鉴了敏捷方法。该方法重视以持续满足客户需求为主要目标的分析见解的交付。
根据《[DataOps宣言》],DataOps团队重视有效的分析,并通过其提供的见解来衡量数据分析的性能。DataOps团队还接受变化,并寻求不断了解不断变化的客户需求。他们围绕目标进行自我组织,并寻求减少“英雄主义”,而采用可持续且可扩展的团队和流程。
DataOps团队还寻求从头到尾协调数据,工具,代码和环境,以提供可重复的结果。DataOps团队倾向于将分析管道视为类似于精益生产线,并定期反映客户,团队成员和运营统计信息所提供的反馈。
适用于DataOps的地方
当今的企业越来越多地将机器学习注入到众多产品和服务中,DataOps是一种旨在满足机器学习的端到端需求的方法。
“例如,这种样式使数据科学家更容易获得软件工程的支持,以提供在部署过程中将模型移交给运营时所需的东西,” Dunning和合著者,HPE首席技术专家艾伦·弗里德曼(Ellen Friedman)写道。 。
他们补充说:“ DataOps方法不仅限于机器学习。” “这种组织风格对于任何面向数据的工作都是有用的,从而使利用全球数据结构所带来的好处变得更加容易。”
他们还指出,DataOps非常适合微服务架构。
实践中的DataOps
根据Dunning和Friedman的说法,为了充分利用DataOps,企业必须发展其数据管理策略,以大规模处理数据并响应发生的现实事件。
他们写道:“传统上孤立的角色可能过于僵化和缓慢,无法很好地适应正在进行数字化转型的大数据组织。” “这就是DataOps风格可以提供帮助的地方。”
由于DataOps建立在DevOps之上,因此跨职能团队跨越诸如运营,软件工程,体系结构和计划,产品管理,数据分析,数据开发和数据工程之类的“技能行会”是必不可少的,因此应在以下位置管理DataOps团队:确保开发人员,运营专业人员和数据专家之间加强协作和沟通的方式。
据Dunning称,数据科学家也可能是DataOps团队的重要成员。他说:“我认为,在这里要做的最重要的事情就是不要坚持传统的象牙塔组织,在该组织中数据科学家与开发团队分开居住。” “您可以采取的最重要的步骤实际上是将数据科学家纳入DevOps团队。当他们住在同一房间,吃相同的饭菜,听到相同的抱怨时,他们自然会结盟。”
但是Dunning还指出,数据科学家可能不需要永久地嵌入到DataOps团队中。
Dunning说:“通常,团队中有一段时间是一位数据科学家。” “他们的能力和敏感性开始减弱。然后,团队中的某个人担当了数据工程师和某种低预算数据科学家的角色。然后,嵌入团队中的实际数据科学家就随波逐流了。这是一个不稳定的情况。”
如何建立一个DataOps团队
弗里德曼说,大多数基于DevOps的企业已经掌握了DataOps团队的核心。一旦他们确定了需要数据密集型开发的项目,他们只需要向团队添加经过数据培训的人员即可。该人甚至可能是数据工程师,而不是专职数据科学家。
通常,团队将由技能重叠的个人组成,或者根据专业知识,个人可能在DataOps团队中担任多个角色。
Dunning和Friedman在他们的书中写道:“在大型项目中,一个特定的DataOps角色可能会由多个人担任,但是有些人会承担多个角色也很常见。” “操作和软件工程技能可能会重叠;具有软件工程经验的团队成员也可能具有数据工程师的资格。数据科学家通常具有数据工程技能。但是,很少看到数据科学与操作之间存在重叠。”
根据Forrester的Goetz所说,DataOps团队的一些专业知识关键领域包括:
- 资料库
- 一体化
- 数据进行业务流程编排
- 数据策略部署
- 数据和模型整合
- 数据安全和隐私控制
无论组成如何,DataOps团队都必须有一个共同的目标:他们支持的服务的数据驱动需求。
Dunning说:“有了工程团队,优秀的工程师,您需要做的是设定好目标。” “一旦有一个共同的目标,即解决问题,那么团队通常会为解决该问题而组织起来。当不同的人看到问题的不同方面时,困难就来了。运维人员将担心可靠性,您会得到一个问题。在一定时间内给出答案。数据科学人员倾向于关注答案的准确性。您已经有些分歧了,但是如果他们试图解决相同的问题并且他们愿意妥协关于如何解决这个问题,我认为这是一个非常容易建立的社会结构。”
DataOps角色
根据Goetz的说法,DataOps团队成员包括:
- 数据专家,他们支持数据格局和开发最佳实践
- 数据工程师,为BI,分析和业务应用程序提供临时和系统支持
- 首席数据工程师,他们是从事产品和面向客户的交付物的开发人员
DataOps薪水
根据[PayScale的]数据,以下是与DataOps相关的一些最受欢迎的职位以及每个职位的平均工资 :
- Analytics(分析)经理: 127K
- 助理数据科学家:6万至10.2万美元
- 商业智能分析师: 95K
- 数据分析师: 85K
- 数据架构师: 155K
- 数据工程师: 132K
- 数据科学家: 134K
- 数据科学家,IT:6万美元至13.4万美元
网友评论