キャリアラボラトリー勉強会【技術屋目線でのクラウドの実際と今後】#Clab2010

参加のきっかけは「IT勉強会カレンダー」です。

自分の中でまったく消化できていない「クラウド」というものを少しでも感じられたらなぁと思って参加してみました。

  1. セッション1 クラウドのスケーラビリティーを実現するアルゴリズム (井上 誠一郎氏)
    1. 一つの大きな雲に見えているクラウドには、大量のサーバーがあり、どのようなアルゴリズムでデータを分散させて保持しているのか。その一つの方法であり、P2Pなどでも使われている「分散ハッシュテーブル」についてのお話でした。winnyが大きく取り上げられていたときになんとなくP2Pの「ノード」などは少しだけ聞いたことがあったのですが、今回の説明を聞いていて、技術的にもとても面白いなぁと思いました。
    2. 「各ノードがどこまで他のノードの情報を知っているか?」や「他ノードの情報をいつどのように更新するか?」、「探したいノードまでの距離をXORで取得する」など、その仕組みについてもっと知りたいなぁと思いました。

あと、計算してみればわかる当たり前のことですが、160bitってものすごい数ですね。

    1. 詳細は、下記の公開してくださっている資料をご覧ください。

http://dev.ariel-networks.com/Members/inoue/amazon_dynamo/view

  1. セッション2 リレーショナルデータベースがなぜクラウドに使えないのか (椎名俊輔氏)
    1. 個人的には、3つのセッションの中で一番理解できたと思います。タイトルからすると、クラウド環境でRDBを使用したらこんなにもダメダメだという話になるのかと思っていましたが、実際は、「HBaseを用いたKVSの仕組み」、「ベンチマークを用いたKVSとRDBの比較」という内容だったかと記憶しています。KVSについては、以前に書いたShibuya.pm#12(http://d.hatena.ne.jp/koba04/20091205/1260013792)でも聞いていたのですが、今回の説明を聞いてまた少し興味を持ちました。ただ、KVSを使って実際何を作るのか、それがいまいちピンとはきていませんが。
    2. RDBとKVSのベンチマークの結果では、KVSの方がシンプルな検索においては全然早いのかと思っていましたが、そこまで差がなかったのは意外でした。聞き終わっての感想としては、「RDBでもいいんじゃない?」。。KVSの方が各データのつながりが薄い分、分散させやすいのかなとは思いました。

どうでもいいですが、「KVS」っていう響きは個人的には好きです。

  1. セッション3 クラウドに向いた言語を探る。アプリケーション制作の実際 (川中真耶氏)
    1. タイトルを見たときには、どういう内容になるのか予想もつかなかったセッションでした。その内容はというと、「並列プログラミング」、「クラウド環境における分散処理をプログラミング言語で実装するには」といった内容だったかと思います。「Scala」や「Erlang」など名前を知っているものの、どういう言語なのか知らなかった言語を用いた説明があり、興味深かったです。
    2. 並列処理はJavaのスレッドを少し使ってみた時点で、「これは大変だ。。。」という印象がありました。これからマルチコアを利用したプログラミングなどで意識せざるを得ない場面も出てくるのかなと思いました。
  1. 総評
    1. 「技術屋目線でのクラウドの実際と今後」というタイトルでしたが、今回のセッションを聞き終わり、結局自分の中でクラウドというものを消化しきれないままです。ですが、その一要素である「分散ハッシュテーブル」、「KVS」、「並列プログラミング」の一部を垣間見れた気はしました。
    2. 内容のレベルが自分よりも高いところにあったため、理解できたとは言い難いですが、まさに「技術屋目線」の内容でした。
    3. 「今後」と「今」。よくわかりません!


https://www.techno-brain.co.jp/careerlab/seminar/cloud_20100206/gaiyou.html