Thor Olavsrud
著者: Thor Olavsrud
Senior Writer

DataOpsとはコラボレーション指向、部門の枠を超えたアナリティクス

特集
13 Jun 20232分
データ管理

DataOps(データ オペレーション)は、DevOpsチームとデータエンジニア、データサイエンティストを結集し、データ主導型のエンタープライズを実現するツール、プロセス、スキルを提供します。

DataOpsとは

DataOps(データ オペレーション)は、アナリティクスを開発・提供するためのアジャイルでプロセス指向の方法論です。DevOpsチームをデータエンジニアとデータサイエンティストで結集し、データ重視のエンタープライズをサポートするツール、プロセス、組織構造を提供します。調査会社のGartnerはさらに、この方法論を「組織全体のデータ管理者とデータ利用者の間におけるコミュニケーション、統合、データフローの自動化の改善」に焦点を当てたものだと説明しています。

DataOpsの目標

Dataversityによると、DataOpsの目標は、データとデータアナリティクスに基づくアプリケーションの設計、開発、保守を合理化することです。データの管理方法や製品の作成方法を改善し、その改善とビジネス目標との調整を図ります。Gartnerによると、DataOpsは「データ、データモデル、および関連する成果物の予測可能なデリバリーと変更管理を作成することで、より迅速に価値を提供すること」も目的としています。

DataOpsとDevOps

DevOpsとは、開発チームと運用チームを組み合わせ、製品やサービスを担当する単一ユニットにすることで、システム開発のライフサイクルに継続的デリバリーをもたらすソフトウェア開発の方法論です。DataOpsはこのコンセプトを基に、データアナリスト、データ開発者、データエンジニア、およびデータサイエンティストといったデータ専門家を加え、データフローの共同開発と組織全体でのデータの継続的な利用に注力します。

DataOpsの観測性と自動化ソフトウェアを専門とするDataKitchenは、DataOpsは単に「データのためのDevOps」ではないと主張します。どちらの手法もソフトウェアの開発(DataOpsの場合はアナリティクスを活用したソフトウェア)を加速させることを目的としていますが、DataOpsは同時にデータ運用を管理する必要があります。

DataOpsの原則

DevOpsと同様に、DataOpsもアジャイル手法からヒントを得ています。このアプローチは、お客様を満足させることを第一の目的として、分析によるインサイトを継続的に提供することを重要視しています。

DataOps Manifestoによると、DataOpsチームは機能するアナリティクスを重視し、データアナリティクスによってもたらされる分析情報でそのパフォーマンスを測定します。DataOpsチームはまた、変化を受け入れ、進化するお客様のニーズを常に把握することを目指しています。目標に向かって自己組織化し、持続可能でスケーラブルなチームとプロセスを優先して「英雄主義」を減らすよう努めています。

また、DataOpsチームは、データ、ツール、コード、および環境を最初から最後までオーケストレーションし、再現性のある結果の提供も目指しています。このようなチームは、分析パイプラインをリーン生産ラインと同様に捉え、顧客、チームメンバー、運用統計から得られるフィードバックを定期的に反映させる傾向があります。

DataOpsの適用範囲

現在の企業は、膨大な数の製品やサービスに機械学習を取り入れることが増えており、DataOpsは機械学習のエンドツーエンドのニーズをサポートすることを目的としたアプローチです。

Ted Dunning氏とEllen Friedman氏は、「たとえばこのスタイルでは、データサイエンティストがデプロイ中にモデルを運用に引き渡す際に、必要なものを提供するためにソフトウェアエンジニアリングのサポートを受けることがより実現可能になる著書『Machine Learning Logistics』に記しています。

著者はまた、「DataOpsのアプローチは、機械学習に限定されるものではない」と付け加えています。「このスタイルの組織は、あらゆるデータ指向の仕事に有効で、グローバルなデータファブリックの構築によって得られるメリットを容易に活用できます。」

また、DataOpsはマイクロサービスアーキテクチャとの相性が良いとも述べています。

DataOpsの実践

DataOpsを最大限に活用するために、企業はデータ管理戦略を進化してスケールの大きなデータを扱い、現実の出来事が起こったときにそれに対応する必要があると、Dunning氏とFriedman氏は述べています。

