エンジニアCROSS 2014で登壇してきた

リピ君に声をかけられて分散処理システムCROSSというセッションに登壇してきた。立場としてはRiakという分散システムを商用製品として開発している人間…というわけだが、その前にはJubatusという分散システムを(一応)最初に設計して*1、他にもお仕事でいくつか設計したり開発してきた身。事前に打ち合わせと称して一度メンバーで飲んだときが盛り上がりのピークと思われ「裏番組すごいしどーせ誰も来ないだろせいぜい特定の5人だな」と話していたのだけども、蓋を開けてみると席が8割型埋まってしまうという盛況ぶり。で、途端に緊張し始めたわけで…

とりあえず、自分が多少ウザくても主張したいことをキーノートスライドに入れておいて「ネットワークはキレるんです」とか言っておいたのだけど、それを話したところで会場はポカーンとしてしまっていたので僕の話はそこまで。いちおうPaxosとかRaftについて知ってる範囲で話をしたのだけども、それでもポカーンとしてた…反省。いちおうQuickCheck (PULSE) とJepsenという名前を出せたしそれでよかったとする。ちなみに当のJepsenは作者が飽きてしまったらしく動かないところ(RedisやMongoとか)が多いので僕のforkをこの場でコッソリお勧めしておく。

まだまだHadoop人気は衰えていないらしく、会場の参加者は(Hadoopを筆頭とする)分散システムをガチで使っている人は少なく、これから使ってみたいけどどうやったら上手く運用できるかに興味があるようだった。なのでそういう方向に誘導してみたものの、まあ運用なんて仕組みが分かっていても分からない事象が起きて風が吹けば桶屋が儲かるみたいなことが多いのでアヤシいノードがいたら落とすなり外すなり早めにやりましょうところでEC2の故障モデルってどうなんですかねアマゾンさんニヤニヤみたいな展開になり、それまで饒舌だったショットさんが急にキリッとしてきたところで会場はいよいよシリアストークへ…となったところでタイムアップ。

やはり分散システムのテストと運用は鬼門ですねニヤニヤ、運用の話はまあ出尽くしている感があるので今度分散システムのテスト勉強会でもやりますかぁ〜ってことで後はビールタイムでした。

さてこのCROSSというイベント、首都圏のITコミュニティのキーパーソンが数多く集まっていたことで、このビルが突然地盤沈下でもしようものなら日本の著名なWebサービススマホアプリの半数が滅びるだろうというような楽しいイベントであった。いつもの面子が集まるだけでなく、各クラスタの「いつもの面子」が集まって交流するという素晴らしい趣旨を実践していて、また来年もあったら参加したいものだなあと思った。ちなみに2013年も登壇しないかと声をかけられていたものの、外せない海外出張があり断念していたのでありました…今年は参加できてよかった。

分散システムのテスト

これについては、Basho謹製の riak_test という結合テスト用のフレームワーク、QuickCheckによるプロパティテスト、PULSEによるRace Conditionテストくらいの話はできる(かもしれない)。あとはJepsenをもうちょっとメンテナンスすればそれなりによいものになると思うのだけど、なんせClojureで書かれているので私には勉強が必要…。

*1:機械学習のところはサッパリなのですが