Upgrade to Pro — share decks privately, control downloads, hide ads and more …

20161026_HS2016Tokyo.pdf

 20161026_HS2016Tokyo.pdf

kensuke.soeda

October 26, 2016
Tweet

More Decks by kensuke.soeda

Other Decks in Technology

Transcript

  1. 今⽇話すこと 2 (C) Recruit Technologies Co.,Ltd. All rights reserved. DevOps

    for Hadoopの事例共有 1. ツールの紹介 2. 実際の成果 3. DevOps for Hadoopの成功要因
  2. ⾃⼰紹介 3 (C) Recruit Technologies Co.,Ltd. All rights reserved. 2012年:リクルートテクノロジーズにジョイン

    〜2014年: elasticsearch次世代検索システムインフラ設計、構築、運⽤ インフラの⾃動化に注⼒し、 Infra as Codeを普及。 〜2015年:ビッグデータ新サービス企画、開発 LeanStartupの考え⽅を元に、顧客開拓モデルの開発に従事 〜2016年:次世代Hadoop基盤の検証、構築、運⽤ SREチームを⽴ち上げ、データ解析基盤の信頼性の向上に取り組み中 Kensuke Soeda(添⽥ 健輔) Big Data Infrastructure Group Big Data Department IT Solution Division Recruit Technologies Co.,Ltd.
  3. アジェンダ 1. 会社紹介 2. Hadoop基盤とそれを⽀える体制紹介 3. DevOps for Hadoop事例紹介 1.

    ツールの紹介 2. 実際の成果 3. DevOps for Hadoopの成功要因 4. 今後の展望 4 (C) Recruit Technologies Co.,Ltd. All rights reserved.
  4. リクルートの事業領域 Life Event Area Education Job Hunt Marriage Job Change

    Home Purchase Car Purchase Child Burth Travel IT / Trend Life Style Health & Beauty Life Style Area 選択・意思決定 を⽀援する情報サービスの提供 「まだ、ここにない、出会い。」を実現する
  5. リクルートグループの⽇本国内の体制 UXD / SEO Internet Marketing Bigdata Infrastructure In-house Infrastructure

    Security System Development Technology R&D Project Management リクルートとは、 事業会社と機能会社 で構成されるグループ企業群 私が所属する会社は リクルートテクノロジーズ
  6. ソリューション開拓〜運⽤までの流れ 広範囲のビジネスに 装着し、効果を最⼤ 化させるための改善 を⾏い、事業貢献利 益を追究 ØRグループのビジネスに 短・中期的に実活⽤の可能 性がある技術をリサーチ Ø対象技術における事業化

    への検証を⾏い、評価・選 定する 開拓(実活⽤研究) 実際に事業へ適⽤ し、より広範囲に 利⽤するための型 化やスキームを構 築 実装・展開 運⽤ 実施内容 リクルートテクノロジーズ(短・中期的視野) 利益を⽬的としない中⻑期的 な視点に⽴ち、新技術や新⼿ 法の研究/発明を⾏い、論⽂ 発表することを⽬指す 要素基礎技術の研究 社外(中・⻑期的視野) 技術数の 推移イメージ 年間約200の技術をリサーチ し、約30の技術を評価・選定 年間数個〜10個の 技術を展開 運⽤フェーズまで 移⾏された技術が蓄積 無数の新技術を研究/発明
  7. リアルタイムユーザ属性推定 12 (C) Recruit Technologies Co.,Ltd. All rights reserved. リクルート

    データセンター リアルタイムに ログ送付 リアルタイム ⼤量データ受付 リアルタイム セグメント推定 推定されたセグメントに 合わせたコンテンツ表⽰ 初回訪問者 コールドスタート問題に対応し、 初回訪問時(=サービスにも最も期待しているタイミング)に最適な情報を提供 ⾃分に合った情報 が⾒つからない ⾃分が欲しい情報 が出てくる! CVR向上
  8. アジェンダ 1. 会社紹介 2. Hadoop基盤とそれを⽀える体制紹介 3. DevOps for Hadoop事例紹介 1.

    ツールの紹介 2. 実際の成果 3. DevOps for Hadoopの成功要因 4. 今後の展望 14 (C) Recruit Technologies Co.,Ltd. All rights reserved.
  9. リクルートにおけるHadoopの歴史 15 (C) Recruit Technologies Co.,Ltd. All rights reserved. 2010

    2011 2012 2013 2014 2015 2016 ⾼速集計基盤の 研究 Hadoopの 本格展開 Hadoop活⽤拡⼤ 全社BI・全社データ 集約環境の推進 Hadoopを中⼼とした DataLake構想の模索 を開始 ケースドリブンでの インフラ体制整備 次世代ビッグデータ基 盤の企画・検討 ▪秋葉原でパーツ購⼊ ▪⾃作サーバで、 試⾏錯誤 ▪11事業40案件 に適⽤ ▪Hadoopカン ファレンスの後援 ▪ほぼ前事業 に活⽤拡⼤ ▪DWH導⼊ ▪リアルタイム 研究開始 ▪分析と技術の 組織融合 ▪全社BI導⼊ ▪全社集約基盤 「出雲基盤」 の推進 ▪SQLonHadoop の導⼊推進 ▪クラウドサービス の活⽤検討 ▪Hadoopへの データ⼀元集約 の推進 ▪DevOpsの実現 に向けた体制の 整備
  10. 課題感 データ解析従事者の増加 16 (C) Recruit Technologies Co.,Ltd. All rights reserved.

    ・2012年 Bigdata グループ 創設期 66名 ・2013年 全社データ基 盤推進期 119名 ・2015年 DataLake構 想模索期 212名 2016年 10⽉現在 231名 社内のデータ活⽤ニーズの⾼まりに応じて、データ解析従事者の数が年々増加。 単純に⼈員増加のほか、⼈員⼊れ替えや業務の分割化も進み、 Hadoopならびにエコシステムの知⾒、チューニングナレッジなどが希薄化していく 傾向が⾒られていた。
  11. DataLake構想の模索 2015年よりHadoopの強み⽣かしたDataLake構想の実現を模索してきた。 l ローデータから⾃在に定義を作り、Schema on readで施策を 推進できる⾃由さとスピードの速さ l 「すべてのデータはここにある」という絶対的安⼼感とすぐ隣に あるデータとの連結容易性

    l ここにあるデータを⼀元でマネジメントできればそこから発⽣す るデータに⼀様な正確さが出る。 ※ただし、ここでいうローデータとはリクルートでいうRDBMSに格納されているような 綺麗な整形済みデータを表すのではなく、アプリケーションの⽣ログやテキスト⽂そのも の、画像、動画、⾳声、マシンログなどありとあらゆるデータを定義するものである。
  12. 事業データ データソース データ格納 プレゼンテーション 利⽤者 Hadoop エコシステム オンプレミス レポート/モニタリング Hadoop基盤構成概要

    18 (C) Recruit Technologies Co.,Ltd. All rights reserved. クラウド 外部データ IPアドレスデータ ツールバーデータ ⾏動データ ⾏動履歴情報 Push配信ログ 経営データ 経営データ エンドユーザ (エグゼ/営業 /マネージャ) ビジネスインサイト マーケター (プロデューサ/ プランナー) ⾼度分析やモデル作成 データ サイエンティスト (分析者) 機械学習やモデル実装 データ サイエンティスト (エンジニア) サービスから データを収集 サイトの アクセスログ収集 アプリの ログ収集 クエリ発⾏/⽉
  13. アジェンダ 1. 会社紹介 2. Hadoop基盤とそれを⽀える体制紹介 3. DevOps for Hadoop事例紹介 1.

    ツールの紹介 2. 実際の成果 3. DevOps for Hadoopの成功要因 4. 今後の展望 23 (C) Recruit Technologies Co.,Ltd. All rights reserved.
  14. DevOpsツール全体概要 (C) Recruit Technologies Co.,Ltd. All rights reserved. バージョン管理 チケット管理

    メトリクス可視化 開発環境 プログラムはもちろん、 コード化された構築・ 運⽤⼿順や、設定ファ イルをバージョン管理 アプリのビルド、アプ リ・ミドルウェアのデ プロイ、インフラを含 めたテストを⾃動で継 続的に実⾏ リアルタイムにリソー ス、ログ、KPIを可視 化 Biz 必要に応じて相互に 開発協⼒。 Ops Dev 発⽣する問題や、タス ク、情報を共有・管理 し、コミュニケーショ ンを円滑に! 26 本番環境 構成管理 CI / CD サンドボックス環境 各環境ごとにパラメー タを動的に変えて構成 管理
  15. n Jenkinsによるパイプライン可視化/コード化 DevOps事例紹介(1) 27 (C) Recruit Technologies Co.,Ltd. All rights

    reserved. Jenkins2.0より採⽤されたStage View により、パイプライン全体の進捗が簡単に 可視化されるようになった。 Stage View Pipeline as Code Pipeline as Codeにより、Groovyの DSLで、パイプラインをコードとしてモデ リング
  16. DevOps事例紹介(2) 28 (C) Recruit Technologies Co.,Ltd. All rights reserved. n

    ベンダー製ジョブ管理ツールの可視化 ジョブ可視化ツール データフロー可視化ツール ジョブおよびデータフローがリアルタイムに可視化されたことで、 障害検知および対応が⾼速化に寄与 内製開発ツール
  17. DevOps事例紹介(2) 29 (C) Recruit Technologies Co.,Ltd. All rights reserved. n

    ベンダー製ジョブ管理ツールの可視化の裏側 アサイン JSON 業務情報 JSON チームメンバ JSON 定義読み込み データフロー 可視化ツール バッチサーバ ジョブ管理 ツール インシデント登録 ジョブエージェント ジョブエージェント ジョブエージェント ジョブエージェント 障害情報取り込み RESTで随時登録 Bot Ops ジョブ可視化 ツール ジョブ実⾏情報取 り込み
  18. DevOps事例紹介(3) 30 (C) Recruit Technologies Co.,Ltd. All rights reserved. n

    Hadoopに特化した内製ログ集計可視化ツール ログ集計可視化ツール 多数のノードに対してのログの⼀元集約、集計を⾏い、 発⽣事象の根本原因解析で活⽤。 Ambari Log Search 順次移⾏予定 内製開発ツール
  19. (C) Recruit Technologies Co.,Ltd. All rights reserved. APIs リクルートIDにおけるユースケース 34

    Hadoop HBase 行動ログ モニタリング API 行動ログ (蓄積) DWH(Exadata) Hadoopクラスタ 事業データ 事業データ レコメンド データ 作成バッチ ログ蓄積 バッチ 事業データ ディスプレイ API レコメンド API レコメンド データ ϩά஝ੵ API アイテムAPI (アイテム情報取得) <script src... … </script> 最適なレコメンドロジックを 採⽤するために、多いときに は⼀⽇に10回程度リリース することも
  20. n カイゼントレーニング 組織メンバー全員参加での集合研修 n ⽬的 ⾃分たちの提供しているサービスの価値をあげるために、 1. 改善のやり⽅を学ぶ 2. コミュニケーションの仕⽅を学ぶ

    3. 実際にいまのプロセスを⾒える化し、全員で現状の共通 認識や課題を明らかにする 37 (C) Recruit Technologies Co.,Ltd. All rights reserved. バリューストリームマップを作成し、業務にお けるボトルネックを全員で切り分けている様⼦ ⽂化⾯での取り組み1
  21. n かんばん 開発者に負荷なく、何を、いつ、どれ位のコストをかけて開発す るかを発信、可視化する 39 (C) Recruit Technologies Co.,Ltd. All

    rights reserved. Todo Doing Waiting Done 割込タスク 計画タスク 改善タスク ⽂化⾯での取り組み3
  22. 42 (C) Recruit Technologies Co.,Ltd. All rights reserved. ツールの整備 ⽂化⾯での取り組み

    1. バージョン管理 Git等を活⽤したコードの管理による DevとOpsの情報共有 2. 継続的インテグレーション コードのビルド、テストの⼀気通貫で の連携および実施 3. 継続的デプロイメント 成果物の本番環境へのリリースの⾃動 化 4. 継続的デリバリー 1. 2. 3. を継続的に繰り返し、価値を 創出していく全体の流れを確⽴ 1. 組織の壁を超えて協⼒ができ る⾵⼟作り 2. ⾃分の仕事、他⼈の仕事、と 割り切らない 3. 情報、ナレッジを共有する 4. 現状に満⾜せず、常に改善し つづける DevOps for Hadoopの成功要因
  23. アジェンダ 1. 会社紹介 2. Hadoop基盤とそれを⽀える体制紹介 3. DevOps for Hadoop事例紹介 1.

    ツールの紹介 2. 実際の成果 3. DevOps for Hadoopの成功要因 4. 今後の展望 43 (C) Recruit Technologies Co.,Ltd. All rights reserved.
  24. Homeostasis(恒常性)を持ったOpsの実現へ 45 (C) Recruit Technologies Co.,Ltd. All rights reserved. Knowlegebase

    Prediction Correlation Analysis Auto Recovery JIRA等の外部コミュニティ情報含む これまでの運⽤知⾒をナレッジベース化 → サジェスト活⽤ クラスタ・ノードのリソースや、 データ容量の変動予測 複数コンポーネントにまたがるログ、 リソースを元にした相関分析 障害を⾃動的に検知し、 ⾃動的に復旧する 恒常性を持った AIOpsの実現へ