Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

リクルートライフスタイルのデータを支える技術

2,223 views

Published on

リクルートライフスタイルでは、飲食店や美容室の予約、旅行の予約や観光情報、ECなどみなさまの日常に密接した情報を提供し、それらから生まれる様々なデータを活用し、よりよいサービスを提供しています。
それらのデータを収集する基盤をTreasureDataなどのクラウドサービスを使用して構築しました。なぜこれらのプロダクトを選び、どのようにデータを収集しているのか、社内では収集したデータをどのように活用しているのか紹介致します。
また、現在取り組んでいるリアルタイムデータ集計処理基盤とこれからについてもお話させて頂けたらと思います。
山田 雄(株式会社リクルートライフスタイル)

Published in: Technology
  • Be the first to comment

リクルートライフスタイルのデータを支える技術

  1. 1. リクルートライフスタイルの データを支える技術 〜TreasureDataとAWSと私〜 Treasure Data Tech Talk 03/30 2016 山田 雄 ネットビジネス本部 データ基盤チーム
  2. 2. 1.自己紹介 2.リクルートライフスタイルのデータ基盤 3.TreasureDataを選んだ理由 4.Sparkを使用したストリーム基盤 5.これから 本日のアジェンダ
  3. 3. 1.自己紹介 2.リクルートライフスタイルのデータ基盤 3.TreasureDataを選んだ理由 4.Sparkを使用したストリーム基盤 5.これから 本日のアジェンダ
  4. 4. ■山田 雄(ヤマダ ユウ) 株式会社 リクルートライフスタイル ネットビジネス本部 データ基盤T Twitter:@nii_yan Blog:イクジニアブログ ・以前はフリーランスエンジニア 縁があってリクルートライフスタイルにお世話になることになった。 ビックデータ、Ruby、ビールが好き。 自己紹介
  5. 5. 会社紹介
  6. 6. Engineering for data Business with data 技術でビジネスを ドライブする Stable Infrastructure Continual Innovation+ リクルートライフスタイルにおけるエンジニアの役割
  7. 7. 1.自己紹介 2.リクルートライフスタイルのデータ基盤 3.TreasureDataを選んだ理由 4.Sparkを使用したストリーム基盤 5.これから 本日のアジェンダ
  8. 8. 約300人の分析者 データサイエンティスト IBM Netezza Amazon Redshift TreasureData ETLフレームワーク リクルートライフスタイルのデータ基盤
  9. 9. ETLフレームワーク
  10. 10. フレームワークで出来ること
  11. 11. データの活用方法
  12. 12. 1.自己紹介 2.リクルートライフスタイルのデータ基盤 3.TreasureDataを選んだ理由 4.Sparkを使用したストリーム基盤 5.これから 本日のアジェンダ
  13. 13. TreasureData以前の環境 スケールアウトしたいけど・・・ アップデートつらたん・・・ Hiveじゃ遅い・・・
  14. 14. それ全部解決します
  15. 15. スケールアウト(オンプレの場合) サーバ何買えばいいですか? ラックが空いてない・・・ ディスク容量が他のサーバと合わない・・・
  16. 16. スケールアウト(オンプレの場合) サーバ何買えばいいですか? ラックが空いてない・・・ ディスク容量が他のサーバと合わない・・・ 辛い・・・ 楽しい
  17. 17. スケールアウト(Treasureの場合)
  18. 18. アップデート(オンプレの場合) もう1つ検証用クラスタ用意する? データの同期どうしよう?distcpしてもmetaデータは・・・ アップデート後のselect結果が違う・・・ToT
  19. 19. アップデート(オンプレの場合) もう1つ検証用クラスタ用意する? データの同期どうしよう?distcpしてもmetaデータは・・・ アップデート後のselect結果が違う・・・ToT 辛い・・・ 楽しい
  20. 20. アップデート(オンプレの場合) http://www.slideshare.net/yuyamada777/cdh45-update
  21. 21. アップデート(Treasureの場合) 検証手伝いますよー! データの同期は必要ないですよー! ダウンタイムないですよー!
  22. 22. Hiveじゃ遅い(オンプレの場合) Tezにしましょう パーケットファイルにしましょう 10%早くなりました!! ToT
  23. 23. Hiveじゃ遅い(オンプレの場合) Tezにしましょう パーケットファイルにしましょう 10%早くなりました!! ToT 辛い・・・ 楽しい
  24. 24. Hiveじゃ遅い(Treasureの場合)
  25. 25. About Presto • in memoryのクエリエンジンでとにかく早い • クエリによってはHiveの100倍とか • with句やwindow関数使えて便利 • ANSI基準のSQL書けるがお作法がある • count(distinct)ダメ絶対 • order_byダメ絶対 • joinは大きいテーブルを最初に
  26. 26. Prestoを自力で運用しようとすると・・・ • アップデートが早い • coordinatorがSPOF • 1つのクエリでクラスタ全体を殺せる • アップデートにより突如クエリが動かなくなる • Bug?デグレ? • とあるアップデートでMySQLのDB見えなく なったことあり なかなか辛い・・・
  27. 27. Treasureへのデータ移行方法 Seque nceFile Seque nceFile TSV distcp HIVEで変換
  28. 28. Treasureに今後期待すること • UDF • HBase • SqoopなどのHadoopエコシステム • PrestoでHive以外のデータソースへの連携
  29. 29. 守りから攻めへ • Treasureによって守り(運用工数減)は固めら れた • 次は攻め(開発)だ!
  30. 30. 1.自己紹介 2.リクルートライフスタイルのデータ基盤 3.TreasureDataを選んだ理由 4.Sparkを使用したストリーム基盤 5.これから 本日のアジェンダ
  31. 31. 荒野で生き抜くために
  32. 32. DynamoDB Lambda API Gateway Kafka on-premises Configuration Management Monitoring Grafana Grand Design
  33. 33. DynamoDB Lambda API Gateway on-premises Configuration Management Monitoring Grafana Kafka データハブ基盤
  34. 34. Lambda API Gateway on-premises Configuration Management Monitoring Grafana Kafka DynamoDB ストリーム処理基盤
  35. 35. Kafka on-premises Configuration Management Monitoring Grafana DynamoDB Lambda API Gateway データ提供部分(API)
  36. 36. 1.自己紹介 2.リクルートライフスタイルのデータ基盤 3.TreasureDataを選んだ理由 4.Sparkを使用したストリーム基盤 5.これから 本日のアジェンダ
  37. 37. Kafkaを共通データハブとして活用 Kafka Redshift Kafka,Redshift間のデータ連携に はcamus,blueshiftを使用
  38. 38. td-ios-sdkを利用したデータ取得
  39. 39. DynamoDB Lambda API Gateway Kafka ラムダアーキテクチャに向けて Redshift
  40. 40. 1.自己紹介 2.リクルートライフスタイルのデータ基盤 3.TreasureDataを選んだ理由 4.Sparkを使用したストリーム基盤 5.これから 6.番外編 本日のアジェンダ
  41. 41. OSS
  42. 42. WE ARE HIRING!
  43. 43. ご清聴ありがとうございました

×