リクルート式ビッグデータの活用法

        株式会社リクルート
      MIT システム基盤推進室
 プロフェッショナルエンジニアリンググループ

        石川 信行
はじめにですが。


     主な事業会社   (株)リクルートキャリア

              (株)リクルートジョブズ

              (株)リクルートスタッフィング

(株)リクルート      (株)リクルート住まいカンパニー
   ホールディングス
              (株)リクルートライフスタイル

              (株)リクルートマーケティングパートナーズ

              (株)スタッフサービス・ホールディングス


     機能会社     (株)リクルートアドミニストレーション

              (株)リクルートコミュニケーションズ

              (株)リクルートテクノロジーズ

                           1
ビッグデータグループ新設

 ビッグデータグループが新設されました。



(「コンサル型」+「エンジニア型」)×マーケター

               事業担当者
ビッグデータグループ     ≒マーケター
   コンサル型           エンジニア型


分析者
                       Hadoopエンジニ
                       ア
リクルート式ビッグデータの活用法

   株式会社リクルートテクノロジーズ
      IT ソリューション部
      ビッグデータグループ

        石川 信行
自己紹介
□名前
石川 信行
(   ground_beetle)

□出身
福島県 いわき市
大学時代は、害虫制御学および生物統計学専攻

□経歴
・2009年リクルート新卒入社
・営業支援システムのコーダー(java)、DBAとして参加。
・2010年Hadoop推進担当
・現Hadoop案件推進・新用途開発チームリーダー

□ 趣味
・外国産カブト虫飼育
・スキューバダイビング
・海水魚飼育
アジェンダ


1
     • リクルートについて

2
     • ビッグデータへの取り組みの現状

3
     • 利活用事例紹介

4
     • 課題の克服

5
     • まとめ
リクルートについて
ビジネスモデル

  カスタマー                クライアント




                  ◆マーケットの声を反映
◆カスタマー自身も気づいていない した
新しい発見や可能性の提示      商品・サービスの向上提
                  案
◆安心して選択や行動ができるよう ◆未だ見ぬカスタマーと
な                 の
客観的な評価や評判を提供      出会いを提供(集客支
                  援)
  その人らしい最適な選択と   クライアントの事業が発展、
  意思決定ができるようサポート 成長できるよう伴走
リクルートについて(事業概要)


                                  ※サービスの一部です


      ライフイベント領域          ライフスタイル領域

                             旅行
                車購入

           住宅購入        お稽古        ファッション

           転職
  出産/育児
      結婚                時事        飲食
  就職
 進学

  将来を考えて選択と意思決定       日常の中にある「何を食べよう
  をする大きな「イベント」              か」
                      といった、小さな選択と意思決定
リクルートについて(会社概要)




創   業 : 1960年3月31日
資本金 : 30億264万円
売上高 : 3,720億57百万円(2011年4月1日~2012年3月31日)
連結売上高 : 8,066億61百万円(2011年4月1日~2012年3月31日)
従業員数 : 5,974名 (2012年4月1日現在)男性:2619名・女性:3355名
代表者 : 代表取締役社長        峰岸 真澄
ビッグデータへの取り組みの現状
新技術のR&D取り組みステップ



           Gate Review   Gate Review   Gate Review



 R-Stage   Dev-Stage        β-Stage     運用-Stage

・技術要素調査    ・効果的な仕組       ・正式にフィジ       ・実運用へ
・技術の実態を    みとしてプレ実       ビリティスタ
 把握する      装             ディとして推進
           ・活用方法をさ       ~展開をする
           らに開拓


           ビッグデー
              タ
           (Hadoop)
リクルートが使用するHadoopとは?


                      大規模データを効率的に分散処理・管理する
                      ためのソフトウェア基盤(JAVAフレームワーク)
                      ・MapReduce(Javaプログラム) これらで構成
                      ・HDFS(分散ファイルシステム)
            マスタ
            サーバー


        MapReduce                          MAP
        (javaプログラム)



                                          SHUFFLE




             スレーブ
                                          REDUCE
             サーバー


     HDFS
 (分散ファイルシステム)
システム構成概要



リサーチ段           実験・検証         第1世代環境       第2世代環境
  階
                     20台           120台    40台     (今後拡
  3~4台                                            大)
                             プライベートクラウド    プライベートクラウド




                            部分的な          完全なる
  実験機                ラボ環境
                            環境融合          環境融合


