yahoo! japanとriak
DESCRIPTION
TRANSCRIPT
Yahoo! JAPAN と Riak
ヤフー株式会社
マーケティングソリューションカンパニー 新規事業本部
阪田 浩隆
2012年12月12日(水)
自己紹介
1 Copyright © 2012 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
氏名:阪田 浩隆(さかた ひろたか)
入社年:2004年10月
担当業務実績:
- 社内認証システム開発
- ビジネス系認証システム開発
- 社内ツール系開発
- 分散KVS 開発・保守・運用
- オブジェクトストレージ 開発
現在:Riak開発部隊(Yahoo! JAPAN内)
2 Copyright © 2012 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
Yahoo! JAPANにおけるKVS
3 Copyright © 2012 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
実はYahoo! JAPANには
16年のKVSの歴史がある
4 Copyright © 2012 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
創業当時(1996年)から、
データを扱うプラットフォームとして
分散KVSを使用している
※当時はまだクライアントサーバシステムが主流であり、現在のWebが主流のスタイルではなかった
• 独自開発
• 大規模データ
• 例)ユーザーデータ
• 分散処理
• スケールアウト
• 複数DCでのデータレプリケーション
5 Copyright © 2012 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
Yahoo! JAPANの技術
• 独自の技術で基盤を構築している
• Yahoo! Inc.とYahoo! JAPANで開発したコアテクノロジー を元に、強靭な基盤を築いている
• このテクノロジーを利用して、
Yahoo! JAPANのサービスは成り立っている
6 Copyright © 2012 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
Yahoo! JAPANの技術
7 Copyright © 2012 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
Yahoo! JAPANコアテクノロジー
KVS
認証システム 課金システム
広告技術 CDN
ストレージ RDBMS
強靭なコアテクノロジー
画面はサンプルです。実際の表示は異なることがあります。
Yahoo! JAPANにおける オブジェクトストレージ
8 Copyright © 2012 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
一部数値情報の公開を制限させていただいております。予めご了承ください。
実はYahoo! JAPANには・・・
オブジェクトストレージが存在します
• 独自開発
• スケールアウト
• データレプリケーション
9 Copyright © 2012 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
• 開発コンセプト(2009年7月開発スタート)
• 容量無制限
• 無限にスケールアウトする
• 安価
• とにかく利用価格を安くする
• データの集中管理
• 集中管理する事で無駄をなくし、コスト削減を徹底する
• 使いやすいI/F
• REST形式のAPIを提供
• 高パフォーマンス
• 可用性
10 Copyright © 2012 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
Yahoo! JAPAN内での利用実績(一部ご紹介)
• Yahoo!ボックス
• Yahoo!天気・災害
• Yahoo!ブックストア
• Yahoo!ロコ プレイス
11 Copyright © 2012 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
画面はサンプルです。実際の表示は異なることがあります。
実際のトラフィック
• Yahoo!ボックスサービス開始から
**~**B/day のアップロードを受けている
• サーバ台数が数千台に達している
• 数PBのデータが格納されている
12 Copyright © 2012 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
アーキテクチャ
KVS
13
API
メタ データ
CDN(大容量配信) ※Yahoo!ボックスでは未使用
アプリケーション
Farm
・・・・
Farm
・・・・
Farm
・・・・
ストレージエンジン
・・・・
Copyright © 2012 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
苦労話
• リリース当月(2011/10)のアップロード予測が**Bだったが、実際は**B以上アップロードされていた
• そのため、準備したサーバが不足し慌てて調達に奔走した
• 現在は数千台のサーバで構成されている
• 付属コンポーネントからの内部リクエストが1億強/dayとなっていたため、APIが高負荷になってしまった
• その後改善しました
14 Copyright © 2012 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
Riak CSを利用しての
Yahoo! JAPANクラウドストレージ
• 2012/10月 トライアルリリース
• 2013/1月 βリリース(予定)
• 2013/3月 本番サービス開始(予定)
15 Copyright © 2012 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
導入事例(先行リリース)
• LOHACO(アスクル様)
16 Copyright © 2012 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
Riak CSで 画像配信
システム構成
17 Copyright © 2012 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
Riak CS Cluster
Riak EDS Cluster 1
CDN
Riak CS Cluster
Riak EDS Cluster 2 レプリケーション
障害発生時のみ
データ
• 登録件数
• 約20万件弱 (データ移行は3時間程度)
• ファイルの種類/サイズ
• 画像データ
• 5k~500k
• リクエスト数
• ***req/sec
• CDNキャッシュヒット率
• 97%
• レスポンス
• 10ms~80ms (CDNにキャッシュされている状態だと10ms程度)
18 Copyright © 2012 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
構築~リリースまでの期間
• 構成検討、各種調整(NW、サーバ調達)
• 1週間
• 構築&テスト・リリース
• 構築:1日
• テスト&リリース:1週間
問題になったところ
• データをフラットに配置したところ、
一覧取得できなくなった
• 解決策:ディレクトリを分けてもらった
• フラットに配置しても一覧取得できるように現在Basho社が爆速対応中
19 Copyright © 2012 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
なぜRiakなのか
20 Copyright © 2012 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
運用コスト削減
• 運用コストがかからないような構成になっている
• コンポーネント数が少ない
• 設定が項目が少ない
Yahoo! JAPANで培ったKVSのノウハウを、ダイレクトに活かせそうなアーキテクチャだった
• +一緒に開発できそうな人たちだった
求められる機能の違い
• C向け、B向けで求められる機能が違うため、
全てを1ソースで管理していくのは困難だった
21 Copyright © 2012 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
S3互換のオブジェクトストレージが必要だった
• ユーザーニーズに早急に応える必要があった
• 独自のオブジェクトストレージを改修する事も可能だったが、時間を節約したかった
KVSがストレージエンジンになる
• KVS単体でもストレージエンジンになりえるようになっている
• ただしサーバ台数が増えた時にどうするのか検討が必要
22 Copyright © 2012 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
今後
23 Copyright © 2012 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
24 Copyright © 2012 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
Yahoo! JAPANグループのクラウドサービス
ネットワーク&インフラ Yahoo! JAPAN ネットワーク網
データセンター 拠点 拠点
コンピューティング 物理サーバ 仮想サーバ
サービス CDN
アプリケーション
ストレージ
メール Web プレビュー ・・・
拠点 拠点
DB
IDCフロンティア ネットワーク網 社内 KVS
ログイン 認証
決済
地図 連携
広告
スマホ
データ解析
Yahoo! JAPANのテクノロジーが下支え
他社 連携
ポイント
1. クラウド基盤としての展開
2. 社内利用の促進
3. ビッグデータインフラとしての活用
KVS
Storage Hadoop
RDS ※RDBMS
仮想サーバ 仮想NW
医療
小売
企業から 発生するデータ
Webでのデータ ※EC,行動ログ等
通信ログ
小売
ライフログ
ビックデータインフラ
Q&A
26 Copyright © 2012 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
ご清聴ありがとうございました
27 Copyright © 2012 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止