RubyKaigi2010スペシャルレポート

Ruby会議2010 3日目レポート[更新終了]

この記事を読むのに必要な時間:およそ 15 分

茨城県つくば市のつくば国際会議場にて日本Ruby会議2010が開催されています。本日は3日目,最終日です。本稿では,3日目の模様を随時レポートしていきます。

今年も世界各地からRubyistのみなさんが参加されています。

画像

画像

Kei Hamanakaさん,Yuichi Saotomeさん「Rubyでクラウドを便利にする方法~ニフティクラウドの事例~」

@niftyからは,WebアプリケーションエンジニアのHamanakaさんと,インフラエンジニアのSaotomeさんが登壇し,ニフティクラウドがWebアプリケーション開発をどのように変えるのかを紹介しました。

@niftyでは,ココログ広場アバウトミー@nifty TimeLineなどのRuby製・Rails製アプリケーションが数多く運営されています。いざ,Webアプリケーションを開発しようとすると,⁠インフラ設計」⁠サーバ調達」⁠ミドルウェア設定」といった下準備は避けて通れない道であり,なかなかに大変な作業が発生します。

自動化できずに人手による作業に依存してしまうと,Haas(Human as a Service)な状況になり,とてもスケールできません。こういった背景の中で,Iaas(Infrastructure as a Service)「プログラマブルなインフラ環境である」と説明し,Rubyを用いた作業の自動化について話されました。

IaaSを提供するニフティクラウドは,今月10日に開発者向けAPIの公開を開始し,プログラムによる自動化を支援しています。現在はSOAPのAPIのみですが,今後,RESTのAPIも提供される予定です。例として,Wakameとニフティクラウドを組み合わせて,負荷の状況に合わせて自動でインスタンスを生成・削除したり,設定を変更したり,といった自動運用の話が紹介されました。

ニフティクラウドの特徴として「オンデマンド」⁠従量課金」⁠伸縮可能」⁠@niftyで培った高い運用実績」をあげ,最後に「国内のクラウドサービスなので,海外のサービスに比べてレイテンシが低いです。ぜひご利用ください」と,自信をみせて紹介しました。

画像

画像

Toshiyuki Terashitaさん「Rubyによる分散ストレージシステムの実装」

発表者のTerashitaさんはリコーに所属するエンジニアで,鳥取Ruby会(tottoruby)の主催もされているそうです。リコーではquanpというオンラインストレージサービスを運営しており,数GBのファイルをアップロードできること,PDFやPhotoshopなどのファイルやドキュメントを画像化できることが特徴と紹介がありました。

quanpの初期の頃のストレージでは,RailsアプリケーションでNASをマージしてたそうですが,設計も管理も運用もかなり大変だったそうですが,現在では単一ノードの構成になっているとのことです。とは言え,現状実質スケールアウトが不可能でスケールアップも不可能なことから,これからは30台のサーバーを導入し,近いうちに100台以上の構成にするとのことでした。それをサポートするのが,Rubyによる分散ストレージシステムの「Castoro」であることが説明されました。

Castoroを実装する前にmobileFSやkumofsについて調べたそうですが,どちらも「巨大なファイルの扱いが不便,向いていない」⁠NFSが使えない」などの理由により断念したそうです。なぜNFSにこだわるのかという話では,画像処理の関係で使わないといけないと話しますが,スケールアウトするには向かないため「本心としては捨てたい」とも述べていました。

Castoroには数百KBから100GBまで扱えること,HTTPとNFSの両方でアクセスできることが求められていたと話します。逆に任意文字列キーを捨て,キーは数値に限定したそうです。また,キーのユニーク性の保証についてもCastoroでは行わず,アプリケーション側で行う必要があると説明されました。

Castoroの特徴として「遅延レプリケーション」⁠ファイルIOはNFSとHTTP」⁠マルチキャストの利用」と話し,実装としてはCastoro::Client,Castoro::Gateway,Castoro::Peerの3つのコンポーネントで構成されることが示されました。

最後に,Rubyで分散ストレージシステムを実装した感想として,⁠プロトタイプの開発が楽だった」と話します。CastoroのVersion0.0.0(試作品)はCastoro::Client,Castoro::Gateway,Castoro:Peerの3つのコンポーネントの実装とマルチキャストの実験を含みますが,Terashitaさん一人で一日でできたことが述べられました。また,RubyはExtentionの開発がラクであるとも言及し,クリティカルな部分をC/C++で書けることで「どうにでもなるという安心感」があると述べられていました。

Castoroについてはgithub上でLGPLライセンスで公開されているとのことです。

画像

画像

著者プロフィール

KaigiFreaks レポート班

KaigiFreaksとは,会場に来れなかった人にも,雰囲気や内容を楽しんでもらえるように動画収録や配信を行うことをミッションに,RubyKaigi2008で結成された特別編成チーム。

RubyKaigi2009からはgihyo.jpを中心にテキストと写真で現場の様子を伝えるレポート班が加わり,現在のKaigiFreaksは配信班とレポート班の2班編成。


赤松祐希(あかまつゆうき)

2010年よりフリーランスとして活動するプログラマ。Ruby(on Rails)によるアプリケーション,システムの開発を得意とする。好きな言語ももちろんRuby。コードの質について考える日々。

blog:http://ukstudio.jp/
twitter:http://twitter.com/ukstudio


大和田純(おおわだじゅん)

源氏名はjune29。RubyKaigi2010実行委員,KaigiFreaksレポート班。

ディスカバリーエンジン「デクワス」を開発・運用中のサイジニア株式会社勤務のWebクリエイタ。北海道出身。技術が人々の生活をどのように豊かにしていくかを考えるのが楽しくて,新しいものはどんどん日常に取り入れてみる。好きな言語はRuby。尊敬する漫画家は荒木飛呂彦先生,好きな素数は29。

URLhttp://june29.jp/


すがわらまさのり

ハンドルネームはsugamasao。

若手IT勉強会によく出没する。仕事では Flex での Flash 開発を中心に,自社サービスの iPhone アプリ開発や Ruby での Web アプリケーションの開発を行う。普段はどーすればラクして良い仕事ができるかを考えている。Rubyとアルコールが好きです。伊坂幸太郎さんはもっと好きです。

blog:http://d.hatena.ne.jp/seiunsky/
twitter:https://twitter.com/sugamasao


白土慧(しらつちけい)

ハンドルネームはkei-s。RubyKaigi2010実行委員,KaigiFreaksレポート班。

ディスカバリーエンジン「デクワス」を開発・運用中のサイジニア株式会社勤務のWebエンジニア。札幌市出身。大学時代にWebと複雑ネットワークの楽しさを知る。人と情報のつながりを考えるのが好き。好きな言語はJavaScriptとRuby。好きな小説家は舞城王太郎。

URLhttp://d.hatena.ne.jp/kei-shttp://friendfeed.com/keis


三村益隆(みむらみつたか)

(株)永和システムマネジメントサービスプロバイディング事業部所属。Asakusa.rb。お仕事では,Linuxのカーネル開発やC++での開発等Ruby以外の仕事が多いが,Ruby好き。

blog:http://d.hatena.ne.jp/takkan_m
twitter:http://twitter.com/takkanm

コメント

コメントの記入