2008~9        2010          2011          2012

Webサイトのバッチ   システム移行などで     商用利用が可能な設計    プライベートクラウド
処理移植など、       余ったハードウェアを    (セキュリティなど非    環境との融合を進めた
処理性能の評価・      再利用           機能面)を施した環境    環境
研究

                                                 イマココ
システム構成概要

                                                  第1世代                                                      第2世代

       Apache Hadoop / CDH                                         MapR / GreenplumMR
                     Heartbeat + DRBD



MasterNode1    MasterNode2    MasterNode3    MasterNode4     Node1         Node2             Node3      Node4
 JobTracker                                   JobTracker      CLDB          CLDB             CLDB        CLDB

                NameNode                      NameNode      JobTracker    JobTracker     JobTracker    JobTracker
                               Secondary      Secondary     TaskTracker   TaskTracker    TaskTracker   TaskTracker
                               NameNode       NameNode       FileServer    FileServer     FileServer    FileServer

                                                                                    Warden


SlaveNode1     SlaveNode2     SlaveNode3     SlaveNode4      Node5         Node6             Node7      Node8

 TaskTracker    TaskTracker    TaskTracker    TaskTracker
                                                              CLDB          CLDB             CLDB        CLDB

                                                            JobTracker    JobTracker     JobTracker    JobTracker
 DataNode       DataNode       DataNode       DataNode
                                                            TaskTracker   TaskTracker    TaskTracker   TaskTracker
                                                             FileServer    FileServer     FileServer    FileServer




Master4台+Slave15台+batch1台の                                  3Nodeから、利用リソースに
20台構成をベースに利用リソース                                            応じて増設
に応じてSlaveを増設
利活用事例紹介
【事例紹介①】

 自動車事業
「クルマなびカウンター*」における活用事例

 *クルマなびカウンター:対面形式で車選びを支援する新サービス


         簡単 仲介
         安心
  お客様                          販売店
        無料相談
         仲介               仲介



   カーセンサー独自の品質基準による車選び
    物件や状態選定はお任せ+カーナビ/ETC+保証/アフター
   車選び~契約までのワンストップサービス
          車選び〜実車確認〜契約代行
@イオンタウン
  仙台泉大沢
どこにデータ活用がされているのか?

          車の価格設定

   条件の近いものをまとめ、一律の
保証等を付けて同一品質・同一価格を実現する


   これが難しい。なぜか?

 どのような項目でまとめれば良いか?
   最適な値段はいくらなのか?
■マーケット・商材の特殊性
 中古車マーケットは感覚的な値付けの世界=「正価」のないマーケット
 一物一価の商材。価格決定因子が複雑
 外部環境(輸出、為替、新車)からの影響値が大きい

                                  オプションは
                                  ざっと30超!


  車種/グレード/年式/走行/修復歴/ナビ/ETC/駆動方式
  /色/ミッション/排気量/車検残/禁煙車/本革シート/
  モニター/キーレス/サンルーフ/保証/整備/エリア…




➤ 統計的分析が難しい


■価格算出に求められること
 マーケット・商材の特殊性から、価格算出するために必要なこと

➤ 全データを対象にしたトライ&エラーの繰り返し
もともと、アイディアはあったが…
  組み合わせが膨大なため、車種やエリアを限定しても
  集計が困難。限定しているので、価格算出の信頼度が低い。

    本番DB
                               この集計ではダメだ…
   行動履歴
    DB
                                 やり直そう…
     外部
    データ
                          数日
     カーセンサーのデータ*:1億件/月
  オートオークションのデータ:18万件/月



                          ➤ 実現できそうもない
*月間で340万件×30オプションのand条件
既にバッチ高速化でhadoopの実用性を認識



       Hadoopを活用できるのでは?
本番DB

行動履歴      Hadoop           色々試せる!
 DB
           環境
 外部
データ


                   1時間半

       仮説→実行→検証を高速に繰り返し
          答えを導くことができた
Hadoop活用でサービス完成!
      簡単 仲介
お客様   安心               販売店




       本番DB

      行動履歴    Hadoop
       DB      環境
       外部
       データ



  毎月950車種の価格を30分で分析!
