Amazon Web Services ブログ

AWS が Amazon の記録更新に貢献

今年で 2 年目となった Prime Day で Amazon は新記録を達成しました。この日、世界中からの注文数はブラックフライデー、サイバーマンデー、Prime Day 2015 の記録を遥かに上回るものとなりました。Slice Intelligence は、Prime Day 2016 の当日における米国全土の e コマース消費者のうち 74% を Amazon が占めていたと報告しています。この 1 日限りのグローバルショッピングイベントは Amazon Prime メンバーのみを対象としています。Prime 2015 に比べ、今年のトラフィックレベルは過去最高そして Amazon Mobile App からの注文数は昨年の 2 倍にも上昇しました。世界中の Prime メンバーが 1 日に購入したアイテムの例として、玩具は 2 万個以上、靴は 1 万足以上そしてテレビは 9 万台以上の売り上げが記録されています (統計の詳細は Amazon’s Prime Day is the Biggest Day Ever をご覧ください)。これほど大きなスケールのイベントを実施するには、急増するトラフィックにインフラストラクチャが対応できなければなりません。

 

AWS スタイルでスケーリング
Amazon の小売用ウェブサイトはウェブトラフィックの対応に複数の EC2 インスタンスを使用しています。
Prime Day に急増するカスタマートラフィックに対応するため、Amazon のリテールチームは多数の EC2 のサイズを増やし、2009 年の時点での AWS と Amazon.com を合わせたサイズに等しい能力を追加しました。リソースは世界中の複数の AWS リージョンから取得しました。7 月 11 の朝は涼しく、Amazon シアトル本社のビルの上にはいくつかの雲が浮かんでいました。午前 8 時が近付く頃、Amazon リテールチームは Prime Day 第 1 弾となる最初の 10 件のリリース準備を完了していました。太平洋の反対側は、ほぼ午前 0 時を刻む頃です。日本では Prime Day の開始を待ち侘びる Prime メンバー達がそれぞれのスマートフォン、タブレット、ラップトップに釘付けの状態で待っていました。日本のトラフィックが急増し始めると、CloudWatch メトリックスで Amazon CloudWatch のエンドポイントや ElastiCache ノードが光り、高速モバイルやウェブリクエストが増加していることを示しだしました。このトラフィックの波は地球を一周し、ヨーロッパから米国に到達するまでに 40 時間、そしてクリックストリームのログエントリーは 850 億件を記録しました。 今年の Prime Day の注文数は Prime Day 2015 に比べ世界中で 60% そして米国内だけで 50% も上昇しました。モバイルでは 100 万人を超える Prime メンバーが Amazon Mobile App を初めてダウンロードし、アプリを利用したことが分かっています。Prime Day に伴い 38 種類 (下記サービスを含む) の AWS サービスの使用率が大幅に増加したことに Amazon.com は気付きました。

Prime Day のスケールと、その他の AWS をご利用されているお客様が、これに類似する大規模で 1 日限りのイベントをホストする機会があるかもしれませんので、より詳しく複数の AWS サービスの視点から Prime Day についてご説明します。

  • AmazonMobile Analytics イベントは前週の同じ曜日と比較すると 1,661% 上昇しました。
  • Amazon が使用する CloudWatch メトリックスは Prime Day の当日、前週の同じ曜日と比較すると世界中で 400% 上昇しました。
  • DynamoDB は Prime Day の当日、前週の同じ曜日と比較すると世界中で 560 億件以上のリクエストに対応しました。

AWS で実行
AWS チームは他の企業への対応と同様に Amazon.com に対応しています。この 2 つの組織はビジネスパートナーであり、定義済みのサポートプランやチャネルを通じてコミュニケーションを取っています。比較的に形式的なこのスタイルを取り入れることで、AWS チームが AWS をご利用されているお客様全員に提供するサポートプランやコミュニケーションプロセスを改善しやすくしています。Amazon のウェブサイトや AWS でモバイルアプリを実行することは、Prime Day のように短期間でありながらスケールの大きなグローバルイベントを実施することを可能にし、低コストに抑えることを実現します。私が Amazon.com に入社した 2002 年の時点では (ウェブサイトが AWS に移行する以前のことです)、ホリデーショッピングのシーズン準備には実に様々な計画を練り、予算組みや効果なハードウェアの購入などを必要としていました。このハードウェアはトラフィックの増加に対応する上で役立っていましたが、別の意味ではトラフィックが平常に戻り次第 Amazon.com が未使用でほぼ利用されていないハードウェアを無駄に所有していることを意味していました。AWS は、お客様が Prime Day のようなスケールの大きいイベントを実施するために必要な処理能力を追加できるようにし、柔軟性を備えコスト効率が良い方法で、そうした機能を利用できるようにしています。AWS は、これほどのスケールのオンラインイベントを実施する上で必要とする作業に対応できるので、Amazon リテールチームはお客様にできる限り最高のユーザーエクスペリエンスを提供することに専念できるようになりました。

今回の教訓
Amazon リテールチームは Prime Day の終了に安堵感を感じながらも、今回の件で学んだ点を教えてくれました。

  • 準備 – 計画とテスト実施は必須である。過去の傾向をもとに、将来のトラフィックについて予測し計画を練ること。それに応じて必要なリソースを予測すること。GameDay エクササイズで問題発生時の対応を事前に準備する – インフラストラクチャやサイトのいくつかの部分で意図的に障害を起こし、複数の障害が発生した時の状況をシミュレーションすること (Amazon の GameDay エクササイズ詳細については Resilience Engineering – Learning to Embrace Failure をご覧ください)。
  • 自動化 – 手動による作業を減らし、すべて自動化すること。デマンドに自動的に応じることができるサービスのメリットを活用すること。例えば Route53 を使用して自動的に拡張したり、デマンドに応じて EC2 を自動拡張、また Elastic Load Balancing を使用して自動フェイルオーバーを可能にし複数のリージョンやアベイラビリティゾーンに渡りトラフィックのバランスを取るなど (AZ)。
  • モニタリングAmazon CloudWatch メトリックスを使用して柔軟に通知を送信すること。CloudWatch モニタリングは優れた顧客体験を提供できるように、使用法を常に把握できるようにデザインされている。
  • 自由な発想 – AWS を使用することで、チームに別のホリデーシーズンに必要なリソースを提供できたこと。自社のインフラストラクチャに対する自信がスケールの大きなイベントの実施に繋がる。

前述しましたが、これほどのスケールのイベントを計画し実施しない理由はどこにもないこと。スケールの大きな発想を、そしてサポートプランやサービスのメリットを活用すること。ソリューションアーキテクトやテクニカルアカウントマネージャーそして APN コンサルティングパートナーが必要に応じてご協力します。スケールの大きい 1 度限りのイベントを計画しているのであれば、ぜひお知らせください。イベント開始前そして終了後に必要なサポートをご提供いたします。

Jeff

PS – Prime Day で何を購入されましたか?