大規模サイトを支えるビッグデータプラットフォーム技術

8,675 views

Published on

Published in: Technology
0 Comments
41 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
8,675
On SlideShare
0
From Embeds
0
Number of Embeds
2,403
Actions
Shares
0
Downloads
72
Comments
0
Likes
41
Embeds 0
No embeds

No notes for slide

大規模サイトを支えるビッグデータプラットフォーム技術

  1. 1. 1Privileged and Confidential 大規模サイトを支える ビッグデータ プラットフォーム技術 遠峯 康夫 データソリューション本部 ヤフー株式会社
  2. 2. 自己紹介 Privileged and Confidential 2 遠峯 康夫(とおみね やすお) 事業戦略統括本部 データソリューション本部 データインフラ開発部 2010年 新卒入社 Hadoopクラスタ立ち上げの部署に配属 2012年 データソリューション配属 Hadoop、リアルタイム処理基盤などを担当
  3. 3. Privileged and Confidential 3 is
  4. 4. Privileged and Confidential 4 … … …
  5. 5. Privileged and Confidential 5 … … … あらゆるジャンルの ビッグデータを保有
  6. 6. 目次 Privileged and Confidential 6 月間総ページビュー数 (2013年1-3月平均)
  7. 7. Privileged and Confidential 7 年間ユニーク検索クエリ数 (Yahoo! JAPAN調べ)
  8. 8. ビッグデータはユーザーのために利活用 Privileged and Confidential 8 ページビュー 広告ログ 検索クエリ 購買履歴 データ 処理 ・・・ アクセス解析 効果測定 日本語処理 マルチメディア処理 レコメンデーション ターゲティング データフィード ! ユーザー属性 ビッグデータはユーザーの課題解決につながる
  9. 9. 利活用事例 Privileged and Confidential 9 サービス改善
  10. 10. 利活用事例 Privileged and Confidential 10 縦22ピクセル 縦28ピクセル サービス改善
  11. 11. 利活用事例 Privileged and Confidential 11 縦22ピクセル 縦28ピクセル サービス改善
  12. 12. 利活用事例 Privileged and Confidential 12 ¥ ターゲティング広告 PR 閲覧 検索キーワード 購買 広告 閲覧/クリック … 興味関心を推定し 最適な広告を掲出
  13. 13. 利活用事例 Privileged and Confidential 13 レコメンデーション キーワード入力補助 音声アシスト (音声認識、意図解析)
  14. 14. 利活用事例 Privileged and Confidential 14 アクセス解析 マーケットインテリジェンス
  15. 15. 利活用事例 Privileged and Confidential 15 アクセス解析 マーケットインテリジェンス
  16. 16. 利活用事例 Privileged and Confidential 16 ビッグデータレポート
  17. 17. 目次 Privileged and Confidential 17 どのようなシステムでデータを 処理しているのか?
  18. 18. データインフラ概要 Privileged and Confidential 18 ・ ・ ・ Storm 生成 収集 格納・処理 利活用
  19. 19. Privileged and Confidential 19 Yahoo! JAPANの Hadoopについて
  20. 20. Yahoo! JAPANのHadoopについて – 目次 Privileged and Confidential 20 1. Yahoo! JAPANのHadoop構成 2. Yahoo! JAPANのHadoop規模 3. Yahoo! JAPANのHadoopの特色 4. チューニング事例 5. 機材の選び方 6. 今後の展望
  21. 21. Privileged and Confidential 21 Yahoo! JAPANの Hadoop構成
  22. 22. Yahoo! JAPANのHadoop構成 – クラスタ Privileged and Confidential 22 本番系:2クラスタ Production Cluster1 開発系:6クラスタ Production Cluster2 開発系は本番と比べると非常に小さいクラスタ 次期投入バージョンの検証なども実施
  23. 23. Yahoo! JAPANのHadoop構成 – エコシステム Privileged and Confidential 23 Oozie,Pig,Hive等のエコシステムを活用
  24. 24. Hadoopを中心とした周辺システムとの連携 Privileged and Confidential 24 Storm DataHighway データ入力 一次加工データ 分析用データ連携
  25. 25. DataHighwayについて Privileged and Confidential 25 Storm DataHighway データ入力 一次加工データ 分析用データ連携
  26. 26. DataHighwayについて Privileged and Confidential 26 とは? Yahoo! JAPANで利用しているログ収集プロダクト 全てのWeblogを回収する仕組み 大量のデータを処理できる環境に運ぶために 必須の仕組み DataHighwayの規模 ・回収先:約8,500台 ・データ転送量:約13TB/day DataHighway
  27. 27. Stormについて Privileged and Confidential 27 Storm DataHighway データ入力 一次加工データ 分析用データ連携
  28. 28. Stormについて Privileged and Confidential 28 Stormとは? Twitter社がOSSとして公開している、 分散ストリーム処理プラットフォーム (リアルタイムに)逐次流れてくるデータを 即時に処理していこうという仕組み。 Yahoo! JAPANでの活用例 ・各ページのリンクのクリック速報 ・広告改善のための一次データ加工 ・スマートフォンアプリのエラー速報 など
  29. 29. Teradataについて Privileged and Confidential 29 Storm DataHighway データ入力 一次加工データ 分析用データ連携
  30. 30. Teradataについて Privileged and Confidential 30 とは? Teradata社の商用RDBMS 並列分散処理で、高速にSQLを実行できる Yahoo! JAPANでは、 主にアナリストの分析用途として活用 Yahoo! JAPANでの活用例 ・広告レポートの抽出 ・広告モデルの効果測定 など
  31. 31. Hadoopだけではなく適切な役割分担が必要 Privileged and Confidential 31 Storm ・大規模バッチ処理 ・大規模アドホック処理 ・大量データの蓄積 ・リアルタイム処理 ・逐次流れるデータの一次加工 ・大規模な結合処理 ・高速なアドホック分析処理
  32. 32. Privileged and Confidential 32 Yahoo! JAPANの Hadoopの規模
  33. 33. Yahoo! JAPANのHadoop規模 Privileged and Confidential 33 約3,500台 その規模感は?
  34. 34. Yahoo! JAPANのHadoop規模感 Privileged and Confidential 34 ・1日に故障するサーバ台数 約1.5台/day ・1日にRead/Writeされるデータ量 Read:約750TB/day Write:約60TB/day ・1日に処理されるJobの積算時間 約1,000時間/day
  35. 35. Privileged and Confidential 35 Yahoo! JAPANの Hadoopの特色
  36. 36. Yahoo! JAPANのHadoop特色 Privileged and Confidential 36 400ユーザを超える規模での マルチテナンシー運用
  37. 37. どれくらいマルチテナンシー? Privileged and Confidential 37 ・平均同時実行Job数 ・同時最大実行ユーザ数 ・最大同時実行Job数 約40Job 120Job超 約30ユーザ
  38. 38. マルチテナンシーの難しさ Privileged and Confidential 38 いかに安定して マルチテナント運用を行うか
  39. 39. 状況の可視化 Privileged and Confidential 39 リソース使用状況の可視化 ある一日の利用状況 グラフの色でどの部署(ユーザ)がどの程度利用しているかを可視化 最大能力 使用量
  40. 40. 状況の可視化 Privileged and Confidential 40 もちろん、曜日によって使われ方も違う 濃青は主に個人ユーザのアドホック利用 土日はあまり使われていないのがわかる
  41. 41. マルチテナントでうまく回すために Privileged and Confidential 41 ・利用者による一定の自治 ・リソースキャパシティの定期的な見直し ・スケジューラ設定のチューニング 先の可視化グラフをユーザに見せ、 空いている時間帯を自ら選んでもらう。 部署毎に利用できるリソースの量に違いを持たせる。 利用率などを見て定期的に見直し。 Job同士のリソースの分け方に最適値はない。 トライアンドエラーで最も良いものを探し続ける。
  42. 42. Privileged and Confidential 42 Yahoo! JAPANでの チューニング事例
  43. 43. チューニングの内容 Privileged and Confidential 43 タスクslot数の最適化 タスクslot数とは? 単純に言うと、どれだけHadoopで 並列処理をさせるかの指標 これを多く出来れば、 同じ機材でより処理効率が高まる。 ここの高さを高くするということ
  44. 44. チューニングの一例 – 現状の分析 Privileged and Confidential 44 様々な指標を確認 ・当然、個別のノードの指標(CPU,Mem,Disk等)は重要 ・個別のノードだけでなく、 システム全体の指標(スイッチのトラフィック等)もとても重要
  45. 45. チューニングの一例 – 気をつける項目の一例 Privileged and Confidential 45 気をつける項目の一例 ・個別のノード(計算ノード側) ・CPU(特にwaitIO) ・Memory ・Disk(IObusy, queue) ・LoadAverage ・インターフェーストラフィック ・システム全体(スイッチ、マスタノード等) ・スイッチトラフィック ・マスタノードリソース(CPU, Mem, etc…) 個別のノードの指標に集中しすぎると、 システム全体のデグレに気付かない可能性がある
  46. 46. チューニングの一例 – 結果 Privileged and Confidential 46 チューニングの成果 チューニング実施 実施後の最大性能 50%向上
  47. 47. Privileged and Confidential 47 機材の選び方
  48. 48. 「コモディティ」が大切 Privileged and Confidential 48 コモディティな機材を選ぶ コモディティ = 低性能・低価格 ディスク:CPUコア数 メモリ:CPUコア数 これらの比率に特に注意して選定 HBase等、使うエコシステムは事前に考えておく コモディティ = 最高のコスパ
  49. 49. Yahoo! JAPANで使っている機材の一例 Privileged and Confidential 49 メモリ : 64GB CPU : 12コア24スレッド ディスク : 3TB × 4ディスク Yahoo! JAPANでも当初それに倣い構成を計画 ディスクIOがネックになると言うのがHadoopのセオリー 定期的な計測により、ディスクを重視しない(CPU重視) のYahoo! JAPANの現在に合った構成に 処理に応じた適切な構成を選択する必要がある
  50. 50. Privileged and Confidential 50 今後の展望
  51. 51. 今後の課題 Privileged and Confidential 51 安定性 基本的に安定的に運用できているが、 単一障害点(SPOF)があるのがネック 拡張性 MapReduceだけでは 今後の処理ニーズに対応しきれない 新しいフレームワークの模索の必要性
  52. 52. 今後の展開の一つのケースとして Privileged and Confidential 52 Hadoop-2.xの導入 単一障害点(SPOF)であったNameNodeの可用性が向上 より信頼のおけるシステムへ ・NameNode-HA ・YARN JobTrackerというSPOFのあったアーキテクチャを改良 全くJobが動かせなくなる可能性を低減 MapReduceのみならない多様なフレームワークの可能性 ※YARNの安定にはもう少し時間がかかりそうですが
  53. 53. Privileged and Confidential 53 Ready?
  54. 54. 目次 Privileged and Confidential 54 どのようにしてビッグデータを 利活用しているのか? 全員がデータに触れることが重要 データは一部の人だけのものではない
  55. 55. 目次 Privileged and Confidential 55 どのようにしてビッグデータを 利活用しているのか? 全員がデータに触れられる環境
  56. 56. まとめ Privileged and Confidential 56 ・Yahoo! JAPANはあらゆるジャンルの ビッグデータを保有 ・Hadoopを中心としたデータ処理システム を構築、運用 ・データを効果的に利活用するには 技術面だけでなく組織面での整備も必要
  57. 57. Privileged and Confidential 57 データで、ユーザーファーストを実現
  58. 58. Privileged and Confidential 58

×