オープン後の課題に対して追加分析も。

     特定の色の車の取引価格が高く仕入れ
     が難しい!オプション料金にするかど
          うか考えている。


      距離や年式などをずらした際の
         価格変動をみたい。


        GWやお盆が売れゆきは?
      去年のシーズナリティを見たい。


   どんなに頑張って分析しても必ず課題は出てくる。
問題はこれをいかに迅速に解決できるか。事業担当者が現場で
    感じている感覚をデータですばやく証明する。
【事例紹介②】

 じゃらんリサーチセンター
じゃらんnet宿泊実行履歴とは?

• 年間6020万人泊の宿泊予約、宿泊実行
  履歴データ
 – サービス開始の2000年11月11日から約12年
   間の蓄積
 – 会員数1032万人(2012年2月末時点)
 – 契約宿泊施設数 2万2462軒
 – 国内最大級の宿泊予約サイト



   これらのデータを使って解析した結果を
地方自治体に向けて公開するセミナーを開催している。
 今年はビッグデータ解析関連の講演も行われた。
                   ムムッ…
関東への宿泊旅行者(全国):連泊地域
関東(1都6県)での人気宿泊地域の連泊・転泊動
向実態を把握する
同じ地域内での連泊は
1位横浜、2位舞浜、3位お台場、
4位箱根、5位銀座・東京




【調査概要】じゃらんnet蓄積データより、Nは旅行件数を表す。
関東圏(1都6県)以外の居住者に対する関東圏内の連泊・転泊
集計期間:2011年4月1日~2012年3月31日チェックイン分
1室2名以上での利用(レジャーユースを想定)

※連泊転泊の定義:連続した日程による同一人物による2泊以上の予約を連泊と呼ぶ。この時、2泊目の宿
泊エリアが代わった時を転泊と呼ぶ。
つまり同じエリア内にあるAホテルからBホテルに移ってもこれは連泊扱いとなる。
南関東居住者と北海道居住者の周遊宿泊状況の違い

じゃらんnet宿泊実行履歴データより
北海道居住者と南関東居住者の転泊状況の分析
(2011年7月~9月の夏季3か月)

                    – 北海道旅行者は、4割が
                      道内から、3割が南関東
                      から
                    – 北海道居住者は
                    「網走・北見・知床」と「
                    釧路・阿寒・根室・川湯・
                    屈斜路」が最多の
                    転泊組み合わせ
                    – 南関東居住者は、「旭川
                      ・層雲峡」「札幌」が最
                      多の転泊組み合わせ
  28
【事例紹介③】

 ブライダル事業
「ログデータ集計基盤」再構築における事例

 効果基盤システムの課題

 課題1   効果集計データ及びロジックが分散かつ複雑
       ➤ データ品質の悪化
 課題2   大量データ処理を高速に行う基盤が存在しない
       ➤ 集計工数の肥大化
            SCログ集
            計処理




            ログ集計       ログ集計
            処理1        処理2




         課題1 データとロジックが分散。     課題2 大量データを高
         データ品質の悪化を招く          速に扱えない
「ログデータ集計基盤」再構築における事例

 事業の分析運用面での課題

 課題3   分析は手作業中心。データ取得方法も異なる
       ➤ 分析業務の効率が悪い
 課題4   データが分散。十分な分析ができない
       ➤ 集客ほか効果増に繋がらない


            データ加工



                     課題4 データ分散により効
                     果に繋がる分析ができない

 課題3 手作業&異なるデータ取
 得方法により効率が悪い
「ログデータ集計基盤」再構築で目指したこと

 システム面で目指す状態

 理想1   効果データ・集計ロジックが集約されデータ品質が
       良い
 理想2   大量データの高速処理が可能であり、対応工数が抑
       えられる


 分析運用面で目指す状態

 理想3   効果分析業務が最適に効率化されている
 理想4   様々なデータを効果分析に利用することができる
打ち手を整理すると…


 理想1   効果データ・集計ロジックの集約
                         データの
                         一元管理

 理想2   大量データの高速処理の実現



 理想3   効果分析業務の効率化

                         大量データ
                         の高速処理
 理想4   多様なデータの分析を可能に
【システム化 対応後】
       対応前】
              既存システムD             Hadoop          EUC         既存システムE
                                                              既存システムE
