10部 Perlから利用できる重要技術

Amazon Web サービス(AWS)の概要

AWSの概要と、参加方法

Amazon Web サービスとは?

Amazon Web サービス(AWS)は、一般ユーザがAmazonの商品データにアクセスできるようにするための技術、サービスの総称です。Amazonで取り扱っている商品の検索や表示といったこと以外に、Amazonのほぼすべてのデータを利用することが可能で、既存のAmazonのWebサイトと同等の機能を、そっくりそのまま自分で作り上げることもできます。

Amazon
Web サービスにアクセスする手段として、RESTSOAPの両方をサポートしています
(RESTとSOAPについては後述)。

現在、Amazon Web サービスはバージョンアップにより名前も変更になり、Amazon E-Commerce
Service(ECS)と呼ばれています。

Amazon Web サービスの利用事例

ここで、Amazon Web
サービスを利用したサービスを紹介していきましょう。どのサイトも、Amazonとは関係のない、一般ユーザや企業が公開しているものです。

  • ECナビリスト
    欲しい本や、気になった本、持っている本にキーワードをつけて、参加者で共有できるコミュニティーサービスです。書籍情報はAmazonから取得しています。
  • Amazon Light
    Amazonの基本機能のみに絞ったサービスです。
  • アスキーデジタル用語辞典
    この用語辞典で語句を検索すると、検索結果とともに、その語句関連の書籍が紹介されます。
  • Amazon Flash Search
    検索結果・関連情報を表紙のサムネイル付きで閲覧することがでる検索サービスです。

アソシエイト・プログラムでアフィリエイト収入

Amazon Web サービスは、前述のとおりAmazonにある商品データ等を利用することができますが、Amazonが以前から提供していたAmazonアソシエイトというサービスも併せて利用することが可能です。Amazonアソシエイトを併用して利用することにより、Amazon
Web
サービスを利用してAmazonの商品を紹介し、そのリンクを通して購入があった場合はAmazonアソシエイトから販売代金の3.5~10%程度を紹介料として得ることができます。

※Amazon Web
サービスの登録は全世界で共通ですが、Amazon.co.jpアソシエイトとAmazon.comアソシエイトは個別に運営されています。Amazon.co.jpアソシエイトに登録した場合は、Amazon.co.jpの商品を紹介して紹介料が支払われます。Amazon.comの商品を紹介しても紹介料は支払われません。


Amazon Web サービスとアソシエイト・プログラムに登録

Amazonの商品を紹介してアフェリエイトの収入を得るには、Amazon
Web
サービスとAmazonアソシエイトに登録する必要があります。Amazon
Web
サービス
は全世界で共通ということもあり、日本語での登録ページは用意されていませんが、Amazonアソシエイトには日本語での登録ページが用意されています。どちらも無料で登録できます。

Amazon
Web
サービスへの登録

AWSを利用するためには、まずはAmazonに登録をする必要があります。AmazonのWebサービスページから登録手続きをおこなうことができます。

Amazon Webサービス登録手続きページ
【英】

アソシエイト・プログラムへの参加とアソシエイトID取得

アソシエイト・プログラムに登録すると、アソシエイトIDを取得することができます。Amazon商品を紹介する際に、Amazonへのリンクや、Amazonの購入ページへのリンクにアソシエイトIDを付加すると、そこから商品が購入され
た場合に、Amazonから数%の紹介料を受け取ることができます。

Amazon.co.jp アソシエイト・プログラム登録ページ

以上で、Amazon WebサービスのSubscription IDと、アソシエイトIDを取得することができました。この2つのIDは、AWSを利用してアプリケーションを開発するために必要になります。


Subscription IDがAccess Key IDに変更

今まで利用していたSubscription IDの代わりに、Access Key IDに変更となりました。

amazon web servicesサイトにログインすると、右上に下記のようなボタンがあります。

マウスをあわせるとサブメニューが表示されるので、そこで [View Access Key Identifiers] を選択すると、Access Key
のIDが表示されます。

今まで使っていたRESTの場合、太字になっている部分が変更箇所です。

変更前

http://webservices.amazon.co.jp/onca/xml?Service=AWSECommerceService


&SubscriptionId=0DCQFXHRBNT9GN9Z64R2&AssociateTag=smart-22


&Operation=ItemSearch&Keywords=perl&SearchIndex=Books

変更後

http://webservices.amazon.co.jp/onca/xml?Service=AWSECommerceService


&AWSAccessKeyId=0DCQFXHRBNT9GN9Z64R2&AssociateTag=smart-22


&Operation=ItemSearch&Keywords=perl&SearchIndex=Books


RESTとSOAP

O'REILLYのティム・オライリーのコラムに掲載されていましたが、Amazonのスタッフによると利用者の85%はRESTを使っているそうです。RESTはSOAPと比べて手軽に利用できることから、過半数を超える利用率を獲得したものと考えられます。SOAPはRESTに比べると敷居が高いのですが、その代わり複雑なシステムを設計する際などに力を発揮しやすくなっています。

下記にRESTとSOAPを利用する上で考慮したい項目を列挙しました。

※利用する上で必須となる項目ではありません。

RESTを利用する上で考慮する点
  • 技術的にXSLTが使えるか
  • Amazonから受け取るデータを加工する必要ないか
    (データ加工が必要であれば、SOAPの利用を考慮しても良いかもしれません)
SOAPを利用する上で考慮する点
  • SOAP::LiteなどのSOAP用モジュールがインストール可能か
  • レスポンスがRESTより遅いという事実があっても、使いたい理由があるか

Amazon Web サービス周辺技術情報

REST(REpresentational State Transfer)

REST(XML over HTTP、XML/HTTPとも呼ばれる)とは、キーと値のペアをパラメータに指定してAmazon Web
サービスを呼び出し、処理を実行させる仕組みのことです。処理に必要なパラメータは、URIの一部として渡されます。Amazon Web
サービスが返す結果はXMLドキュメントです。

SOAP

SOAPとは、クライアントとサービスの間でメッセージをXML形式でやり取りするためのプロトコルです。交換されるメッセージはXMLで記述され、メッセージを含むフレームワークもXMLの構造データとして定義されてい
ます。

利用するプログラミング言語やオペレーティングシステムごとに、SOAPを利用するためのツールキットが用意されてい
るので、それらを利用して、SOAPを利用したサービス呼び出しや返されたデータの処理を簡単に行えます。

XSLT

XSLT (Extensible Stylesheet Language
Transformation)はXMLベースの言語で、XML文書をHTMLやテキストなどその他のマークアップ言語のドキュメントに変換するために使われます。

XSLTサービスはREST方式でのみサポートされています。XSLTサービスを利用すると、XMLを処理せずに直接整形後のデータにアクセスできます。


参考サイト

関連記事