cm re growth-devio-mtup11-sapporo-004

24
Ⓒ Classmethod, Inc. ビックデータ解析基盤としてのAWS 「カスタマーストーリー」を支える技術 1 DEVIO-MTUP11-SAPPORO-004 石川 覚 ソリューションアーキテクト クラスメソッド 2014年12月12日

Upload: satoru-ishikawa

Post on 18-Jul-2015

727 views

Category:

Software


0 download

TRANSCRIPT

Ⓒ Classmethod, Inc.

ビックデータ解析基盤としてのAWS 「カスタマーストーリー」を支える技術

1

DEVIO-MTUP11-SAPPORO-004

石川 覚 ソリューションアーキテクト クラスメソッド2014年12月12日

Ⓒ Classmethod, Inc.

自己紹介• メーカー系SE、VoIP関連ベンチャー企業を経て • CMに2014/06 join • 札幌出身、東京に8年 • Linux, Java, MySQL, Redshift • 自称 何でも屋 • 当然 AWS好き !

!

クラスメソッド株式会社 ソリューションアーキテクト

2

Ⓒ Classmethod, Inc.

カスタマーストーリー• 販売データ(POS)やモバイルログなど、企業に存在する様々なデータを集約し、様々な角度から顧客理解を深める、ビックデータ分析基盤を提供します。

3

カスタマーストーリーで 「データ分析の民主化」をお手伝い

Ⓒ Classmethod, Inc.

アジェンダ• AWSのビックデータ関連サービス • 高性能・大容量なAmazon Redshift • データ解析基盤の導入パターン • データ分析の課題 • ETLプロセスの見直し • まとめ

4

AWSのビックデータ関連サービス

5

Ⓒ Classmethod, Inc.

AWSサービスの全体像AWSサービスの全体像 ‒ 40以上のサービス

6

更にビックデータ関連の新サービスとして、AWS Lambda、S3 Event Notification、RDS for Auroraが追加

Ⓒ Classmethod, Inc.

注目の新サービスAWS Lambda AWS上のイベントをトリガーに、独自のコードを実行させることができるComputeサービス S3へのPUT、Kinesisのストリーム入力、CLI呼び出しなどのトリガ LambdaはAWSサービスをより簡潔に連携させる手段を提供 フルマネージメントならDataPipeline、セルフマネジメントならAWS SDK

7

AWS SDKData Pipeline

> >

Ⓒ Classmethod, Inc.

注目の新サービスS3 Event Notification S3でイベントが発生した際に、SNS/SQS/Lambdaへ通知呼び出しする EC2/Linux(inotify)やS3のポーリングが不要になる Producer-Customerパターン適用して、他サービスと疎結合でElasticな拡張が期待 バケット毎に設定可能

8

Ⓒ Classmethod, Inc.

注目の新サービスAmazon RDS for Aurora クラウドのために再発明したRDB.. (まだ本物を見ていないのでわかりません…) Readはかなり速そうだが、DWH用途ではRedshiftの方が”Cost Effective”だろう RedshiftはPrimaryKeyは名ばかり、インデックスキーはsortkeyのみ、非冗長化のシングルAZなので、要件によってはAuroraがマッチする可能性がある

9

一般的にビックデータ関連は結果データの永続化よりも スケールアウトに重点が置かれています。

高速で大容量なAmazon Redshift

10

Ⓒ Classmethod, Inc.

Amazon Redshift大容量:160GB~1.6PB 高速:カラムナ型+列圧縮、超並列演算(MPP) インスタンスの従量課金(ライセンス不要)

11

Ⓒ Classmethod, Inc.

Amazon Redshift

12

インタフェースはPostgreSQL互換 S3からの高速ロード・アンロードが可能 BIツールやETLツールとの連携

EC2

RedshiftS3COPY

/UNLOAD

SQL

TableauSQL

AlteryxSQL

AWSサービス BIツール

データ解析基盤の導入パターン

13

Ⓒ Classmethod, Inc.

例.収集した売上データの活用 - BI

14

DB

データ (オリジナル) ETL

EC2/EMRS3

データ (ETL済み)

店舗

Redshift

EC2

データ (ETL済み)

S3

Redshift

マート

Tableau

分析

会計データ 販売データ 生産管理データ 在庫管理データ 購買管理データ eコマース・SNS等

Ⓒ Classmethod, Inc.

例.収集したデータの活用 - DMP

15

ログ コレクタ

データ (オリジナル)

S3

IoT 検索ワード SNSログ 投票データ ウェブコング 株式データ 医療情報

ETL

データ (ETL済み)

Redshift

データ (ETL済み)

S3データ

(オリジナル)

ETL

EMR

EMR

データ (ETL済み)

S3

データ (ETL済み)

DynamoDB

データ取得 WebAPI

レポート

分析データ 販売ビジネス

データ分析の課題

16

Ⓒ Classmethod, Inc.

例.収集した売上データの活用 - BI

17

DB

データ (オリジナル) ETL

EC2/EMRS3

データ (ETL済み)

店舗

Redshift

EC2

データ (ETL済み)

S3

Redshift

マート

Tableau

分析

会計データ 販売データ 生産管理データ 在庫管理データ 購買管理データ eコマース・SNS等

ETLが全体の作業7割を 占めると言われている

Ⓒ Classmethod, Inc.

データ分析の課題ETL(データクレンジング、連結、一次集計、データマート)は手間と時間を要する エンジニアがこれらの作業を代行すると事前に分析内容を定めなければならない 分析内容の固定化・分析経過のフィードバックが容易でない 結果として、データ分析に基づいた仮設・検証サイクルを迅速に回せなくなる

18

分析内容の固定化は経験的な分析を数値化する価値があるが、新たな課題や施策に必要なデータの発見には至れない

ETLプロセスの見直し

19

Ⓒ Classmethod, Inc.

Data Pipelineデータ統合・処理をスケジュールベースで自動化

20

Ⓒ Classmethod, Inc.

ETLツール - Alteryxデータの入出力にS3やRedshiftが指定可能 予測分析やバスケット分析といった高度な分析が可能 分析結果を直接BIツール(Tableau)のファイルに出力できる

21

まとめ

22

Ⓒ Classmethod, Inc.

まとめ• オリジナル・中間データはS3に保存する • オリジナルデータのクレンジングはEC2やEMR • 処理されたデータはRedshiftに格納・利用することでBIツールやETLツールと連携

• Redshiftはデータ連結、一次集計、マート作成を高速に生成

• ETLのオーケストレーションはData Pipeline、データサイエンティストに求められる高度な分析はAlteryxを始めとするETLツールを活用

23

Ⓒ Classmethod, Inc.

#cmdevio

ご静聴ありがとうございました。 スライドは後日ブログで公開します。

24

DEVIO-MTUP11-SAPPORO-004