既存システムA
                                           I/F

             I/F                                        集計①    集計結果
           DBデータ・ログ
                             ②
既存システムB
          ファイルなどの収集
                                           整形② 集計結果
                                  集計                                    営業・顧
                                                                        客



                       整形①                                    既存システムF
                                                              既存システムF
既存システムC               マスタデータの整形
           整形①           ③
                      やアクセスログの整                  他システム
                          形                        連携
                                           整形③          集計②
                                                               集計結果

  ASP


              既存システムG                                                    MP


 サイカタ       I/F         集計
主な効果(一部のみ紹介)

 理想1   効果データ・集計ロジックの   データ遡及工数削減
       集約              (▲60%)

 理想2   大量データの高速処理の実現   14時間の集計処理
                       →15分

 理想3   効果分析業務の効率化      分析工数の削減
                       (▲85%)

 理想4   多様なデータの分析を可能に   アトリビューション分
                       析の実現

       上記以外にも副次的な効果が多数
【事例紹介④】

 住宅事業
オーナーレポート
SUUMOで所有している大量データをつかって、クライアントへの分析商品展開、
営業側で利用するための提案ツール作成を実施。


– クライアントが物件オーナーとの接点を強化し、各種提案をスムーズに行っていただくた
  めの物件レポート作成サービス
その他にも…



          1週間分のログをクレメンタインで    約8万人に
          レコメンド計算             レコメンド



                              約20万人に
   CVRは                       レコメンド
  1.6倍に   1年半分     でレコメンド計算



                     アソシエーションルールによる
                      レコメンドエリアの算出




                  下まで閲覧すると
                 レコメンドバナー表出
リスティング分
事業A                                施策シェア分析
                                                   析
                                                               クチコミ分析
                     サイト横断
事業B    サイト間          モニタリング         レコメンド       KWD×LP分析
       13事業に対し、
       クロスUU           指標
事業C     調査                          予約分析

事業D                  メルマガ施策           BI



           年間100件超
                                                KPIモニタリン
      メール通数分析        現行応募相関        ステータス分析
事業E                                                 グ
       自然語解析         行動ターゲティング      LPO

事業F    レコメンド           ログ分析

事業G

事業H
       自然語解析
      領域間クロス
           UU
               の
      カスタマープロファイル
                     メールレコメン
                        ド
                     集客モニタリン
                        グ
                      商材分析
                                    需要予測

                                    需要予測
                                   クライアントHP分析
                                                クレンジング

                                                 レコメンド
                                                カスタマートラッキング
                                                               共通バナー



事業I
事業J
           グ
        価格分析
            データ利活用
      KPIモニタリン       アクション数予
                        測
                      レコメンド
                                    効果集計

                                   クラスタリング      クチコミ分析

       レコメンド
事業K
事業L    レコメンド                                         を展開中
      効果見立て分析
事業M                                                                     39
課題の克服

~Hadoopエコシステムを使う~
「エンジニア型」アナリストの動き方
ビッグデータ関連技術の活用方法を、技術力・インフラ基盤と共に提供し、
新たな施策を事業とともに考え実装していく
➤ アルゴリズムを「実装する」・「組み合わせる」




   しかしながら、現実はそううまくもいかない。

        いろいろ課題が絶えず出てくる。
                    エンジニア型
     事業担当者 データを抽出する工数が…
                     アナリスト
           既存のシステムに影響が…
         機械学習など分からない…etc
                 技術で実現できることを背
 事業の状況を背景とした、
                 景としたソリューションの
 新たな施策の検討、期待
そんな課題をエコシステムで解決していく
 する成果・目的の設定
                 紹介、技術力・インフラ基
                 盤の提供、活用方法の事例
                 展開や新たな用途開発など
Hadoopを選んだ理由
大規模計算処理システムとしてHadoopを選んだ理由は以下の通り。




                  スケーラブルであること


                 コストがかからないこと



   エコシステムが大きい、コミュニティが活性であること



   ある程度自由に他の製品と組み合わせが可能なこと
各種機能は「エコシステム」で簡単に利用


    RDB

問い合わせログ   PVログ
                                   レコメンド
                                    データ


           Quest® Data Connector




