データウェアハウス入門 (マーケティングデータ分析基盤技術勉強会)

24
takemikami’s note – http://takemikami.com/ 三上 威 (フリーランスITエンジニア) twitter: @takemikami マーケティングデータ分析基盤技術勉強会 『データウェアハウス入門』 マーケティングデータ分析のためのデータウェアハウス 1 DWH BI 2016.10.5 株式会社フロムスクラッチ 社内勉強会 Copyright (C) 2016 Takeshi Mikami. All rights reserved. フロムスクラッチ 社内勉強会

Upload: takeshi-mikami

Post on 16-Apr-2017

1.101 views

Category:

Software


0 download

TRANSCRIPT

Page 1: データウェアハウス入門 (マーケティングデータ分析基盤技術勉強会)

takemikami’s note– http://takemikami.com/

三上威 (フリーランスITエンジニア)twitter:@takemikami

マーケティングデータ分析基盤技術勉強会

『データウェアハウス入門』

マーケティングデータ分析のためのデータウェアハウス

1

DWHBI

2016.10.5株式会社フロムスクラッチ社内勉強会

Copyright(C)2016TakeshiMikami.Allrightsreserved.

フロムスクラッチ社内勉強会

Page 2: データウェアハウス入門 (マーケティングデータ分析基盤技術勉強会)

takemikami’s note– http://takemikami.com/

アジェンダ

• 自己紹介• マーケティングとデータ分析

– マーケティングとは– マーケティングデータ分析の全体像– データ分析のアプローチ

• 取引処理と分析処理– オンライン取引処理と分析処理– 取引処理用データベースの構造– 分析処理用データベースの構造– 取引処理用分析処理用データベースの違い– 取引処理用分析処理用データベースの分割

• マーケティングデータ分析基盤のデータフロー• データの収集

– 取引処理で発生するデータ– マスター・ログ・トランザクションデータの収集

2Copyright(C)2016TakeshiMikami.Allrightsreserved.

データウェアハウス入門のアジェンダを示します。

• データの加工・蓄積– データのステージング– データマート

• データの分析– 顧客・商品を知るレポーティング– BIツール(OLAPツール)– データマイニング

• 参考文献リスト

Page 3: データウェアハウス入門 (マーケティングデータ分析基盤技術勉強会)

takemikami’s note– http://takemikami.com/

自己紹介

• 三上威 (@takemikami)• フリーランスITエンジニア

– マーケティングデータ分析及び応用システム開発– マーケティングデータ分析基盤のシステム開発・運用

• 略歴– 情報通信ネットワーク・確率論@甲南大学理学部応用数学科– Web系システムの開発・構築@NEC系SIer– 旅行系ECサイトのマーケティングデータ分析@DeNA

• 近扱っている技術領域– Scala,Python,Hadoop,Spark,AWS,RubyonRails

3Copyright(C)2016TakeshiMikami.Allrightsreserved.

Page 4: データウェアハウス入門 (マーケティングデータ分析基盤技術勉強会)

takemikami’s note– http://takemikami.com/

マーケティングとは

• マーケティングとは「買ってもらえる仕組みづくり」のこと

4Copyright(C)2016TakeshiMikami.Allrightsreserved.

マーケティングとデータ分析

マーケティング(marketing) セリング(selling)アドバタイジング(advertising)

出発点 市場・顧客ニーズ 既存製品

焦点 買ってもらえる仕組みづくり 売り込む手段

方法 分析・創造 アクション中心

目的 継続的成長 現状の売上確保

成果 顧客満足に基づく利益 売上数量に基づく利益

セリング等と比較しマーケティングとは何かを示します。

→アクション中心のセリングと比べ、マーケティングでは「分析」が重要※グロービス・マネジメント・インスティテュート「新版MBAマーケティング」(ダイヤモンド社)より

Page 5: データウェアハウス入門 (マーケティングデータ分析基盤技術勉強会)

takemikami’s note– http://takemikami.com/

マーケティングデータ分析の全体像

