6ワークロード データエンジニアリング編 インフォマティカ
Snowflakeはデータ利活用を進める人々のプラットフォームとしてさまざまなワークロードを支えている。データを活用するにはまず意思決定やアイディアの源泉となるデータをいかにして使える状態に持ってくるかを考えねばなるまい。これを実現するためのワークロードをデータエンジニアリングと呼ぶ。
しかし種々様々な場所で生まれる多様な姿をしたデータを、必要な時に必要な人へ、情報漏洩を防ぎながらも、使い手の用途に合わせてタイムリーかつ継続的に提供していくことは困難を極める。データがなければデータ利活用はないという命題のためにデータエンジニアリングの領域では日々挑戦と技術の革新が続いている。
今回はSnowflakeのエリートテクノロジーパートナーであり、1993年の創業以来、あらゆる企業のデータエンジニアリングを支えてきたインフォマティカのエバンジェリストとして、データマネジメントのあり方について発信されている森本 卓也氏にデータエンジニアリングの基本を考え方も含めてたっぷりとご紹介いただこう。
解説者:インフォマティカ・ジャパン株式会社 ソリューションアーキテクト兼エバンジェリスト
森本 卓也氏
Twitter:@moritata9
「あのシステムに眠っているデータを使ってすぐ分析したい」「全社横断のビジネス変革へと直結するデータの利活用をしたい」と思うことはありませんか。
データエンジニアリングとは、データに関心のある人がビジネスの中でデータを気持ちよく取り扱えるようにするために、データを使いやすく整備する活動です。 その具体的な活動として、既存のデータパイプラインやデータ分析基盤を構築する活動をイメージする人も多いのではないでしょうか。
ただ残念ながら、このデータエンジニアリングを満足する形で実践できている企業は多くありません。多くの企業が何かしら取り組んでいる活動ではありますが、対象とする人、ビジネス、データの規模が大きくなればなるほど要件が複雑化し、全体の活動のゴールや解決策が見えにくくなるためです。
そこでこの記事では、データエンジニアリングに携わる全ての方が、データエンジニアリングの包括的な基礎知識を身に付け、今後取るべき施策をデザインできるようになることを目指します。そのために、「目指すべきデータエンジニアリングのイメージ」「抑えるべき3つの取り組みと10の活動」「実現すべきアーキテクチャ」の3点を解説します。
■ 1. データエンジニアリングとは
データを使いやすく整備するデータエンジニアリングの活動とはどのようなものなのか、もう少し噛み砕いてご紹介します。
1-1. データエンジニアリングとは、データ利活用の計画立案から分析の実施、継続的な運用に至るまで、データにまつわるあらゆる活動を簡単にすること
データを気持ちよく取り扱えるようになるためには、データ連携を支えるデータパイプラインの構築と自動化を推進するだけでは足りません。
地に足のついたデジタル戦略を計画立案するために社内のデータを可視化したり、全社横断で顧客分析するために各事業部でサイロ化している顧客データを整備したり、データ活用時のプライバシー対応を個人の責任ではなく仕組みとして遵守するためのプロセスを確立したりと、その活動は多岐に渡ります。
新規データプロジェクトを計画する過程で、データを探して、見つけ、理解する。データに不足や問題があれば集めて加工し改善する。そして期待する結果が得られるまで分析のトライ&エラーを繰り返し、最終的にそれを業務に組み込み、監視運用する。データエンジニアリングとは、そのようなデータに関わる全てのライフサイクルを一つ一つ簡単にしていく活動のことをいいます。
1-2. データエンジニアリングなしでは、高度なデータサイエンスの出番は少なく、ビジネス上のデータの影響度は著しく下がる
データエンジニアリングのない多くのデータ利活用プロジェクトの現場では、DX、データドリブンな経営、高度な数理解析、機械学習やディープラーニング、その華やかな言葉や技術イメージとは裏腹に、泥臭い作業に追われる時間がまだまだ多いです。
そこかしこのDBからデータをSQLで抜き、業務をヒアリングしながら変数間の相関を見て、時系列に集計結果を並べ、トレンドを確認し、集計結果をまとめて特定業務向けの報告資料を作成する。そこで求められるスキルは、データサイエンティストやアナリストというよりITエンジニアの一般的なものです。
この状況を打破し、高度な技術でデータの価値を高めていくためには、その再利用性を高め、泥臭い作業を根本から排除していくデータエンジニアリングのアプローチが必要不可欠です。
■ 2. データエンジニアリングで実現すべき3つの取り組みと10の活動要素
データエンジニアリングの包括的な活動を含む全体像を描いてみると下の図のようになります。 データを使いやすく整備するための3つの取り組みを実践し、それを構成する10の活動要素を一つ一つ便利にしていくことが重要です。
2-1. データのアジリティを高める:データを繋ぐ、貯める、整える、取り扱う
データのアジリティを高める取り組みは、企業内外に点在するあらゆるデータソース(オンプレミス、クラウドのシステム、アプリケーションやDB、IoTセンサー等)上のあらゆるデータ(構造化データ、半構造化データ、非構造化データ)をデータレイクへと繋げる。そしてデータ分析に最適化されたデータウェアハウスやデータマートへ貯めると同時に、関連性のあるデータを組み合わせて分析しやすいデータ形式へ整える。最終的にそれらのデータをBIやAI、機械学習などのデータサイエンスやアナリティクスを通して業務の中で取り扱う。このデータパイプラインの流れを構築することで実現します。
この取り組みは、取り扱うデータの規模に比例して、データ利活用におけるデータ準備の作業を大幅に効率化、高速化できる効果があります。例として、データソースによって異なるさまざまなデータアクセス方法を調査する、データを抽出する、テキスト形式で書かれたjsonやParquetなどの半構造化データなどを取り扱いやすい表形式の構造化データへ変換する、分析に特化したストレージであり高速な大量データ処理に適したデータウェアハウスへ格納する、といった多くの繰り返し作業を自動化することができます。その結果、データエンジニアなどのデータを整備する人やデータサイエンティストやアナリストは、彼らにしかできないビジネス価値へ直結する高度な作業に集中することができるようになります。
なお、狭義な意味でのデータエンジニアリングとは、このデータをビジネスへと繋げる、データパイプライン整備の取り組みを意味することが多いです。
2-2. データのサイロ化を解消する:データを綺麗にする、まとめる、紐づける
データのサイロ化を解消する取り組みは、一般的にはマスタデータ管理と呼ばれます。各事業部門の各システムで個別管理されていたバラバラの顧客リストなどに対し、クレンジングしてデータ品質を綺麗にする(電話番号ならば括弧書きやハイフン書き等の形式を統一する)。それから名寄せを行った上で重複データを排除して、一つのゴールデンマスターのみが格納された統合顧客マスタDBへとまとめる。そして、統合顧客マスタDBを中心に各事業部門のシステム内の購買データや問い合わせデータなど、あらゆる顧客接点に関わるデータを全て紐付けることで360°横串参照できるビューを実現する。それを業務へと組み込み、事業横断でのデータドリブンな業務変革を成し遂げるというものです。
なお、この取り組みの対象となるマスタデータは顧客マスタのデータだけではありません。商品、部品、サプライヤー、取引先、従業員など、複数システムを横断するあらゆるマスタデータが対象の候補であり、横串参照したいものが最終的にその対象となります。
この取り組みは、データ利活用によるビジネス上の影響度、価値を著しく高める効果があります。なぜならば、この活動によって初めて事業部やシステム横断でデータを横串に見ることが可能となり、企業全体でのデータ利活用が推進できるようになるためです。その実現効果は大きく、顧客体験や製品市場投入速度の向上による売上向上、サプライチェーンや在庫管理の運用効率化や生産性向上、高度な分析による機会/需要予測の向上や損失の削減、M&Aにおける会社機能の迅速な統合や相乗効果の促進など多岐に渡ります。
マスタデータ管理と聞くと、古い過去の技術領域のように感じる人もいるかもしれません。ただ、データ利活用によって大きな価値を得ている先進的な企業では、必ずといってよいほどこの取り組みを実践しています。特にDXという名のもとに全社的な業務変革、それを支えるデータエンジニアリングに取り組む場合、この取り組みが必要不可欠であると理解する必要があります。
2-3. データの透明性を確保する:データを可視化する、守る、統制する
データの透明性を確保する取り組みは、企業内のあらゆる人が欲しいデータをセルフサービスで簡単に発見し、ビジネス上の意味まで含めて理解するためにデータカタログを整備して可視化する。プライバシー規制の対象となる個人情報を識別し、その外部規制や社内ポリシー、プライバシーポリシー契約と利用目的に準じたデータアクセス制御やマスキングを施してデータを守る。そして、データ利活用とデータエンジニアリングのあらゆる活動を一過性のもので終わらせず、組織、役割、管理プロセスを整備して恒常的に統制するためのデータガバナンスを実現するというものです。
この取り組みは、データを取り扱う人が増えれば増えるほど、その必要性が高まります。もし一部の専門家のみで限定されたデータを取り扱う場合であれば、個別コミュニケーションのみでデータを把握できる上、誤ったデータ利活用による事故も発生しないかもしれません。しかし、全社をあげてデータを取り扱っていこうとした場合、自部門以外のデータがどこにあるのかを把握するのは難しく、誤ったデータ利活用をする人が出てくる可能性が出てきます。
近年こういった状況を改善する目的でこの一連の取り組みをスタートする企業が増えています。この取り組みの効果としては、適切なデータの発見に要するコストの削減、データ分析プロジェクトの立上げから完了までの期間短縮、業務ユーザーのデータ利活用促進が生み出すビジネスへの高い貢献、データにまつわる事故リスクの回避と影響軽減、恒常的な運用確立による管理効率化など、多くのことが期待できます。
なお、データの民主化、市民データサイエンティストの育成などを目指した場合も、この取り組みの高度化を実施することになります。
次ページ「データエンジニアリングに取り組む上での考慮点、実現すべきアーキテクチャ」>>>
※本記事はSnowflake、インフォマティカ・ジャパンから提供を受けております。