SQLライクな操作言語として、Hive
マイニングのライブラリとして、mahout
データ連携ツールとして、Sqoop
JOBスケジューリングツールとして、Azkaban
①Sqoop の活用
           ・DBからデータ移行に時間がか
                  かる。
               ・工数がかかる。

   ・HadoopとRDBMSとでデータをやり取りするためのしくみ
   ・Oracleデータベースへの高速接続を提供する「OraOop」など


  ・RDBMSを完全に撤廃させることなく、RDBMSと
   Hadoopでデータを共有、使い分けを可能にする
  ・複数のRDBMSによる分析基盤作りにも有効


  本番DB
                 Hadoop
                 検証環境
  ログ

    本番データから
   外部
   Hadoopデータに連
  データ
         携する
②Hive の活用
                  ・MapReduceが書けない。
                  ・移行工数を押さえたい!

  ・いわば Hadoop上で動作するRDB
  ・ SQLライクな「HiveQL」で操作、処理結果は自動的に
  MapReduceへ

  ・おもに既存機能のリプレイス系の案件で活躍する
  ・SQL → Hiveへ移行するだけで、低工数で簡単に
   高速化が実現




      見立てのために             更なる高速化のために
      「とりあえずは             一部をMapReduceへ書き
       Hiveで実装」                 換え
③mahout の活用
              ・機械学習のロジックを使いたい。
                が、難しくて実装できない。

   ・データマイニング系ロジックのJavaライブラリ
   ・「アソシエーション分析」などのアルゴリズムが用意されている

   ・協調フィルタリングや、アソシエーションルール
    に基づくレコメンドなど
   ・複数の中から最適な条件を選定することが可能
   まずは、実際のデータで動かし、試す。これが大事。




   行動履歴
    データ              レコメンド物件の
                       表示など
リクルート的ビッグデータ解析フロー。
リクルートにおけるビッグデータ解析はTryandError方式。
素早く環境を構築し、データを移行。実際のデータを用いて初回OUTPUTを
行い、結果を見ながら要件を詰めて施策へ結び付けていく。


                                       ある程度事業担
 本番DB                                  当のやりたいこ
               Hadoop
                                       とを汲み取り、
               検証環境
 ログ                                     迅速に初回
Hadoopエンジニア主                           OUTPUTを作成
   外部
    導で素早く
  データ
   データを蓄積




 効果を測定し、
エンハンスや次期           Output
新施策を検討する。                   実際のデータを         事業知見
                                  技術
                            見ながら、次の
               効果測定
                             要件を検討         分析
事業担当が自ら分析できる環境を提供
WEBGUIからHiveQLを実行できるwebhiveを公開。
これにより、事業担当者も直接かつ簡単に
ビッグデータを扱える環境が整った。

 ダブルクリックで登
 録済HiveQLを選択        HiveQLの編集
                                        とある事業では、
                                       ここ4か月で58個のク
githubからダウンロートできます!                    エリを事業担当者が
https://github.com/recruitcojp/WebHive     登録。
                                クエリ実行
今期中に、テーブル定義DL機能も追加。                    ビッグデータを操る
実際に現場で必要になった機能をどんどん追加予定。               ために自らHiveQLを
HiveQL処理結果を
                                          学ぶ姿勢も
リンク先URLよりダウン
ロード可能                                  浸透してきている。
まとめ

~今後もHadoopを使い倒す~
リクルート的ビッグデータ解析の価値とは。


         技術力      事業知見


・新しい技術の導入がし           ・こんなこともできるの
   やすく。                 ではないか。
・分析の知見も吸収。            という発想の壁の崩壊。
                分析力

   ・新しい分析手法
 (必殺技)を試しやすく!
  ・システム知見吸収
今後の展望

with 自然言語処理
                                       DWH
:Hadoop+Mahout(マイニング)+Lucene(形態素分解)ほか 活用
  ➤ クチコミ分析、レコメンドメールなどへ応用展開              or
                                      RDB


with リアルタイム分析
:Hbase、S4・STORM(リアルタイム分散処理プラットフォーム)
 ほか 活用
  ➤ リアルタイムレコメンド、フラッシュマーケティングなど


with スマートデバイス
:音声解析(Siri)・位置情報の取り込み、画像データの取り込み ほか
  ➤ ユーザ属性×GPS(行動履歴)分析による店舗情報プッシュなど

ビッグデータ&データマネジメント展