5Copyright(C)2016TakeshiMikami.Allrightsreserved.

マーケティングとデータ分析

マーケティングデータ分析における、分析基盤の位置づけを示します。

顧客とのチャネル

データ分析

顧客

社会・業界

リアル広告 イベント・・・

DataWarehouse

SNS

収集施策

実店舗

収集

DataMart

マーケターデータサイエンティスト

Web広告ECサイト

BIツール機械学習

本スライドでは、データの収集・加工・分析を分析基盤として説明

加工

Page 6: データウェアハウス入門 (マーケティングデータ分析基盤技術勉強会)

takemikami’s note– http://takemikami.com/

データ分析のアプローチ

• データ分析のアプーチは以下の3つに分類できる

6Copyright(C)2016TakeshiMikami.Allrightsreserved.

マーケティングとデータ分析

3つのデータ分析のアプローチを紹介します。

アプローチ 説明 例 手法

説明的データ分析(descriptive)

事実を説明する・見つける

・どんな人が何を買っているか?

・ある広告がどれだけ売上に貢献しているか?

・BI・データ

マイニング

予測的データ分析(predictive)

(未来や欠測値を)予測する

・ある商品群を閲覧した人の性別は?

・広告を出稿したら、どれだけ売上が上がるか?

・統計解析・機械学習

指示的データ分析(prescriptive)

適解を探す ・利益を 大化するための、 適な仕入れ量は?

・売上を 大化するには、どこに広告を出稿すべきか?

→実施したい「分析のアプローチ」が何かを認識し、適切な「手法」を適用する

今日はこの部分

Page 7: データウェアハウス入門 (マーケティングデータ分析基盤技術勉強会)

takemikami’s note– http://takemikami.com/

オンライン取引処理と分析処理

7Copyright(C)2016TakeshiMikami.Allrightsreserved.

取引処理と分析処理

オンライン取引処理と分析処理について、イメージを示します。

受注リスト

□出荷済みフラグ

注文番号:xxxx ・・・・

□入金済みフラグ

新規注文

出荷

入金更新

更新

追加

受注リスト

10/1

・・

10/31

¥111¥333¥222・・・

女女

・・・

オンライン取引処理(OLTP)のイメージ オンライン分析処理(OLAP)のイメージ

日別の受注金額推移は?

取引処理は 新の状態の管理 分析処理は対象期間の集計異なる目的

集計

集計

注文の男女比率は?

Page 8: データウェアハウス入門 (マーケティングデータ分析基盤技術勉強会)

takemikami’s note– http://takemikami.com/

取引処理用データベースの構造

• 取引処理用データベースでは、データ構造を正規化し、一事実一箇所(1factin1place)の状態にすることで、更新の不整合が発生しないようにする

8Copyright(C)2016TakeshiMikami.Allrightsreserved.

取引処理と分析処理

取引処理用データベースの構造について、説明します。

注文番号 配送先住所 顧客名 商品CD 単価 数量 合計

001 東京都新宿区○○ 鈴木○○ P001 1,000 5 5,000

001 東京都新宿区○○ 鈴木○○ P101 100 1 100

002 東京都渋谷区○○ 山田○○ P005 3,500 1 3,500

注文番号 配送先住所 顧客名

001 東京都新宿区○○ 鈴木○○

002 東京都渋谷区○○ 山田○○

注文番号 商品CD 単価 数量 合計

001 P001 1,000 5 5,000

001 P101 100 1 100

002 P005 3,500 1 3,500

鈴木さんが引越した場合→2箇所の修正が必要

正規化しておく→1箇所の修正でOK

正規化

取引処理は 新の状態の管理

Page 9: データウェアハウス入門 (マーケティングデータ分析基盤技術勉強会)

takemikami’s note– http://takemikami.com/

分析処理用データベースの構造 1/2

• 分析処理用データベースでは、集計したい対象をfactに、切り口をdimensionとしてスタースキーマの構造にする

9Copyright(C)2016TakeshiMikami.Allrightsreserved.

