hirax.net::Keywords::「分散処理」のブログ



2010-01-25[n年前へ]

Ruby Rindaとdrubyで(エンコード・サーバを)作ってみた 

 「Ruby Rindaとdrubyで作ってみた

 (分散処理システムLindaのRubyによる実装である)Rindaをさわってみたので(中略)エンコードのリクエストを入れると順番にエンコードしてくれるサーバみたいなものを作ってみました。FFmpegでEncodeをするリクエストを受け付けるServerみたいなもの(後略)
 FFEFile::SRC_DIR 以下にエンコードするファイルを突っ込んでその後drubyで公開されているffe_serverのrequestメソッドをエンコードしたい種類とファイル名を引数にして呼べば後は勝手にエンコードしてくれる。
 ファイル自体もdrubyで送ろうとおもったけど、パイプが壊れたり、接続が切れたりする(Fileオブジェクトの参照渡しのせい)ので断念。

2010-01-27[n年前へ]

RubyとHadoopで分散処理 Hadoop Streamingの仕組み 

 「RubyとHadoopで分散処理 Hadoop Streamingの仕組み

Hadoopとは,Googleの基盤技術であるMapReduceをJavaでオープンソース実装したもので,分散処理のフレームワークです。Hadoopを使うと,1台のサーバでは時間の掛かるような処理を,複数のサーバで分散処理させることができます。
swatch (スウォッチ) 腕時計 RUBY TOUCH SUJK701 [正規輸入品]
 さて,実際にHadoopを使うには2つの方法があります。1つは,もともとHadoopはJavaで作られたものなのでJavaで記述する方法,もう1つはHadoop Streamingという仕組みを使って,Java以外の(標準入出力に対応している)言語で記述する方法です。
 今回はRubyを使いたかったため,Hadoop Streamingを利用しました。

2010-04-19[n年前へ]

「たまに行う大量なバッチ処理」にはAmazon EC2のクラウドサービスを使う 

 「クックパッドのデータ処理、たった5万円 時間も200分の1以下に短縮、わざわざ米国のサーバを使う理由

 検索ログの解析で問題となるのは処理に要する時間である。なにしろ、クックパッドは毎月900万人近いユーザーが利用するサービスだ。「たべみる」のサービスが対象とするのは、1年分の検索ログであり、そのデータ量は膨大になる。
 同社では、社内のデータベースサーバを利用して、この処理を実施した場合、7000時間はかかると見積もった。しかし、米AmazonのIaaS型のクラウドサービスであるEC2を活用し、50台のインスタンス(仮想マシン)を同時に立ち上げ、分散処理のフレームワークである「Hadoop」を利用したところ、わずか30時間で完了した。
 この際、同社が利用したAmazon EC2のインスタンス・タイプは、スタンダードプランの「ラージ・インスタンス」。1時間あたりの利用料金は、0.34ドルだ。Amazon EC2では、メモリサイズやCPUのコア数に応じて、8種類のインスタンス・タイプを用意しており、その中で2番目に安い。従って、同社がこの膨大なログの解析処理に要したコストは、0.34ドル×30(時間)×50(台)=510ドル(約4万8000円)となる。



■Powered by yagm.net