IIJ Technical WEEK 2011 Day1

IIJが開催する技術イベント「IIJ Technical WEEK2011」1日目のまとめです。プログラムの詳細は以下をご覧下さい。 http://techlog.iij.ad.jp/archives/277
1
doumae @donz80

Q.Rev(と、その後継)の開発が停滞気味だけど、IIJで引き取る予定? A.引き取るかどうかは…eventmachineも評価しているので、入れ替えるかも。 #iij_tw2011 http://t.co/cI9YMP0j

2011-11-09 15:10:14
yag @yag_one

MOGOK|サービス仕様 http://t.co/4raQjODr Herokuのからの移行できそう。低遅延でベータは無償。 #iij_tw2011

2011-11-09 15:11:43
Sadayuki Furuhashi @frsyuki

EventMachine は Ruby 1.9 でスレッドと組み合わせると2秒ごとに固まるバグとシングルトンでしか使えないのが微妙で… #iij_tw2011

2011-11-09 15:12:25
doumae @donz80

MOGOKを一緒に開発してくれるエンジニア募集中!だそうです→ http://t.co/iPi6lPxP #iij_tw2011 http://t.co/cI9YMP0j

2011-11-09 15:12:27
doumae @donz80

次のセッションは「IIJの分散処理プラットフォーム「dplat」について」前橋から #iij_tw2011 http://t.co/cI9YMP0j

2011-11-09 15:15:55
山本和彦 @kazu_yamamoto

関数型のイベントやHaskellのイベントより集客性が低い。orz #iij_tw2011

2011-11-09 15:16:26
doumae @donz80

dplatは大量のデータを保持・処理するための基盤。IIJ社内で活用されていて、お客様から見えるものではない。IIJが開発した分散システムdddを使って構成されている。 #iij_tw2011 http://t.co/cI9YMP0j

2011-11-09 15:18:24
doumae @donz80

類似の機能を持ったオープンソースソフトウェアもアリが、dplat/dddはIIJ社内で独自開発している。 #iij_tw2011 http://t.co/cI9YMP0j

2011-11-09 15:20:40
doumae @donz80

dplatの機能: 分散ファイルシステムと、その上で動くMapReduce的な分散処理環境。 #iij_tw2011 http://t.co/cI9YMP0j

2011-11-09 15:21:28
doumae @donz80

dplat用例:IIJバックボーンのトラフィック情報を保持、ほぼリアルタイムに解析して、オペレーターが運用に活用 #iij_tw2011 http://t.co/cI9YMP0j

2011-11-09 15:22:11
doumae @donz80

dplat用例:お客様サイトに設置した機器のログを統計処理。お客様に提供するレポート(グラフ)の生成に活用。 #iij_tw2011 http://t.co/cI9YMP0j

2011-11-09 15:22:43
doumae @donz80

dplat用例:コンテンツ配信サービスのストレージとして(予定) 高い冗長性と、動的に容量を追加することができる。techweek3日目にデモを行う予定。 #iij_tw2011 http://t.co/cI9YMP0j

2011-11-09 15:23:43
doumae @donz80

IIJ内で一つのインフラ。IFを定義して、各社内プロジェクトにリソースを提供している。プロジェクトごとに分散システムを持つ必要がないメリットがあるが、メンテやチューニングがやりにくい部分も。 #iij_tw2011 http://t.co/cI9YMP0j

2011-11-09 15:25:25
doumae @donz80

dplatの構成要素は…夜に公開予定の発表資料でご確認ください(右記URL) #iij_tw2011 http://t.co/cI9YMP0j

2011-11-09 15:27:04
doumae @donz80

プロジェクトによって微妙にリクエストが違うので、実際には複数のクラスタを構成している。単一サイトに閉じたクラスタもあれば、複数サイトにまたがっているクラスタもある。全体のノード数は非公開。 #iij_tw2011 http://t.co/cI9YMP0j

2011-11-09 15:28:14
doumae @donz80

分散ファイルシステム:KVSをファイルシステム的に見せる。すべてのデータは異なる3つのノードに複製されて保存される。どれかノードが壊れても、データは失われない。自動的に複製数が3になるように再複製 #iij_tw2011 http://t.co/cI9YMP0j

2011-11-09 15:31:12
doumae @donz80

整合性の問題: dddでは書き込んだら変更不可。消して書き直す。消して書き直した直後に、瞬間的に整合性がとれない可能性があるが、時間が経つと整合性が取られる。 #iij_tw2011 http://t.co/cI9YMP0j

2011-11-09 15:32:47
doumae @donz80

ディザスタリカバリ: dplatでも考えている。(一般的な話として)ディザスタリカバリは「データの保全」と「システムの継続」 システムの継続はデータが保全されていることが前提。 #iij_tw2011 http://t.co/cI9YMP0j

2011-11-09 15:39:06
doumae @donz80

dplatではファイルの3ノードへの複製。すべてのノードが同じサイトに鳴らないようにしている。3ノードはすべて対等で、どれがなくなっても同じように復旧できる。 #iij_tw2011 http://t.co/cI9YMP0j

2011-11-09 15:40:18
doumae @donz80

dplatは、東京・大阪・松江に配置(松江は近日稼働) すべて電力会社が異なる。松江ではコンテナDC&外気空調を活用。 #iij_tw2011 http://t.co/cI9YMP0j

2011-11-09 15:41:37
doumae @donz80

データをどのように分散させるべきかの戦略(これは資料を見てもらった方がいいですね)3サイト分散の場合は、2ノードが同一サイトになることも、現時点では許容している。考慮ポイントではある。 #iij_tw2011 http://t.co/cI9YMP0j

2011-11-09 15:43:13
doumae @donz80

配置をどのように分散させるか。メタデータを持つ方法があるただし、メタデータサーバが単一障害点になる。(Hadoopなど…改良版が出る?)メタデータサーバを複数持つ方法もあるが、同期やサーバ間トラフィックの問題 #iij_tw2011 http://t.co/cI9YMP0j

2011-11-09 15:45:11
doumae @donz80

dplat(ddd)では、分散アルゴリズム(consistent-hashing)を使っている。メタデータの問題はないが、容量の異なるノード間にどのように分散させるかが課題。dddではweightを指定できる。 #iij_tw2011 http://t.co/cI9YMP0j

2011-11-09 15:46:37
doumae @donz80

dplat松江サイトではコンテナ型DC IZmoを使用。コンテナ1台丸ごとdddで使ってスケーラビリティテストを行った。(トラフィックデータを解析して、IPアドレス出現数をカウント) #iij_tw2011 http://t.co/cI9YMP0j

2011-11-09 15:48:43
doumae @donz80

2000ファイル,2000mapタスク同時実行。利用するノード数が増えるほど処理が早くなるが、ノードがかなり大きくなるとリニアに高速化はしない。2000タスクを200ノードで実行すると、遊ぶサーバが出る #iij_tw2011 http://t.co/cI9YMP0j

2011-11-09 15:52:18