取引処理と分析処理

分析処理用データベースの構造について、説明します。分析処理は対象期間の集計

受注

受注日時

顧客番号

商品CD

販売数量

顧客

商品

店舗店舗CD

顧客番号

商品CD

店舗CD所在都道府県

商品種別

メーカー

性別

年齢

居住都道府県

dimension

dimension

dimension

fact

販売価格measure

Page 10: データウェアハウス入門 (マーケティングデータ分析基盤技術勉強会)

takemikami’s note– http://takemikami.com/

分析処理用データベースの構造 2/2

• 前ページのスタースキーマ構造のデータベースからは、例として、以下のようなクロス集計を行うことができる。

10Copyright(C)2016TakeshiMikami.Allrightsreserved.

取引処理と分析処理

分析処理用データベースの構造について、説明します。

販売数量 顧客性別:男性 顧客性別:女性 総計

商品メーカー:A社 140 7 147商品メーカー:B社 16 35 51総計 156 42 198

dimension

measure

dimension切り口

集計

Page 11: データウェアハウス入門 (マーケティングデータ分析基盤技術勉強会)

takemikami’s note– http://takemikami.com/

取引処理用・分析処理用データベースの違い

• 取引処理用・分析処理用データベースの違いをまとめると

11Copyright(C)2016TakeshiMikami.Allrightsreserved.

取引処理と分析処理

取引処理用・分析処理用データベースの違いをまとめます。

取引処理用データベース 分析処理用データベース

データ操作 追加・参照・更新・削除 追加・参照

データの種類 トランザクションマスター

ファクトディメンション

データ構造 正規化 スタースキーマ

データの状態 新状態を保存 時系列に保存

用途 取引処理・検索 分析

クエリ発行回数 多い 少ない

1クエリの負荷 小さい(対象データの参照・更新) 大きい(大量データの集計)

Page 12: データウェアハウス入門 (マーケティングデータ分析基盤技術勉強会)

takemikami’s note– http://takemikami.com/

取引処理用・分析処理用データベースの分割

• 取引・分析処理用データベースを同じDBMSで運用すると、以下のような問題が発生する

– 分析クエリの結果が帰ってこない(正規化したテーブルのjoinが必要なのでクエリが複雑になりがち)

– 分析クエリ実行中に、取引処理用クエリのスループットが落ちる(分析用クエリは、取引処理と比べ高負荷になりがち)

– 取引データが肥大化する(分析用途を考えると、取引処理には不要な古いデータの削除ができない)

12Copyright(C)2016TakeshiMikami.Allrightsreserved.

取引処理と分析処理

取引処理用・分析処理用データベースの分割について、説明します。

→取引処理用と分析処理用のデータベースは分けるのが現実的・分析処理に利用するデータベースを「データマート」・分析用にデータを蓄積しておくデータベースを「データウェアハウス」 と呼ぶ

Page 13: データウェアハウス入門 (マーケティングデータ分析基盤技術勉強会)

takemikami’s note– http://takemikami.com/

マーケティングデータ分析基盤のデータフロー

13Copyright(C)2016TakeshiMikami.Allrightsreserved.

分析基盤のデータフロー

マーケティングデータ分析基盤のデータフロー概要を示します。

会計

DataMart

OLAP

仕入

生産

販売

顧客

ECサイト

センサー

外部データ

DataWarehouse

Reporting

DashBoard

DataMining

マーケター

BIツール

収集 加工・蓄積 分析

社会・業界

顧客 DataMart

DataMart

DataMart

取引処理用データベース

分析処理用データベース

Page 14: データウェアハウス入門 (マーケティングデータ分析基盤技術勉強会)

takemikami’s note– http://takemikami.com/

取引処理で発生するデータ

• 取引処理で発生するデータには、以下のような種類がある

14Copyright(C)2016TakeshiMikami.Allrightsreserved.

データの収集

取引処理で発生するデータの種類について、以下に整理します。

マスター トランザクション ログ