DataOpsはDevOps上に構築されているため、運用、ソフトウェアエンジニアリング、アーキテクチャとプランニング、プロダクト マネジメント、データ分析、データ開発、データ エンジニアリングといった「スキルギルド」を包含するクロスファンクショナルチームが不可欠となり、開発者、運用担当、データエキスパートの間のコラボレーションとコミュニケーションの増加を確実にする方法でDataOpsチームを管理する必要があります。

Dunning氏によると、データサイエンティストもDataOpsチームの主要メンバーとして含まれる場合があります。「ここで最も重要なことは、データサイエンティストが開発チームから孤立している、象牙の塔のような従来の組織に固執しないことだと思います」と同氏は述べています。「最も重要なステップは、DevOpsチームに実際にデータサイエンティストを加えることです。同じ部屋で仕事をし、同じ食事をし、同じ苦情を聞けば、自然と足並みが揃うものです」

しかしDunning氏は、データサイエンティストがDataOpsチームに常に在籍する必要はないかもしれないとも指摘しています。

「一般的に、データサイエンティストは一時的にチームに配属されます」とDunning氏は説明します。「データサイエンティストの能力と感性が周りに影響を与え始め、チームの誰かがデータエンジニアとして、低予算のデータサイエンティストのような役割を担うようになるのです。その後、実際にチームに所属していたデータ サイエンティストはチームを去ります。チームの状況は流動的です。」

DataOpsチームの作り方

DevOpsベースの企業の多くは、すでにDataOpsチームの中枢を手中に収めています。データ集約型の開発が必要なプロジェクトを識別したら、データトレーニングを受けた人をチームに加えるだけです。多くの場合、それははデータサイエンティストではなく、データエンジニアです。DataKitchenは、データ組織内の共同作業を可能にするプロセスの構築と実装を専門とするDataOpsエンジニアを探し求めることを組織に提案しています。開発から本番に至るまで、ハードウェア、ソフトウェア、データ、その他のリソースをオンデマンドで利用できるようにするためのオーケストレーションを設計する人たちです。

多くのチームは、重複するスキルセットを持つメンバーで構成されており、また、個人が専門性に応じてDataOpsチームで複数の役割を担うこともあります。

Forresterの副社長兼主席アナリストであるMichele Goetz氏によると、DataOpsチームの主な専門分野には以下が含まれています。

  • データベース
  • 統合
  • データからプロセスへのオーケストレーション
  • データポリシーのデプロイ
  • データとモデルの統合
  • データセキュリティとプライバシー管理

どのような構成であっても、DataOpsチームは、サポートするサービスのデータ駆動型のニーズという共通の目標を共有するしなければなりません。

DataOpsの職務

DataOpsのチームは以下のメンバーで構成されているとGoetz氏は述べています。

  • データスペシャリスト:データのランドスケープと開発のベストプラクティスをサポートする
  • データエンジニア:BI、アナリティクス、ビジネス アプリケーションの暫定的なシステムサポートを提供する
  • プリンシパルデータエンジニア:製品および顧客向けの成果物に携わる開発者

DataOpsの給与

PayScaleのデータに基づき、DataOpsに関連する最も人気のある職種と各職種の平均給与を以下にご紹介します。

DataOpsツール

以下は、DataOpsの代表的なツールです。

  • Census:信頼できる唯一の情報源(データウェアハウスなど)から、CRMや広告プラットフォームなどの最先端のシステムにデータを同期するプロセスであるリバースETLに特化した運用分析プラットフォーム
  • Databricks Lakehouse Platform:データウェアハウスとAIのユースケースを統合するデータ管理プラットフォーム
  • Datafold:データ品質の問題を検出し、修正するためのデータ品質プラットフォーム
  • DataKitchen:マルチツール、マルチ環境データパイプラインをエンドツーエンドでオーケストレーションするデータ観測・自動化プラットフォーム
  • Dbt:データパイプラインを作成するためのデータ変換ツール
  • Tengu:データとパイプラインを管理するDataOpsオーケストレーション プラットフォーム