Showing posts with label Amazon. Show all posts
Showing posts with label Amazon. Show all posts

Aug 16, 2009

「オレ専用」アフィリエートリンク生成サービスをAmazon APIの署名認証に対応させた

Amazon Product Advertising APIがとうとう署名認証必須になってしまいました。しかたがないので重い重い腰を上げて、超手抜き「オレ専用」アフィリエートリンク生成サービス(ていうかXSLTでレンダリングしてもらうだけ)をGoogle App Engineに移植して署名認証に対応させました。

Amazon Item Search

アクセスするURLを「http://ogawapy.appspot.com/ecs?associate_tag=<your-associate-tag>」とかすると「オマエ専用」アフィリエートリンク生成サービスとしても使えます。

と言っても私が書いた部分はこれだけです。署名認証用のProxyとしてpaproxyを使わせてもらっています。

全然面白難しいところがないので説明は省略します。要は、ecs.pyはecs.yamlで定義してあるテンプレートをレンダリングするだけの機能を提供し、そのテンプレートでは自前で立てたpaproxyをendpointとするREST API呼び出しをするHTMLやXSLTを定義してあるだけです。ecs.py, ecs.yaml, paproxy.py, paproxy.yamlをApp Engineの作業ディレクトリに追加して、app.yamlを適当に設定すれば動きます。

ところで、paproxyはよくできているなと思いました。自分でも同じようなのを書いている最中に見つけたのでとんだ徒労になってしまいました。

ひとつだけに気になったのは、paproxy (やrubyやperlでのバリエーション) では、問い合わせのパラメータセットが必ずマップ (連想リスト) になると仮定している点です。Amazon APIの問い合わせパラメータセットは「絶対マルチマップ (あるキーに対して複数の値が関連付けられるマップ) にはならない」のでしたっけ?それならその実装で構わないのですが、一般的にはマルチマップになるはずなので、webob.multidict.MultiDictなりを使って実装する必要があると思います。

Apr 2, 2009

Amazon Elastic MapReduce

これは本格的にやられてしまったという感じ。

Amazon Elastic MapReduce

Amazon EC2+S3上でHadoopベースのMapReduceアプリを動作させるサービス。

これまでもEC2上でHadoopを動かすこと自体はいろいろな人がやっていましたが、このサービスを使うと、EC2インスタンスを自分で設定・起動することなく、S3上に格納したデータとプログラムを用いてMapReduce操作を実行してもらうことができます。計算結果もS3上に格納されます。

で、実はこれ、単純にクラウド上のMapReduceサービスの実現というだけではなく、より包括的なアプリケーション実行フレームワークの実現だとも言えると思うんです。別にMapReduceしてもらう必要はないんです。例えば、シングルプロセスで実行できるプログラム(つまり何らかのデータをプログラムに食わせて結果を出力する)を考えてみれば明らかなように、このフレームワークは一般的なジョブサブミッションエンジンとして使えます。しかも、このプログラムの実行時間+αしかEC2のCPU時間を消費しないわけですから非常に経済的です。

HPC分野でもEmbarrassingly Parallel (EP)タイプのアプリを実行している人たちには直接的な恩恵があるでしょう。parameter sweepをする場合でも、parameter setだけ(とは限りませんが)をdistributeしてMapフェーズで計算してもらい、Reduceフェーズで回収すればいいわけですし。

では、MPIのようなSPMDなプログラミングモデルで書かれた一般的な並列プログラムはどうかというとちょっと話は厄介になります。この話はそのうちもう少し突っ込んで書くかもしれません。

別の興味としては、Hadoopを使って本当に課金に値するようなロバストなサービスを提供できるのかという疑問もあります。あっちこちでストールしたEC2インスタンスができてしまったりはしないのか、とかですね。

Feb 7, 2009

最近のアマゾンでのお買い物

最近アマゾンで購入したもの。

創味のつゆは安価で万能。甘いけど甘過ぎないので調節が簡単です。一人暮らしで自炊を始める人にもお勧め。東京でもピーコックなどには置いてありますね。

烏龍茶が切れたので買ってみましたが、はっきり言っちゃうと、これはハズレです。烏龍茶は一旦レベルを上げてしまうと元には戻れないというのを実感しました。冷やして飲むならこれでもいいかもしれませんね。

T-falの鍋は消耗品なので定期的に買い替えています。特に中華鍋は強火で使うので(強火で使っちゃいけないと書いてありますが)買い替えサイクルが短いですね。

すべてアマゾンのアフィリエート収入で購入しました。本当にありがとうございました。