発生タイミング 管理者によるデータ登録更新

ユーザによる業務処理の実施

システムへのアクセス

追加 ○(管理者のみ) ○ ○

参照 ○ ○ -

更新 ○(管理者のみ) ○ -

削除 ○(管理者のみ) ○ -

例 商品、店舗 注文、問い合わせ アクセスログ

→以降のスライドでデータの種類ごとの収集方法を示す

Page 15: データウェアハウス入門 (マーケティングデータ分析基盤技術勉強会)

takemikami’s note– http://takemikami.com/

マスターデータの収集

• 想定される更新頻度ごとに、該当データのスナップショットをとる(「管理者によって登録更新」されるため、更新頻度が予想できる )

15Copyright(C)2016TakeshiMikami.Allrightsreserved.

データの収集

マスターデータの収集方法について示します。

取引処理のデータベース

マスター

マスター(10/1時点)マスター(10/2時点)

マスター(10/3時点)マスター(10/4時点)

・・・

スナップショット

データウェアハウス

Page 16: データウェアハウス入門 (マーケティングデータ分析基盤技術勉強会)

takemikami’s note– http://takemikami.com/

ログデータの収集

• 一定量づつ、データウェアハウスに追加ロードする(ログは追加のみのため)

16Copyright(C)2016TakeshiMikami.Allrightsreserved.

データの収集

ログデータの収集方法について示します。

取引処理のデータベース

ログ

ログ(10/1分)ログ(10/2分)

ログ (10/3分)ログ(10/4分)

・・・

追加

データウェアハウス

Page 17: データウェアハウス入門 (マーケティングデータ分析基盤技術勉強会)

takemikami’s note– http://takemikami.com/

トランザクションデータの収集

• 想定される更新期間まで遡って、該当データの洗い替え(想定される更新期間=トランザクションが更新されなくなる 長リードタイム)

17Copyright(C)2016TakeshiMikami.Allrightsreserved.

データの収集

トランザクションデータの収集方法について示します。

取引処理のデータベース

トランザクション

トランザクション(10/1)トランザクション(10/2)

トランザクション(10/3)トランザクション(10/4)

・・・遡って、洗い替え

データウェアハウス

Page 18: データウェアハウス入門 (マーケティングデータ分析基盤技術勉強会)

takemikami’s note– http://takemikami.com/

DataStagingArea

データのステージング

• 各種システムから収集したデータは、データウェアハウスにロードする前にDataStagingAreaで変換処理を行う– 単純変換:データの型などを揃える– クレンジング:矛盾するデータなどをルールに従って修正– 統合化:非正規化– 集計:平均や合計などを計算

18Copyright(C)2016TakeshiMikami.Allrightsreserved.

データの加工・蓄積

データのステージングについて、説明します。

会計

仕入

生産

販売

顧客

DataWarehouse

収集

単純変換クレンジング統合化集計

Page 19: データウェアハウス入門 (マーケティングデータ分析基盤技術勉強会)

takemikami’s note– http://takemikami.com/

データマート

• データマートは、分析処理に利用するデータベースとして構築• マーケターが利用する際にストレスを感じないように、必要な範囲のデータのみまとめてロード

• 分析ニーズによって、データベース管理システムを選択– RDB– 多次元データベース– カラムナーデータベース

19Copyright(C)2016TakeshiMikami.Allrightsreserved.

データの加工・蓄積

DataWarehouse

DataMart

DataMart

マーケター

BIツール

DataMart

分析ニーズにあわせDataMartを構築

データマートについて、説明します。

Page 20: データウェアハウス入門 (マーケティングデータ分析基盤技術勉強会)

takemikami’s note– http://takemikami.com/

顧客・商品を知るレポーティング

• 「顧客」「商品」を知るためには以下のようなレポートを作成

20Copyright(C)2016TakeshiMikami.Allrightsreserved.

データの分析

顧客・商品を知るためのレポーティングの視点について、説明します。

評価対象 (並べる)

順位付け

(分類する)

