データ分析基盤構築のポイントと関連クラスメソッドサービスの紹介
TRANSCRIPT
メンバーズ、CS・データおよびアナリティクスの紹介と
簡単な分析デモ
2016年9月27日
クラスメソッド株式会社
データインテグレーション部
甲木 洋介
ユーザー企業に学ぶビッグデータ分析基盤活用実践セミナー
~Amazon Redshift で短期間導入・低コスト運用~
会社紹介
クラスメソッド株式会社
設立: 2004年、13期目
場所:秋葉原、札幌、上越、バンクーバ、ベルリン
事業:AWSコンサル : 約45名の専門チーム
モバイルアプリサービス開発 : 約30名の専門チーム
データ分析環境開発 : 約15名の専門チーム
体制:約100名のエンジニア集団
技術:クラウドでのデータ分析基盤に強み
全世界で14,000社以上あるAWSコンサルティングパートナーの内、
・プレミアコンサルティングパートナー(全世界で31社)
・ビッグデータコンピテンシー (全世界で20社)
・モバイルコンピテンシー (全世界で 6社)
に認定され、実績を積み重ねております。
78 27 27
21 エンタープライズレベルの設計と構築
クラウドネイティブな設計と構築
クラウドネイティブなシステム開発
クラウドネイティブなシステム運用
世界31社 AWSプレミアコンサルティングパートナー認定世界20社 APNビッグデータコンピテンシー認定世界 6社 APNモバイルコンピテンシー認定世界14人 AWSコミュニティヒーロー認定
人
人人人
13 エンタープライズレベルのシステム運用人
AWS プロフェッショナル集団
Developers.IO (http://dev.classmethod.jp/)
社員執筆によるIT技術専門サイト月間:100万PV、35万UU
AWS / ビッグデータ / モバイル / IoTを中心に 5,000本以上の記事
AWS総合支援サービス:メンバーズ
コンサルティング
構築支援
24/365無人監視
セキュリティ監視
運用支援
TAM
ご提案 構築 運用監視
フェーズごとに最適な支援をさせていただきます。
AWS総合支援サービス:メンバーズ
大幅割引、請求書送付、付帯損害保険、AWSサポートを
標準セットにして無料提供
AWS利用料金(従量課金)
AWSエンタープライズサポート$15,000~
損害保険 5%
請求代行手数料 10%
AWS利用料金(従量課金)+
請求代行手数料 無料+
損害保険 無料+
AWSエンタープライズサポート 無料+
Amazon EC2 オンデマンド対象インスタンス 10%オフ
+Amazon CloudFront 64%オフ
+フルサポート 10%
自社契約または他社サービスの利用例
クラスメソッド メンバーズ利用例
メンバーズ プラン ラインナップ
メンバーズ・フルサポート
セキュリティ、ログ、バックアップ、チェックなど重要なサポートを受けたい方向け。
AWS利用を総合的に支援し、技術サポートを行います。
提供価格:AWS利用費 – 各種割引 + サービス費10%
幅広い技術サポート:AWS管理コンソール使い方支援、 AWS仕様確認、複数AWSアカウント発行(教育用/開発用/本番用)、IAMアカウント発行、メンテナンス(インスタンスリブート、ハードウェアリタイア)予告、上限緩和申請代行(サーバー数、固定IP数、ロードバランサー、負荷テスト、脆弱性テスト、ネットワーク関連)、リザーブドインスタンス購入代行、スポットインスタンス購入代行、利用改善、コスト最適化
メンバーズ・バウチャー
年間の予算枠が決まっていてその中でAWSを活用したい方向け。
AWS利用費に上限枠を設定して提供します。
提供価格:AWS利用費(上限枠設定、100万円~) – 各種割引 + サービス費5%
メンバーズ・スタート
最も安くAWSを使いたいが、万が一のサポートを受けたい方向け。
AWS利用費に各種特典を付与して提供します。
提供価格:AWS利用費 - 各種割引
メンバーズ プラン ラインナップ
クラスメソッド メンバーズ で検索
https://m.classmethod.jp/
クラスメソッド メンバーズ
データ分析のスモールスタートに
必要なもの
データ分析のスモールスタートに必要なもの
1. 分析したいテーマがあること
2. 分析できるデータがあること
3. 分析のためのツールが用意できること
12
1.分析したいテーマがあること
在庫管理
事業部/地区別売上実績
ユーザ動向把握
ポイント/クーポン利用実績
13
1.分析したいテーマがあること
在庫管理
事業部/地区別売上実績
ユーザ動向把握
ポイント/クーポン利用実績
データを集めただけでは
分析結果は現れない
14
2.分析できるデータがあること
データの構造を把握しておく
何が足りてて、何が足りないのか把握する
自動連携は一旦後回しでも良い
15
2.分析できるデータがあること
データの構造を把握しておく
何が足りてて、何が足りないのか把握する
自動連携は一旦後回しでも良い
スモールスタートなら
欲張らない
16
3.分析の為のツールが用意できること
データベース管理サービスとBIツール
少人数で大量の集計が発生するならカラム型
大人数で少数の検索なら従来型RDB(行志向)
安く始めるならクラウドサービスから選ぶ
BIツールは帳票重視かビジュアル重視かで選択
17
3.分析の為のツールが用意できること
継続的なデータ投入が発生するならば、ETLの仕組みを検討
安くするなら手組みのスクリプト+cron
ETLツール導入で効率化
スケジューリング機能
エラー通知、リトライ機能
CDC(Change Data Capture: 差分更新)機能
予算 vs 手出し工数
18
AWSでデータ分析を始める具体例と注意点
全体の流れ
データ準備
データ蓄積(Amazon S3)
データベース管理サービス準備(Amazon Redshift)
データロード、集計
データ分析(Tableau Desktop)
チューニング
20
デモの流れイメージ
21
テキストデータをS3に格納し、Redshiftへcopyその後、Tableau Desktopで分析
テキストデータ
分析用 Desktop
分析者
DWH
(Redshift)
クラウド
ストレージ
(S3)
業務データ
集計データ
オープンデータ
Copyコマンド
デモに使用するデータ
22
Amazon Redshiftサンプルデータベースhttp://docs.aws.amazon.com/ja_jp/redshift/latest/dg/c_sampledb.html
データ準備
基幹系からの特定期間データ抜き出し
マスタ系は全件抽出の洗い替え形式も
経験上の理想はタブ区切り、囲み文字なし、文字コード統一
データ型は可能な限り正確に把握しておくこと
巨大なデータはファイル名の接頭辞を揃えて複数ファイルに分割しておく
各ファイルがgzip圧縮されているとより望ましい
23
データ蓄積(Amazon S3)
生データは一旦全てS3に保存するのがお薦め
データ保全
必要に応じて別用途で再加工できる
ETLツールも使えるが、安くするならaws cli
ファイルをディレクトリで整理する場合には、<システム名>/<テーブル名>/<日付>がお薦め
24
デモS3ファイルアップロード
(aws cli)
データベース管理サービス準備(Amazon Redshift)
大量の集計が発生する場合は列志向型DB
行単位のアクセスが中心だったり、同時接続数が多い場合は従来型(行志向)RDB
必要に応じてノードタイプ、サイズは変更できるまずは余裕を持って構成する
26
デモRedshift構成確認
Amazon Redshiftクラスタ起動前に必要な設定
VPC
インターネットゲートウェイ
ルートテーブル
サブネット
(EIP)
セキュリティグループ
サブネットグループ
パラメータグループ
IAMロール
28
Redshiftクラスタ構築テンプレート化
29
http://dev.classmethod.jp/server-side/db/cloudformation_for_redshift_01/
Redshiftクラスタ構築テンプレート化
30
CloudFormationテンプレートでRedshiftクラスタ構成を自動化
データロード・集計
一旦、生データをそのままの形でテーブルロードし、必要に合わせて集計テーブルを作成する(ELTの順)
列志向型DBのロード処理は都度INSERTを避ける
ETLツールも使えるが、安く始めるならcopyコマンド + 生SQL
集計処理も都度INSERTを避ける
SELECT INSERT
CREATE TABLE AS SELECT
必要に応じてスキーマを分け、中間作業テーブルをBIツールから見えないようにする
31
データロード・集計
スキーマ構成イメージ
32
デモRedshiftデータロード
(copyコマンド)
データ分析
Tableauによるビジュアル分析
Redshiftに直アクセス
34
デモTableau Desktop
クラスメソッド流、ビッグデータ案件の進め方
処理性能の期待値を確認する例)BIツール上でのレスポンス30秒以下
チューニング無し、基盤構成変更のみで性能を上げるインスタンスタイプ強化、ノード数追加
チューニング作業実施、期待値以上の性能を出すテーブル設定(データ型/カラム圧縮/ソートキー/分散キー)VACUUM処理、パラメータ変更SQL文見直しマート(結合済みテーブル)作成
インスタンスタイプ、ノード数を減らし期待値付近に着地
コストと性能のバランスが取れるところで構成確定
36
ビッグデータ案件の進め方
37
チューニング
現在の構成でひたすらチューニング
時間
目標性能
現在性能
目標確認
目標確認
目標達成、継続運用
性能
構成を縮小しつつ費用と性能のバランス調整
構成を変更するノード追加、スケールアップ
お薦めの方法
従来の方法
結果が出るまで時間が掛かる目標達成の保証もない
追加費用は発生するが早く性能向上が確認できる
チューニングより構成変更
38
従来型のチューニング作業は掛けた時間と効果が比例しない
構成変更は掛けた金額に比例して性能を上げることができる
先にスケールアップ/アウトで性能を上げておけば、その後でチューニングの機会を増やすことができる
60分のクエリ1回調査vs 5分のクエリ12回調査
カスタマーストーリー(ビッグデータ分析環境構築サービス)
39
データ分析基盤として、社内外のデータをセキュアなVPC上のDWHに集約し、各種BIツールで分析・閲覧。
業務データ基幹DB
POS
分析用 Desktop
閲覧用ブラウザ
企業
分析者
閲覧者
DWH
(Redshift)
ストレージ
(S3)
EAI
閲覧用画面生成
(EC2)クラウド
オープンデータ ストレージ
(S3)
業務データ
集計データ
オープンデータ
分析用 BIツール
分析者
Controller
(EC2)
提携企業
Redshift Try!
40
プログラム適用対象:
これからAmazon Redshiftの導入を検討しているメンバーズご契約企業、または新たにメンバーズをご契約頂ける企業
対象社数:
先着10社
ご支援内容:
Amazon Redshiftに関するコンサルティングの無償提供(オンライン最大20時間のご支援)
Amazon Redshiftのご利用費用一部負担( 2ヶ月間、$1,000/月をクラスメソッドが負担)
Redshift Try!
クラスメソッド メンバーズ で検索
http://classmethod.jp/news/redshift-try/
Redshift Try!
ご清聴ありがとうございました