Cloud Onr
Cloud OnAir
Cloud OnAir
ケーススタディから学ぶ
GCP で行うデータ エンジニアリング
2019 年 6 月 6 日放送
Agenda
Cloud OnAir
1
3
2
4
データエンジニアリングとは?
ケーススタディ
GCP で行うデータエンジニアリング
まとめ
Cloud OnAir
Cloud OnAir
データエンジニアリングとは?
Cloud OnAir
データエンジニアリングとは?
データ解析の現実
課題
データ
収集
実装
・
運用
意思決定
課題を解決するため、データを収集、変換、可視化してデー
タに基づいた意思決定をすることです
現実
非構造化データの 1% 未満しか
解析されていない*
構造化データの 50% 未満しか
意思決定に使われない *
* Harvard Business Review magazine; May-June 2017
Cloud OnAir
データ解析の現実
データ解析の現実
課題
データ
収集
実装
・
運用
意思決定
多くの企業は データ収集で留まり 、
運用、意思決定までに至らない
キャズムが存在する
Cloud OnAir
なぜキャズムが発生するのか?
● データは散在する:オンプレミス DB、ファイルサーバー、パブリッククラウド、
etc
● 様々なテクノロジーを適切に組み合わせてデータエンジニアリングを
行うのは複雑:Hadoop, Spark, SQL, Hive, ML, BI, Oracle, Teradata, etc
● スケーラビリティ:規模が大きくなったら設計変更が必要
● データをどう活用すれば良いのか分からない。
データサイエンティスト、機械学習専門家がいない
Cloud OnAir
包括的なデータ分析と機械学習機能を備えたサーバーレスなプ
ラットフォーム
規模を問わず
データ収集
ストリーミング
データパイプライン
高度なデータ分析
データウェアハウスと
データレイク
Apache
Beam
Cloud Pub/Sub Cloud
Dataflow
Cloud
Dataproc
BigQuery Cloud
Storage
Data Transfer
Service
Cloud Composer
(オーケストレーション)
Cloud IoT
Core
Cloud Dataprep
Cloud AI
Services
Data Portal
Tensorflow Sheets
Storage Transfer
Service
Data Catalog Beta, Coming Soon
(データ検出ガバナンス)
Cloud Data Fusion Beta
Cloud OnAir
パートナーソリューション
データ取り込み
データ統合
管理
データ分析
可視化
Stitch FUNNEL TREASURE DATA BLEND Dbvisit EXAPIE Fluentd
Fivetran Infoworks SKYVIA RIVERY Striim Switchboard Software
Informatica SAP Data Services IronSource MATILLON xplenty SnapLogic
Talend Pentaho Alooma Segment StreamSetsSoftware AG
Reltio DATAGUISE UNIFI
Waterline Data Protegrity
TRIFACTA Tamr Ideata ClearStory iTrend
Atscale Kyvos insights CoolaData Lytics Anodot Indicative
Tableau iCharts IBM Cognos Analytics OWOX Bime MicroStrategy M MODE
Looker Qlik
SAP Analytics
Cloud
CHARTIO ZOOMDATA Dundas BI Yellowfin
liquidlandscape
Redash DOMO
Cloud OnAir
Cloud OnAir
ケーススタディ
Cloud OnAir
ケーススタディ
架空の物流・運送会社
Terrific Transport 社
背景
創業当時のインフラストラクチャをそのまま使用しているため、注文と荷物の
管理、追跡がボトルネックになっています。また急速なサービス拡大を伴い、
処理するデータ量は大量に増えています。それに加えてリソースの配備を
最適化できるようにしたいと考えて GCP に移行したい
既存の技術環境
● データベース
○ オンプレミス MySQL サーバー
○ CSV ファイル(Google Cloud Storage に保管)
● 仮想マシン
○ バッチサーバ
○ Python データ分析環境
TT
Cloud OnAir
ケーススタディ
技術的要件
● 需要の変化に対応できるよう、アーキテクチャの
スケーラビリティと柔軟性を確保する
● 可能な限り、マネージド サービスを使用する
● 荷物の追跡データをリアルタイムで把握 / 分析したい
● データを集約したい
● 履歴データを使用して、将来の出荷に関する予測分析をする
TT
架空の物流・運送会社
Terrific Transport 社
Cloud OnAir
ワークロード洗い出し
1
2
3
追跡データをリアルタイム ストリーム処理するパイプラインを構築
オンプレミス MySQL サーバーと CSV ファイルにあるデータを統合
1 と 2 のデータを一元管理し、出荷予測の機械学習モデルを作り、
可視化レポートを作成
Cloud OnAir
Cloud OnAir
GCP で行うデータエンジニアリング
Cloud OnAir
ワークロード
1
2
3
追跡データをリアルタイム ストリーム処理するパイプラインを構築
オンプレミス MySQL サーバーと CSV ファイルにあるデータを統合
1 と 2 のデータを一元管理し、出荷予測の機械学習モデルを作り、
可視化レポートを作成
Cloud OnAir
GCP で ストリーム処理を実現するには?
データウェアハウスグローバルメッセージング基盤 バッチ処理とストリーミング処理
収集 処理 解析
Cloud OnAir
GCP でのストリーミング処理サンプルアーキテクチャ
Pub/Sub Dataflow
BigQuery
Bigtable
イベント,
メトリック,
メッセージ
ストリーミング
パイプライン
解析
ストレージ
App Engine
Compute
Engine
Kubernetes Engine
アプリケー
ション
Cloud OnAir
Cloud Pub/ Sub とは
シンプルで信頼性の高いメッセージング基盤
Cloud Pub/Sub
スケーラブルで信頼性の高いメッセージングミドルウェア
Push 配信および Pull 配信
グローバルリソース
Cloud Dataflow、Cloud Functions をはじめとした複数のサービスとの統合
Cloud OnAir
多彩な構成パータン
Subscriber
Publisher
Subscriber
Topic
Subscription
Message
Message
Publisher
Subscriber
Message
Subscriber
Message
Message
Message
Subscriber
Publisher
Subscriber
Topic
Message
Message
Message
Message
Message
Message
Publisher
Message
Message
Topic
Subscription Subscription Subscription
Cloud OnAir
Cloud Dataflow とは
Apache Beamベースのデータ処理サービス
Cloud Dataflow
バッチとストリーミングモデルの統合
ストリーミング パイプラインに対して exactly-once
(必ず1度だけ処理する) セマンティクスを保証します
データを重複して送ることがあるソースを使っても、 Dataflow パイプラインはすべてのユニークなデータを
正確に 1 回必ず処理します。
フルマネージドで自動構成
Bigtable, BigQuery, Cloud Storage などの多様なストレージへのコネクタ
Cloud OnAir
テンプレートから簡単にジョブを作成
● Coding なし
● 20 以上 Google が提供するテンプレート
● カスタムテンプレート
Cloud OnAir
モニタリングとアラート
重要なストリーミングメトリックスをモニタリング:
● システムレイテンシー
● データ鮮度
Stackdriver でアラート作成
Cloud OnAir
BigQuery はペタバイト規模のデータ分析ウェアハウス
エンタープライズ向け
データウェアハウス
無制限のストレージと
ペタバイト級クエリ
強固なセキュリティと
高可用性
特徴
フルマネージド、サーバーレス
特徴
リアルタイム分析
特徴
AI の基盤 / BigQuery ML
特徴
BI の基盤 / BI EngineBigQuery
BigQuery
Analysis Engine
Serverless Scale
GIS
Federated Query
Streaming
ML
Storage Engine
BI Engine
Cloud OnAir
Cloud Dataflow SQL Alpha
● BigQuery UI から使い
● ストリーミングのパイプラインを SQL
プログラミングだけで開発
イベント
Pub/Sub
Dataflow BigQuery
SELECT
sr.sales_region,
TUMBLE_START("INTERVAL 5 SECOND") AS period_start,
SUM(tr.payload.amount) as amount
FROM `pubsub.dataflow-sql.transactions` AS tr
INNER JOIN
`bigquery.dataflow-sql.opsdb.us_state_salesregions` AS sr
ON tr.payload.state = sr.state_code
GROUP BY
sr.sales_region,
TUMBLE(tr.event_timestamp, "INTERVAL 5 SECOND")
PubSub topic
Streaming SQL
pipeline
Table
Table
Cloud OnAir
ワークロード
1
2
3
追跡データをリアルタイム ストリーム処理するパイプラインを構築
オンプレミス MySQL サーバーと CSV ファイルにあるデータを統合
1 と 2 のデータを一元管理し、出荷予測の機械学習モデルを作り、
可視化レポートを作成
Cloud OnAir
Cloud Data Fusion Beta
● コードを意識せずにデータパイプラインを構築
● ハイブリッド・マルチクラウドなど多種多様なデータ
ソースに対応
● 接続と変換処理のカスタマイズ
Cloud OnAir
サンプルアーキテクチャ
Pub/ Sub Dataflow
BigQuery
イベント,
メトリック,
メッセージ
ストリーミング
パイプライン
オンプレミス
MySQL
(CSV Files)
Cloud Storage
Cloud Fusion
Cloud OnAir
データソース
● オンプレミス DB
● ファイルサーバ
● パブリッククラウド
● GCP
...etc
Cloud OnAir
変換処理
● CSV フォーマット
● 暗号化
● 圧縮
● JSON / XML パーサー
...etc
Cloud OnAir
データシンク
● GCP 各種 DB / DWH
● ファイルサーバ
● オンプレ DB
● パブリッククラウド
...etc
Cloud OnAir
Cloud OnAir
デモ:Cloud Fusion Beta
Cloud OnAir
ワークロード
1
2
3
追跡データをリアルタイム ストリーム処理するパイプラインを構築
オンプレミス MySQL サーバーと CSV ファイルにあるデータを統合
1 と 2 のデータを一元管理し、出荷予測の機械学習モデルを作り、
可視化レポートを作成
Cloud OnAir
サンプルアーキテクチャ
Pub/ Sub Dataflow
BigQuery
イベント,
メトリック,
メッセージ
ストリーミング
パイプライン
オンプレミス
MySQL
(CSV Files)
Cloud Storage
Cloud Fusion
AutoML
Tables
Data
Portal
BigQuery
MLAI Platform
データ統合
解析
可視化
Tableau
Looker
機械学習
Cloud OnAir
BigQuery ML とは
1
2
3
BigQuery からデータを
移動せずに
機械学習モデル作成
使い慣れた SQL で
開発速度を向上
一般的な ML タスクと
ハイパーパラメータ
チューニングを自動化
※ 詳細は5/23のOnAirのアーカイブで
Cloud OnAir
AutoML Tables とは
需要予測
欠品予測
価格最適化
顧客生涯価値
顧客のコンバージョン /
Churn 予測
詐欺防止
etc ....
表形式 (構造化) データ
チャネル
Channe
l ID
Name Catego
ry
Feature
s
Supplie
r
INSTOR
E
“Navy …” XYZ [“A, B,
…”]
Nike
CALL
CE
“Running
…”
XYZ [“A, B,
…”]
Nike
... ... ... ... ...
地域
Geo ID Name Catego
ry
Feature
s
Supplie
r
CA “Navy …” XYZ [“A, B,
…”]
Nike
CA “Running
…”
XYZ [“A, B,
…”]
Nike
... ... ... ... ...
販促
Month
ID
Name Catego
ry
Feature
s
Supplie
r
2018-1 “Navy …” XYZ [“A, B,
…”]
Nike
2017-1 “Women’
s…”
XYZ [“A, B,
…”]
Adidas
... ... ... ... ...
製品
Product
ID
Name Image Feature
s
Supplie
r
102934 “Navy …” gs://XYZ [“A, B,
…”]
Nike
112932 “Women’
s…”
gs://XYZ [“A, B,
…”]
Adidas
... ... ... ... ...
売り上げ
年月 チャネル 製品 ID 地域 数量
2018-1 INSTORE 102934 CA102 600
2018-1 INSTORE 112932 CA102 800
2018-1 WEB 901243 AZ203 300
... ... ... ... ...
● 最先端の ML モデルを
自動的に構築
● 広範囲なデータ処理
● 大規模データセットを
適切に処理
● GUI での操作で
コード記述不要
● エンドツーエンドの
ML ライフサイクル
※ 詳細は5/23のOnAirのアーカイブで
Cloud OnAir
業界別活用例
小売 金融
_
マーケティング
.
運輸 ヘルスケア
商品在庫最適化 リスク管理 顧客理解 リソースの最大活用 患者の支援
X 10
● 欠品の可能性
● 価格弾力性
● 多額の請求または
不履行のリスク
● 詐欺の可能性
● 購入頻度
● 解約する可能性
● 生涯価値
● キャンペーンの
アトリビューション
● 故障の発生率
● 運転の需要と供給
● 病院資産の利用
● 患者の回復可能性
● 賠償請求
※ 詳細は5/23のOnAirのアーカイブで
Cloud OnAir
AI Platform Notebooks Beta
フルマネージド
馴染みのある Python ノートブックサービス:
業界標準のJupyterLab が使用され、またTensorFlow、
PyTorch、scikit-learn、Pandas、NumPy などの一般的な
ライブラリの最適化されたバージョンがプリインストール
されています
オンデマンドでのスケーリング:
小規模から始めて、CPU、RAM、GPU を追加しながら
スケーリングできます
GCP サービスと統合、エンドツーエンドのサポート: データか
ら機械学習モデルのデプロイまで、すべてをNotebooks 内で行う
ことができます
機械学習用に最適化
マネージド型の JupyterLab サービス
プロジェクトをたった数分で立ち上げて
稼働させることができるエンタープライズ
ノートブック サービスです。
Cloud OnAir
Cloud OnAir
デモ:AI Platform Notebooks Beta
Cloud OnAir
Cloud OnAir
まとめ
Cloud OnAir
包括的なデータ分析と機械学習機能を備えたサーバーレスなプ
ラットフォーム
規模を問わず
データ収集
ストリーミング
データパイプライン
高度なデータ分析
データウェアハウスと
データレイク
Apache
Beam
Cloud Pub/Sub Cloud
Dataflow
Cloud
Dataproc
BigQuery Cloud
Storage
Data Transfer
Service
Cloud Composer
(オーケストレーション)
Cloud IoT
Core
Cloud Dataprep
Cloud AI
Services
Data Portal
Tensorflow Sheets
Storage Transfer
Service
Data Catalog Beta, Coming Soon
(データ検出ガバナンス)
Cloud Data Fusion Beta

[Cloud OnAir] ケーススタディから学ぶ GCP で行うデータ エンジニアリング 2019年6月6日 放送