セグメント

(紐づける)

相関

顧客(Audience) 購買ランキングデシル分析RFM分析

地理的変数人口動態変数心理的変数行動変数

コレスポンデンス分析

商品(Product) 購買ランキングABC分析

カテゴリーテイストブランド

アソシエーション分析マーケットバスケット分析

※顧客のセグメントの補足地理的変数(ジオグラフィック):地域、気候etc人口動態変数(デモグラフィック):年齢、性別、職業etc心理的変数(サイコグラフィック):好み、ライフスタイルetc行動変数(アクティビティ):購入頻度、ロイヤリティetc

※商品のセグメントの補足カテゴリー(商品カテゴリーetc)テイスト(サイズ、色、形etc)ブランド(メーカー、キャラクターetc)

Page 21: データウェアハウス入門 (マーケティングデータ分析基盤技術勉強会)

takemikami’s note– http://takemikami.com/

BIツール(OLAPツール)

• ドリルダウン:ディメンションの階層を掘り下げて見る• スライシング:対象を絞り込んで見る• ダイシング:多次元データベース回転させ別の側面を見る

21Copyright(C)2016TakeshiMikami.Allrightsreserved.

データの分析

BIツールでの分析操作について、説明します。

全商品 2015年 2016年

店舗:東京都 140 7

店舗:大阪府 16 35

全店舗 2015年 2016年

商品A 100 6

商品B 4 21

商品A 2015年 2016年

店舗:東京都 3 1

店舗:大阪府 2 10

全商品 2015/1 2015/2

店舗:東京都 20 3 …

店舗:大阪府 1 3 …

ドリルダウン

ダイシング スライシング

地域ではなく、商品を見る

期間を掘り下げる

全商品でなく、特定商品で絞る

Page 22: データウェアハウス入門 (マーケティングデータ分析基盤技術勉強会)

takemikami’s note– http://takemikami.com/

データマイニング:クラス分類・クラスタリング

22Copyright(C)2016TakeshiMikami.Allrightsreserved.

データの分析

クラス分類とクラスタリングについて、紹介します。

クラス分類(classification) クラスタリング(clustering)教師 教師あり 教師なし

説明 与えられたデータを適切なクラスに振り分ける

与えられたデータを複数のグループ分ける

イメージ

既存データを元に作ったルールで新規データを振り分ける

データの特徴を元に意味あるグループが無いか見つける

A

ルール

B C

Page 23: データウェアハウス入門 (マーケティングデータ分析基盤技術勉強会)

takemikami’s note– http://takemikami.com/

データマイニング:アソシエーションルール

23Copyright(C)2016TakeshiMikami.Allrightsreserved.

データの分析

アソシエーションルールについて、紹介します。

台北 バンコク ホノルル グァム

旅行者1 2 1 0 0

旅行者2 1 0 0 0

旅行者3 0 0 3 2

旅行者4 2 3 1 0

旅行者5 1 0 2 5台北 バンコク ホノルル グァム

台北 1 0.8 0.34 0.29

バンコク 0.8 1 0.25 0.25

ホノルル 0.34 0.25 1 0.79

グァム 0.29 0.0 0.79 1

旅行者1〜5の旅先別の旅行回数

ある旅行先を旅行した人が、他にどの旅行先にいく傾向があるかを分析

※ここでは、コサイン類似度(cosinesimilarity)を使って類似度を計算しています。

Page 24: データウェアハウス入門 (マーケティングデータ分析基盤技術勉強会)

takemikami’s note– http://takemikami.com/

参考文献リスト

• 丸山宏・山田敦・神谷直木「データサイエンティスト・ハンドブック」近代科学社 2015

• 平井明夫「BIシステム構築実践入門 DBデータ活用/分析の基礎とビジネスへの応用」翔泳社 2005

• 鈴木健司「データウェアハウスがわかる本」オーム社 2000

24Copyright(C)2016TakeshiMikami.Allrightsreserved.

付録

本資料作成にあたって参考にした文献リストです。