本を読む

読書やコンピュータなどに関するメモ

IIJのMapReduce実装「ddd」

 IIJのMapReduce実装である「ddd」(Distributed Database Daemon)の話を聞いてきました。立ち話なのでごくさわりの部分だけでしたが、以下にメモしておきます。素人なので、理解が間違っていたらごめんなさい。

  • インターネットバックボーンのルーターの莫大なログを集計してトラフィックを解析するために開発
  • (emasaka注:元から散らばっているログを一箇所に集めずに集計できるので、MapReduce系に向いた用途か)
  • GoogleのMapReduce論文を参考にフルスクラッチで実装
  • WinnyっぽいP2P技術も採用
  • Key-Value Storageによる分散ハッシュテーブル
  • Amazon Dynamo?
  • ノードを増やせばそれだけスケールするスケーラビリティ
  • ノードが落ちてもほかのノードにもデータがある可用性
  • マスターがなくすべてのノードが完全に対等なP2P構成
  • 1つのノードのデータは、直近の3ノードにリプリケーションされる
    • 1ノードが落ちると、それを検知したノードがもう1ノードにリプリケーション
    • リプリケーション先は、ノードIDによって決まる
      • ネットワーク的な近さを見るわけではない(emasaka注:実装としてはわかるけど、日米間リプリケーションとかは嫌だなぁ)
  • ノード探索は?
    • Winnyのような感じ
  • 処理はRubyで記述
    • Map、Shuffle、Reduceのそれぞれの処理を記述する
    • ノードの網に処理を投入すると、ノード間で伝わる

コメント

コメントの投稿

管理者にだけ表示を許可する

トラックバック

http://emasaka.blog65.fc2.com/tb.php/615-ff7fd68b

 | HOME | 

Categories

Recent Entries

Recent Comments

Recent Trackbacks

Appendix

emasaka

emasaka

フリーター。
連絡先はこのへん

Monthly


FC2Ad