SlideShare a Scribd company logo
ビッグデータの話
桑野 章弘
雑か
MongoDBの可能性の話
桑野 章弘
自己紹介
• 桑野 章弘
• 目黒のSA
• Twitter: @kuwa_tw
• 属性
• MongoDB 芸人
• 息子がかわいい芸人
ElastiCacheセミナー
• やります!!!!
• おらにえさん
• 私
• サイバーエージェントの小貫様
• の3名!!!
ElastiCacheセミナー
• やります!!!!
• @oranie さん
• 私(@kuwa_tw)
• サイバーエージェントの小貫様
• の3名!!!
CAの社内イベントで
はありません!!!
MongoDB
解散!!!
MongoDB
• ご存知MongoDB
• ドキュメントストアのNoSQL
• JavaScriptでクエリがかける
• 冗長化もシャーディングもある
• Version3.2が最新
自己紹介
ログを貯めるなと言っただ
だからログを貯めるな
と言っただろう!
と、いいたい所なんで
すが
本当に今のMongoDB
でもログを貯めちゃ
ダメなのか?
ちゅーことで
今日の話
MongoDB
にログを貯めてみる
ビッグデータ!
(勢い)
ストレージエンジン
• MMAPv1とWiredTiger
• MMAPv1は全ての元凶
• WiredTigerは救世主になるのか
ためしてみること
• キャッシュ以上のアクセスが頻発した
場合にどのくらい耐えられるのか
• データBulkInsert
• 大きいデータのRead
実行環境
• MongoDBサーバ
• c3.large
• 負荷実行サーバ
• c3.8xlarge
BulkInsert環境
• 160000000(一億六千万)オブジェク
ト
• 1スレッド並列
データインサート
• MMAPv1
• WiredTiger
MMAPv1
• 完了まで8時間半程度
• 徐々にキャッシュの改廃が追いつかな
くなりスローダウン
• 80000->2000tpsへ…
WiredTiger
• 完了まで2時間半
• 最初より遅くなってはくるが、コンス
タントに速度は出ている
• 70000->12000tps
MMAPは
スローダウン
設定した2GBのキャッシュ+
Dirtyなメモリの容量
MMAPへのデータ改廃が増
えるにしたがってReadが支
配的になる
Read環境
• 160000000(一億六千万)オブジェク
トへのアクセス
• 10000オブジェクトのレンジ取得
• 100スレッド並列
• 多めのオブジェクト数を少なめの並
列度想定
Read
• MMAPv1
• WiredTiger
MMAPv1
• 10tps程度を安定して実行
• io waitが80%と支配的
WiredTiger
• 10tps程度を安定して実行
• io waitが60%で持ちこたえている
• たまーに30secくらいのすごい遅いクエ
リがあるが、平均的には早い
約2倍の
スループット
io waitが80%
キャッシュ特性の違
い
処理はどちらも
できてる
いい話で終わると思った?
検証時に食らった事
• CacheGBを間違えて実メモリより
CacheGB増やしたらOOM
• CacheGBを実メモリギリギリにしたら
OOM
• Aggregate Frameworkを複数同時にか
けた結果OOM
んだけOOMすんねん!!
から油断するなと言っただろ
そして
この画像つかいすぎ
結論
S3にexportして
RedShiftかEMR(r
y
も、いいんですが
WiredTigerであればロ
グ貯めてもある程度
耐えられる
(こともある)
今までログに使えなく
て困ってた方はバー
ジョンアップどうぞ
!
(根性があれば)
れっつらもんご!
ElastiCacheセミナー
• やります!!!!
• おらにえさん
• 私
• サイバーエージェントの小貫様
• の3名!!!

More Related Content

MongoDBの可能性の話