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

876 views

Published on

本資料では、マーケティングデータ分析のためのデータウェアハウス構築のための知識や考え方を紹介します。

Published in: Software

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

  1. 1. takemikami’s note – http://takemikami.com/ 三上 威 (フリーランスITエンジニア) twitter: @takemikami マーケティングデータ分析基盤技術勉強会 『データウェアハウス入門』 マーケティングデータ分析のためのデータウェアハウス 1 DWH BI 2016.10.5 株式会社フロムスクラッチ 社内勉強会 Copyright (C) 2016 Takeshi Mikami. All rights reserved. フロムスクラッチ 社内勉強会
  2. 2. takemikami’s note – http://takemikami.com/ アジェンダ • 自己紹介 • マーケティングとデータ分析 – マーケティングとは – マーケティングデータ分析の全体像 – データ分析のアプローチ • 取引処理と分析処理 – オンライン取引処理と分析処理 – 取引処理用データベースの構造 – 分析処理用データベースの構造 – 取引処理用分析処理用データベースの違い – 取引処理用分析処理用データベースの分割 • マーケティングデータ分析基盤のデータフロー • データの収集 – 取引処理で発生するデータ – マスター・ログ・トランザクションデータの収集 2Copyright (C) 2016 Takeshi Mikami. All rights reserved. データウェアハウス入門のアジェンダを示します。 • データの加工・蓄積 – データのステージング – データマート • データの分析 – 顧客・商品を知るレポーティング – BIツール(OLAPツール) – データマイニング • 参考文献リスト
  3. 3. takemikami’s note – http://takemikami.com/ 自己紹介 • 三上威 (@takemikami) • フリーランスITエンジニア – マーケティングデータ分析及び応用システム開発 – マーケティングデータ分析基盤のシステム開発・運用 • 略歴 – 情報通信ネットワーク・確率論 @ 甲南大学理学部応用数学科 – Web系システムの開発・構築 @ NEC系SIer – 旅行系ECサイトのマーケティングデータ分析 @ DeNA • 最近扱っている技術領域 – Scala, Python, Hadoop, Spark, AWS, Ruby on Rails 3Copyright (C) 2016 Takeshi Mikami. All rights reserved.
  4. 4. takemikami’s note – http://takemikami.com/ マーケティングとは • マーケティングとは「買ってもらえる仕組みづくり」のこと 4Copyright (C) 2016 Takeshi Mikami. All rights reserved. マーケティングとデータ分析 マーケティング(marketing) セリング(selling) アドバタイジング(advertising) 出発点 市場・顧客ニーズ 既存製品 焦点 買ってもらえる仕組みづくり 売り込む手段 方法 分析・創造 アクション中心 目的 継続的成長 現状の売上確保 成果 顧客満足に基づく利益 売上数量に基づく利益 セリング等と比較しマーケティングとは何かを示します。 →アクション中心のセリングと比べ、マーケティングでは「分析」が重要 ※グロービス・マネジメント・インスティテュート「新版MBAマーケティング」(ダイヤモンド社)より
  5. 5. takemikami’s note – http://takemikami.com/ マーケティングデータ分析の全体像 5Copyright (C) 2016 Takeshi Mikami. All rights reserved. マーケティングとデータ分析 マーケティングデータ分析における、分析基盤の位置づけを示します。 顧客との チャネル データ分析 顧客 社会・ 業界 リアル広告 イベント ・・・ Data Warehouse SNS 収集施策 実店舗 収 集 DataMart マーケター データサイエンティスト Web広告ECサイト BIツール 機械学習 本スライドでは、データの収集・加工・分析を 分析基盤として説明 加工
  6. 6. takemikami’s note – http://takemikami.com/ データ分析のアプローチ • データ分析のアプーチは以下の3つに分類できる 6Copyright (C) 2016 Takeshi Mikami. All rights reserved. マーケティングとデータ分析 3つのデータ分析のアプローチを紹介します。 アプローチ 説明 例 手法 説明的データ分析 (descriptive) 事実を説明する・見 つける ・どんな人が何を買っているか? ・ある広告がどれだけ売上に貢献して いるか? ・BI ・データ マイニング 予測的データ分析 (predictive) (未来や欠測値を) 予測する ・ある商品群を閲覧した人の性別は? ・広告を出稿したら、どれだけ売上が 上がるか? ・統計解析 ・機械学習 指示的データ分析 (prescriptive) 最適解を探す ・利益を最大化するための、最適な仕 入れ量は? ・売上を最大化するには、どこに広告 を出稿すべきか? → 実施したい「分析のアプローチ」が何かを認識し、適切な「手法」を適用する 今日はこの部分
  7. 7. takemikami’s note – http://takemikami.com/ オンライン取引処理と分析処理 7Copyright (C) 2016 Takeshi Mikami. All rights reserved. 取引処理と分析処理 オンライン取引処理と分析処理について、イメージを示します。 受注リスト □出荷済みフラグ 注文番号:xxxx ・・・・ □入金済みフラグ 新規注文 出荷 入金更新 ✔ ✔ 更新 追加 受注リスト 10/1 ・ ・ ・ 10/31 ¥111 ¥333 ¥222 ・ ・ ・ 男 女 女 ・ ・ ・ オンライン取引処理(OLTP)のイメージ オンライン分析処理(OLAP)のイメージ 日別の受注金額推移は? 取引処理は最新の状態の管理 分析処理は対象期間の集計 異なる目的 集計 集計 注文の 男女比率は?
  8. 8. takemikami’s note – http://takemikami.com/ 取引処理用データベースの構造 • 取引処理用データベースでは、 データ構造を正規化し、一事実一箇所(1 fact in 1 place)の状態にすることで、 更新の不整合が発生しないようにする 8Copyright (C) 2016 Takeshi Mikami. All rights reserved. 取引処理と分析処理 取引処理用データベースの構造について、説明します。 注文番号 配送先住所 顧客名 商品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 正規化 取引処理は最新の状態の管理
  9. 9. takemikami’s note – http://takemikami.com/ 分析処理用データベースの構造 1/2 • 分析処理用データベースでは、 集計したい対象をfactに、切り口をdimensionとして スタースキーマの構造にする 9Copyright (C) 2016 Takeshi Mikami. All rights reserved. 取引処理と分析処理 分析処理用データベースの構造について、説明します。 分析処理は対象期間の集計 受注 受注日時 顧客番号 商品CD 販売数量 顧客 商品 店舗 店舗CD 顧客番号 商品CD 店舗CD 所在都道府県 商品種別 メーカー 性別 年齢 居住都道府県 dimension dimension dimension fact 販売価格 measure
  10. 10. takemikami’s note – http://takemikami.com/ 分析処理用データベースの構造 2/2 • 前ページのスタースキーマ構造のデータベースからは、 例として、以下のようなクロス集計を行うことができる。 10Copyright (C) 2016 Takeshi Mikami. All rights reserved. 取引処理と分析処理 分析処理用データベースの構造について、説明します。 販売数量 顧客性別:男性 顧客性別:女性 総計 商品メーカー:A社 140 7 147 商品メーカー:B社 16 35 51 総計 156 42 198 dimension measure dimension 切り口 集計
  11. 11. takemikami’s note – http://takemikami.com/ 取引処理用・分析処理用データベースの違い • 取引処理用・分析処理用データベースの違いをまとめると 11Copyright (C) 2016 Takeshi Mikami. All rights reserved. 取引処理と分析処理 取引処理用・分析処理用データベースの違いをまとめます。 取引処理用データベース 分析処理用データベース データ操作 追加・参照・更新・削除 追加・参照 データの種類 トランザクション マスター ファクト ディメンション データ構造 正規化 スタースキーマ データの状態 最新状態を保存 時系列に保存 用途 取引処理・検索 分析 クエリ発行回数 多い 少ない 1クエリの負荷 小さい(対象データの参照・更新) 大きい(大量データの集計)
  12. 12. takemikami’s note – http://takemikami.com/ 取引処理用・分析処理用データベースの分割 • 取引・分析処理用データベースを同じDBMSで運用すると、 以下のような問題が発生する – 分析クエリの結果が帰ってこない (正規化したテーブルのjoinが必要なのでクエリが複雑になりがち) – 分析クエリ実行中に、取引処理用クエリのスループットが落ちる (分析用クエリは、取引処理と比べ高負荷になりがち) – 取引データが肥大化する (分析用途を考えると、取引処理には不要な古いデータの削除ができない) 12Copyright (C) 2016 Takeshi Mikami. All rights reserved. 取引処理と分析処理 取引処理用・分析処理用データベースの分割について、説明します。 →取引処理用と分析処理用のデータベースは分けるのが現実的 ・分析処理に利用するデータベースを「データマート」 ・分析用にデータを蓄積しておくデータベースを「データウェアハウス」 と呼ぶ
  13. 13. takemikami’s note – http://takemikami.com/ マーケティングデータ分析基盤のデータフロー 13Copyright (C) 2016 Takeshi Mikami. All rights reserved. 分析基盤のデータフロー マーケティングデータ分析基盤のデータフロー概要を示します。 会計 DataMart OLAP 仕入 生産 販売 顧客 ECサイト センサー 外部データ Data Warehouse Reporting DashBoard DataMining マーケター BIツール 収集 加工・蓄積 分析 社会・業界 顧客 DataMart DataMart DataMart 取引処理用 データベース 分析処理用 データベース
  14. 14. takemikami’s note – http://takemikami.com/ 取引処理で発生するデータ • 取引処理で発生するデータには、以下のような種類がある 14Copyright (C) 2016 Takeshi Mikami. All rights reserved. データの収集 取引処理で発生するデータの種類について、以下に整理します。 マスター トランザクション ログ 発生タイミング 管理者によるデータ登 録更新 ユーザによる業務処理 の実施 システムへのアクセス 追加 ○(管理者のみ) ○ ○ 参照 ○ ○ - 更新 ○(管理者のみ) ○ - 削除 ○(管理者のみ) ○ - 例 商品、店舗 注文、問い合わせ アクセスログ →以降のスライドでデータの種類ごとの収集方法を示す
  15. 15. takemikami’s note – http://takemikami.com/ マスターデータの収集 • 想定される更新頻度ごとに、該当データのスナップショットをとる (「管理者によって登録更新」されるため、更新頻度が予想できる ) 15Copyright (C) 2016 Takeshi Mikami. All rights reserved. データの収集 マスターデータの収集方法について示します。 取引処理のデータベース マスター マスター(10/1時点) マスター(10/2時点) マスター(10/3時点) マスター(10/4時点) ・・・ スナップショット データウェアハウス
  16. 16. takemikami’s note – http://takemikami.com/ ログデータの収集 • 一定量づつ、データウェアハウスに追加ロードする(ログは追加のみのため) 16Copyright (C) 2016 Takeshi Mikami. All rights reserved. データの収集 ログデータの収集方法について示します。 取引処理のデータベース ログ ログ(10/1分) ログ(10/2分) ログ (10/3分) ログ(10/4分) ・・・ 追加 データウェアハウス
  17. 17. takemikami’s note – http://takemikami.com/ トランザクションデータの収集 • 想定される更新期間まで遡って、該当データの洗い替え (想定される更新期間=トランザクションが更新されなくなる最長リードタイム) 17Copyright (C) 2016 Takeshi Mikami. All rights reserved. データの収集 トランザクションデータの収集方法について示します。 取引処理のデータベース トランザクション トランザクション(10/1) トランザクション(10/2) トランザクション(10/3) トランザクション(10/4) ・・・ 遡って、洗い替え データウェアハウス
  18. 18. takemikami’s note – http://takemikami.com/ Data Staging Area データのステージング • 各種システムから収集したデータは、データウェアハウスにロードする前に Data Staging Areaで変換処理を行う – 単純変換: データの型などを揃える – クレンジング: 矛盾するデータなどをルールに従って修正 – 統合化: 非正規化 – 集計: 平均や合計などを計算 18Copyright (C) 2016 Takeshi Mikami. All rights reserved. データの加工・蓄積 データのステージングについて、説明します。 会計 仕入 生産 販売 顧客 Data Warehouse 収 集 ロ ド 単純変換 クレンジング 統合化 集計
  19. 19. takemikami’s note – http://takemikami.com/ データマート • データマートは、分析処理に利用するデータベースとして構築 • マーケターが利用する際にストレスを感じないように、必要な範囲のデータの みまとめてロード • 分析ニーズによって、データベース管理システムを選択 – RDB – 多次元データベース – カラムナーデータベース 19Copyright (C) 2016 Takeshi Mikami. All rights reserved. データの加工・蓄積 Data Warehouse ロ ド DataMart DataMart マーケター BIツール DataMart 分析ニーズにあわせ DataMartを構築 データマートについて、説明します。
  20. 20. takemikami’s note – http://takemikami.com/ 顧客・商品を知るレポーティング • 「顧客」「商品」を知るためには以下のようなレポートを作成 20Copyright (C) 2016 Takeshi Mikami. All rights reserved. データの分析 顧客・商品を知るためのレポーティングの視点について、説明します。 評価対象 (並べる) 順位付け (分類する) セグメント (紐づける) 相関 顧客(Audience) 購買ランキング デシル分析 RFM分析 地理的変数 人口動態変数 心理的変数 行動変数 コレスポンデンス分析 商品(Product) 購買ランキング ABC分析 カテゴリー テイスト ブランド アソシエーション分析 マーケットバスケット分析 ※顧客のセグメントの補足 地理的変数(ジオグラフィック):地域、気候etc 人口動態変数(デモグラフィック):年齢、性別、職業etc 心理的変数(サイコグラフィック):好み、ライフスタイルetc 行動変数(アクティビティ):購入頻度、ロイヤリティetc ※商品のセグメントの補足 カテゴリー(商品カテゴリーetc) テイスト(サイズ、色、形etc) ブランド(メーカー、キャラクターetc)
  21. 21. takemikami’s note – http://takemikami.com/ BIツール(OLAPツール) • ドリルダウン:ディメンションの階層を掘り下げて見る • スライシング:対象を絞り込んで見る • ダイシング:多次元データベース回転させ別の側面を見る 21Copyright (C) 2016 Takeshi Mikami. All rights reserved. データの分析 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 … ドリルダウン ダイシング スライシング 地域ではなく、商品を見る 期間を 掘り下げる 全商品でなく、特定商品で絞る
  22. 22. takemikami’s note – http://takemikami.com/ データマイニング:クラス分類・クラスタリング 22Copyright (C) 2016 Takeshi Mikami. All rights reserved. データの分析 クラス分類とクラスタリングについて、紹介します。 クラス分類(classification) クラスタリング(clustering) 教師 教師あり 教師なし 説明 与えられたデータを 適切なクラスに振り分ける 与えられたデータを 複数のグループ分ける イメージ 既存データを元に作ったルールで 新規データを振り分ける データの特徴を元に 意味あるグループが無いか見つける A ルール B C
  23. 23. takemikami’s note – http://takemikami.com/ データマイニング:アソシエーションルール 23Copyright (C) 2016 Takeshi Mikami. All rights reserved. データの分析 アソシエーションルールについて、紹介します。 台北 バンコク ホノルル グァム 旅行者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の旅先別の旅行回数 ある旅行先を旅行した人が、 他にどの旅行先にいく傾向があるかを分析 ※ここでは、コサイン類似度(cosine similarity)を使って類似度を計算しています。
  24. 24. takemikami’s note – http://takemikami.com/ 参考文献リスト • 丸山宏・山田敦・神谷直木「データサイエンティスト・ハンドブック」 近代科学社 2015 • 平井明夫「BIシステム構築実践入門 DBデータ活用/分析の基礎とビジネスへ の応用」 翔泳社 2005 • 鈴木健司「データウェアハウスがわかる本」 オーム社 2000 24Copyright (C) 2016 Takeshi Mikami. All rights reserved. 付録 本資料作成にあたって参考にした文献リストです。

×