VIOPSで発表
参考
id:syuu1228さんやid:koichiiseさんに会って色々話したり,知らない人とも交流ができてとても楽しかったです.皆さんありがとうございました.
スライドはslideshareに上げたけれども,何故かフォーマットがおかしくなってるようです.あしからず.
未踏ユース一次審査通過
無事に通過したようです。
二次審査も気合いを入れて頑張りたいと思います。
『仮想化インフラワークショップ04 〜クラウドDAY〜』にて発表します
招待講演という形で、「現役高校生が実装するSkip Graph with Erlang」と題した発表を行うことになりました。P2P構造化オーバーレイネットワークの一つであるSkip Graphと並列プログラミング言語Erlangについて話す予定です。
16:20-17:20 詳解!クラウド技術 〜システム構造から見る技術理解〜
B: 現役高校生が実装するSkip Graph with Erlang (千々和 大輝 氏)
今年のInterop2009クラウドコンピューティングコンペティションに応募し、最終選考を通過してライブデモを実施した「範囲検索ができるキーバリュー型データストア」は、Skip GraphアルゴリズムをErlangという並列処理用関数型で実装したシステムである。本セッションではこの実装を行なった本人である現役高校1年生の千々和大輝氏によるシステムや実装について解説する。
http://www.viops.jp/viops-meetings/viops-4-workshop.html
NTTコミュニケーションズ株式会社や株式会社ライブドア、ヴイエムウェア株式会社などの大手企業の方々によるクラウドコンピューティング最新動向や管理手法に関する講演も行われるようなので、この辺の技術を本気で勉強したい人は是非参加してみると良いと思います。
自分は18:00から行われる懇親会にも参加する予定なので、見かけたら声を掛けてもらえると嬉しいです。
日 時: 09年12月11日(金) 10:00〜17:30 (開場 9:30)
場 所: 横浜市港北区日吉4-1-1 慶應義塾協生館2F 藤原洋記念ホール
慶應義塾協生館東急東横線、東急目黒線 日吉駅より徒歩1分
横浜市営地下鉄グリーンライン 日吉駅より徒歩1分
http://www.viops.jp/viops-meetings/viops-4-workshop.html
セキュリティ&プログラミングキャンプ2009
言語組に参加してきました。
僕は『Ruby1.9のGCにおける効率的なメモリ管理』というのをやりましたが、それはまた別のエントリーで。
キャンプ中の様子は既に色々なブログでまとめられているので、キャンプで出会った人たちとの思い出の一部を書きます。
- ぱすた(id:Pasta-K)
- ういさん(id:uiureo)
- まんでるさん(id:mandel59)
- 井上さん(id:InoHiro)
- 稲付さん
- 結構無口な人
- 課題を一緒にやった
- キーボード打つのが速くて、カーソルの移動は行番号指定
- vimを使わせるとすごいことになりそう
- 矢口さん(id:yayugu)
- 会場に到着して最初に会った言語組の人
- 父親がプログラマで、「父のC++のコード読んだけど分からなかった」
- SICPの翻訳プロジェクトをやってる(SICPを訳してみたよ - アットウィキ)
- ruby-rcを読み込むオプションの追加
- 長田さん
- 演算子メソッド名に全角が使えない問題を修正した
- あまり話せなくて残念だった
- 金井くん(id:CanI)
- 中学3年生
- これまた面白い人
- pastakよりも背が高かった
- 計算上定数となるマクロを変数に格納してRuby1.9処理系を高速化
- 徳網さん(id:pokutuna)
- 自称、笑顔がチャームポイントな人
- かなりセキュアなオプションを追加
- いろいろ喋った
- 林さん(id:takuto_h)
- Cyanの作者
- 筑波大ACを受験するらしい
- 文法追加の課題を選択するだろうと思っていたら、パフォーマンス向上の課題だった
- not-equalの条件分岐のバグを修正して高速化
時間の都合で書けませんでしたが、他の参加者や講師、チューターの方々にも色々教えてもらいました。
ありがとうございました。
-
-
- -
-
余談ですが、id:yuzuharaさんとid:InoHiroさんに筑波大AC受験のコツを、id:nishiohirokazuさんに未踏ユース応募のコツを教えてもらいました。
がんばります><
8/22にdFukuoka分散処理勉強会を開催
http://sites.google.com/site/dfukuoka41/
分散処理技術全般に関する勉強会です。
現在世界中に注目されているクラウドコンピューティングやノード間の協調を容易にするRPCなど、様々なテーマを扱っています。・クラウドコンピューティング
・分散ファイルシステム
・Key Value Store
・P2P
・アドホックネットワーク
・グリッドコンピューティング
・RPC
・並列プログラミングモデル
・分散リポジトリ
・負荷分散
・etc....
テーマ: 分散処理全般
日時: 2009/08/22 14:00
場所: 九州工業大学。詳しいこと(部屋番号など)はメールでお知らせします
参加方法: http://sites.google.com/site/dfukuoka41/recuitment
皆さんの参加をお待ちしています。
また、発表者も絶賛募集中です。
耐障害性の高いConsistent Hashingを実装してみる
GitHub - dchiji/Cradle: Consistent Hashing
とあるプロジェクトの一環で作ったプログラムで、突然あるノードが落ちても一瞬でネットワーク再構成/データ復旧することが可能な程度の耐障害性が特徴です。
Consistent Hashingということで、当然のことながらデータ保持時の負荷分散もサポートしています。
実用に耐えるのは難しいかもしれませんが、簡易KVSとして試用しても良いレベルだと思っています。
利用するにはErlang処理系をインストールしておく必要があり、テストにはR12B-5を使用しました。
使用方法
準備
src/dssg.erlをダウンロードして
$ erlc dssg.erl
を実行しておきます。
新規ノードを立ち上げる
start関数を引数無しで呼び出すことにより、新規ノードを立ち上げることができます。
また、ノード追加時に必要なノード名を得るためにnode関数を呼び出します。
$ erl -sname hoge Erlang (BEAM) emulator version 5.6.5 [source] [async-threads:0] [kernel-poll:false] Eshell V5.6.5 (abort with ^G) (hoge@daiki-eeepc)1> dssg:start(). true (hoge@daiki-eeepc)2> node(). 'hoge@daiki-eeepc'
ノードの追加
node関数を呼び出して得たノード名(ここでは 'hoge@daiki-eeepc')をstart関数の引数にすることでネットワークにノードを追加することができます。
$ erl -sname foo Erlang (BEAM) emulator version 5.6.5 [source] [async-threads:0] [kernel-poll:false] Eshell V5.6.5 (abort with ^G) (foo@daiki-eeepc)1> dssg:start('hoge@daiki-eeepc'). true
データのput/get
ノードを立ち上げた状態でputv(Key, Value)もしくはgetv(Key)を呼び出すことで、値のput/getを行うことができます。
(hoge@daiki-eeepc)3> dssg:putv(a, hogehoge). {<0.37.0>, {put,1337672431590932383376536722780050290890528640001,a, hogehoge}} (hoge@daiki-eeepc)4> dssg:getv(a). {ok,{1337672431590932383376536722780050290890528640001, hogehoge}}
ノードのleave(終了方法)
^Cをすると
BREAK: (a)bort (c)ontinue (p)roc info (i)nfo (l)oaded (v)ersion (k)ill (D)b-tables (d)istribution
と表示されるので、「a」キーをタイプして処理系を終了させます。