データ分析を⽀える技術
データ分析基盤 再⼊⾨
2021/10/15
データアナリティクス事業本部 ⽯川 覚
2
⾃⼰紹介
• ⽒名
- ⽯川 覚 (いしかわ さとる)
• 所属
- データアナリティクス事業本部 インテグレーション部
- コンサルティングチーム
- 札幌オフィス勤務
• 略歴
- メーカー系SIer、ITベンチャー企業、現在に⾄る
• 担当業務
- データ分析基盤の設計・開発、コンサルティング
• 好きなサービス
- Amazon Redshift/Athena、Snowflake、Google BigQuery
2021 APN AWS Top Engineers 選出
3
アジェンダ
• データ分析基盤⼊⾨
• データ分析基盤の構成要素
• データ分析基盤のデータ処理
• データ分析基盤のデータ管理
• データ分析基盤の今後
4
データ分析基盤⼊⾨
5
データ分析基盤とは
データ分析基盤とは、蓄積した⼤量のデータを⾼速に分析して、
ビジネスに活⽤できるためのプラットフォーム
6
データ分析基盤とは
データ分析基盤とは、蓄積した⼤量のデータを⾼速に分析して、
ビジネスに活⽤できるためのプラットフォーム
• 様々な部⾨に分散したデータを集め
• そのデータを分析しやすく変換
• 分析の⽬的ごとにデータを作成・蓄積
• データを安全に⼀元管理しデータ提供する
※DX(DigitalTransforma/on)における「データ利活⽤基盤」とも呼ばれる
7
データ分析基盤導⼊の⽬的
組織内の新たな洞察を導き、データ間の関係を発⾒して、新た
な洞察や分析結果など、データに基づいた意思決定に活かす
• 組織内に分散した様々なデータを⼀元的に集
めて分析する
• 新たな洞察を導き、分析を⾏うことでデータ
同⼠の相関関係や因果関係を発⾒する
• 業務や組織を変化させたりすることで、企業
の成⻑を促し、競争⼒を強化する
8
分析クエリの特性
データ分析基盤のデータの特性は、オンライン分析処理
(OLAP:OnLine Analytics Processing)
• オンライン分析処理(OLAP)
• ⼤量のレコード中の少数の列だけを読み出しが多い
• 要約統計 (レコード数、合計、平均など)を計算した結果
をユーザーに返したり、テーブルに保存する
• オンライントランザクション処理(OLTP)とは異なる
9
データ分析基盤の構成要素
10
DWH(Data Ware House)
DWHはデータウェアハウスの略(データの倉庫)
膨⼤な量のデータを分析しやすく検索できるように蓄積したデ
ータベース
• 構造化データ・半構造化データの処理に適している
• データはクレンジング、結合、変換が実施され、信頼できるデータ
“Single Source of Truth”を蓄積する
• 意思決定⽀援やBIツールにおいて利⽤する
• 例.Amazon Redshift、Google BigQuery、Snowflake
11
Data Lake
Data Lakeは、あらゆる規模の構造化データおよび⾮構造化
データを 管理、探索、共有、分析できる ⼀元管理された安全
なリポジトリです
• Data Lakeは、データをそのままの形で蓄積する
• Apache Hiveメタストアで構造化データとメタデータの関係を⼀元
管理すると、クエリエンジンによってデータをクエリできる
• Data Lakeは、クエリエンジンや機械学習から利⽤されます
• 機械学習の特徴量エンジニアリングにおいて、そのままの形で蓄積されたデ
ータの⽅が向いている場合があります
12
Data Lakeの課題と解決策
Data Lakeは、DWHのような 分析⼒やトランザクションの
サポート、データ品質の保証がない
13
Data Lakeの課題と解決策
Data Lakeは、DWHのような 分析⼒やトランザクションの
サポート、データ品質の保証がない
• この課題を解決すべく進化した製品やサービスも登場︕
• Apache Hudi
• Databricks Delta Lake
• AWS Lake Formation / Governed tables(Preview)
AWS Lake Formation
(Governed tables)
14
DWHとData Lake の進化 “Lake House”
DWHとData Lakeの両⽅の特⻑を持ち合わせた新しいアーキ
テクチャを Lake House Architecture と呼ぶ
• DWHは、 Data Lakeのようなストレージとコンピューティングを
分離した柔軟かつコスト効率の良いアーキテクチャを採⽤し、デー
タレイク上のデータやOLTPデータベースのライブデータに対して直
接クエリを実⾏してデータ統合できるように進化している
• Data Lakeは、 DWHのようなトランザクションのサポート、デー
タ品質の保証(スキーマバリデーション)、DWHのようにSQLによ
る柔軟なUPSERTが可能
• 実際の Lake House Architecture はベンダーごとに機能が異なる
15
データ分析基盤が担う範囲
• 狭義のデータ分析基盤は、DWHと
ETLツールとBIツールでしたが、現在
は、Data Lakeを含むのが⼀般的
• 分析データの⽤途は、すでにBIツール
から機械学習に拡⼤している
• 欲しいデータの所在や仕様の管理には
データカタログで⼀元管理する
• ソースデータからデータマートまでの
データのトレースにはデータリネージ
が⽤いられる
• 今後、DXの流れで外部データの収集
やシステム連携まで広範囲になりうる
Data Catalog /
Data Lineage
BI Tools &
ML/DL
ETL Tools &
Job Scheduler
Data Lake
DWH &
Data Mart
16
データ分析基盤のデータ処理
17
データ分析基盤のデータ処理
BIシステム利用者
アナリスト
POSデータ
基幹システム
ステージング層 DWH層 データマート層
eコマース売上
Redshift
S3
データ分析基盤
データレイク層
18
データ分析基盤のデータ処理
BIシステム利用者
アナリスト
POSデータ
基幹システム
ステージング層 DWH層 データマート層
eコマース売上
Redshift
S3
データ分析基盤
データレイク層
部⾨のDBからデータをエクスポートする
19
データ分析基盤のデータ処理
BIシステム利用者
アナリスト
POSデータ
基幹システム
ステージング層 DWH層 データマート層
eコマース売上
Redshift
S3
データ分析基盤
データレイク層
エクスポートしたファイルをS3にアップロード
20
データ分析基盤のデータ処理
BIシステム利用者
アナリスト
POSデータ
基幹システム
ステージング層 DWH層 データマート層
eコマース売上
Redshift
S3
データ分析基盤
データレイク層
S3のデータをDWHのステージング層にロードする
21
データ分析基盤のデータ処理
BIシステム利用者
アナリスト
POSデータ
基幹システム
ステージング層 DWH層 データマート層
eコマース売上
Redshift
S3
データ分析基盤
データレイク層
ステージング層のデータを統合化してDWH層インポートする
22
データ分析基盤のデータ処理
BIシステム利用者
アナリスト
POSデータ
基幹システム
ステージング層 DWH層 データマート層
eコマース売上
Redshift
S3
データ分析基盤
データレイク層
DWH層のデータを⽤いてデータマートを作成する
23
データ分析基盤のデータ処理
BIシステム利用者
アナリスト
POSデータ
基幹システム
ステージング層 DWH層 データマート層
eコマース売上
Redshift
S3
データ分析基盤
データレイク層
データマートを⽤いて分析する
24
データ分析基盤のデータ処理
BIシステム利用者
アナリスト
POSデータ
基幹システム
ステージング層 DWH層 データマート層
eコマース売上
Redshift
S3
データ分析基盤
データレイク層
25
データの変換のパターン(ETL/ELT/ETLT)
ETL(Extract, Transform and Load)
• データを抽出(Extract)して、データをツールなどで変換
(Transform)した後、データストアにロード(Load)します
• 分析対象のデータの形式がデータストアにロード(Load)できない場合
は、事前に変換します
ELT(Extract, Load and Transform)
• ロード可能な形式でデータを抽出(Extract)して、データストアにロー
ド(Load)した後、SQLなどでデータを変換(Transform)します
ETLT(Extract, Transform, Load and Transform)
• ETLした後に、SQLなどでデータを変換(Transform)します
26
データの変換のパターン(ETL/ELT/ETLT)
ETL(Extract, Transform and Load)
• データを抽出(Extract)して、データをツールなどで変換
(Transform)した後、データストアにロード(Load)します
• 分析対象のデータの形式がデータストアにロード(Load)できない場合
は、事前に変換します
ELT(Extract, Load and Transform)
• ロード可能な形式でデータを抽出(Extract)して、データストアにロー
ド(Load)した後、SQLなどでデータを変換(Transform)します
ETLT(Extract, Transform, Load and Transform)
• ETLした後に、SQLなどでデータを変換(Transform)します
DWHのコンピューティングがスケールアウトに対応しました。
今後は、多くのエンジニアが馴染みがあるSQLでデータを変換する
ELTやETLTでデータ変換することをおすすめします。
27
データ分析基盤のデータ管理
28
データ分析基盤のデータ管理
データガバナンス
• データ(収集、保管、利⽤、保護、アーカイブ、削除)を取り巻く
⼀連の組織が、⽬標を達成する上で情報を効果的かつ効率的に使⽤
するための、プロセス、役割、ポリシー、標準、評価指標を定義す
ること
• ビジネスや組織全体で使⽤されるデータの品質とセキュリティを保
証するプロセスと責任を確⽴する
• データガバナンスに従い、データスチュワードが⽅針策定、データ
利活⽤に関わる各組織(データ提供者、データ利⽤者、データ分析
基盤の運⽤・保守担当)に各種運営や会議体の推進を主導する
29
データ分析基盤のデータ管理
個⼈情報やパーソナルデータの取り扱い
• GDPRを前提にセンシティブなデータの取扱
を⾒直すことを推奨
• 個⼈情報やパーソナルデータを格納すると、
GDPRの要件に対応できるような対処、体制
が必要となる
• 分析⽤途では、匿名化、ハッシュ化したデー
タで分析要件は満たせないか検討する
• 例.ハッシュ化したキー情報と分析結果のみを連
携するなど
30
データ分析基盤のデータ管理
Data Catalog
• データソースとなるDBのメタデータを収集して、検索によって欲し
いデータを探索するツール
• 各システムごとのデータの場所、意味、データ型(メタデータ)を
把握する
• データの保存場所を知り、個⼈情報などのデータガバナンスが捗る
Data Lineage
• データの⽣成経路を明らかにして、データパイプラインの管理やガ
バナンスを強化する
• データの⽣成クエリ(SQL)を修正する際の影響範囲を特定できる
※ Data Catalogは、データソースという「点」の情報を収集し、Data Lineageは、
「点」と「点」の関係の情報を収集し、保存する
31
データ分析基盤の今後
32
データ分析基盤の今後
データシェアリングは、データのコピーや移動することなく、
データを共有する、クラウドの強みを活かした機能
• データ分析基盤の物理的な統合から論理的な統合へ
• 物理的にサイロ化しても論理的にデータ統合できれば問題なし
• 部⾨ごとにデータ分析基盤を運⽤して、他の部⾨のデータ分析基
盤との間で、互いに共有できる
• ⼤規模データ分析基盤のHub-Spoke構成
• ハブになる環境と、データを利⽤する環境を分離する
• データを利⽤する環境ごとのインスタンスのサイジングや利⽤費
を分けることができる
• ハブになるデータ分析基盤のSLAに依存しない運⽤が可能
33
データ分析基盤の今後
xOps(DataOps、MLOps等)
• DevとOpsのように対⽴しやすい関係にあった両部⾨が協調すること
により、開発をスムーズにする取り組みを指さすDevOpsのカルチ
ャーとプラクティスをデータ分析・機械学習分野に応⽤したのが、
DataOpsやMLOpsです。
• システムの継続的インテグレーション(CI)、継続的デリバリー
(CD)、継続的トレーニング(CT)の実装と⾃動化を含む場合もあ
ります。
• DataOps(データオプス)とは 「組織全体におけるデータ管理から
データ利⽤者までのデータの流れについてコミュニケーション、統
合および⾃動化の改善を⽬的とした協調的なデータ管理⼿法」です。
34
まとめ
35
まとめ
• データ分析基盤とは、蓄積した⼤量のデータを⾼速に分析
して、ビジネスに活⽤するためのプラットフォームです。
• 組織内の新たな洞察を導き、データ間の関係を発⾒して、
新たな洞察や分析結果など、データに基づいた意思決定に
活かすことが⽬的です。
• データ分析のデータの特性は、基幹のDBと異なるため、デ
ータ分析基盤にデータを集め、分析する必要がある
36
まとめ
• データの利活⽤が進み、データガバナンスの重要性やData
Catalog/Data Lineageの期待が⾼くなっている
• 個⼈情報やパーソナルデータを取り扱う場合は、GDPRの要
件を鑑みて検討が必要
• データ分析基盤のアーキテクチャは、DWHやData Lake か
ら、Lake Houseが主流になることが予想される
• データシェアリングは、データのコピーや移動することな
く、データを共有によってサイロ化の軽減が期待できる
37
データ分析基盤とは
業務知識を持つ事業会社のみなさま様が
データ分析に専念できる環境、
それこそが「データ分析基盤」です︕
38
データアナリティクス事業本部
コンサルティングチーム
データ分析の⺠主化、データ分析・機械学習の内製化⽀援する仲間を募集してい
ます。AWS・GoogleCloudエンジニアとして⼊社した後、ソリューションアー
キテクトやコンサルタントへのキャリアアップも歓迎します。
データ分析を支える技術 データ分析基盤再入門

データ分析を支える技術 データ分析基盤再入門