インフィニティソリューションズ株式会社ブログ

NetflixのAmazonの価値を最大化する5つの秘密

米ビデオ配信の大手、NetflixAmazon Web Servicesを活用していることは良く知られている。最も先進的な活用をしているといってもいいのかもしれない。Amazon Web Servicesの価値を最大限に活用するための秘訣が5つあるという。InformationWeekの記事より。

1. Weigh Costs Vs. Business Goals.(コストとビジネス目標を量りにかける)

‘As an example, he said Netflix had no staff or servers in South or Central America when it opened operations in South America Sept. 5, 2011. It thought it would improve customer service throughout the region if it added servers in the AWS center in Sao Paulo, Brazil. But it found requests to its virtual servers in Brazil from other countries were almost always routed over the Internet through Miami. That’s because Miami is a massive hub for network carriers, and an Internet user in Ecuador wanting to talk to one in Brazil will almost always be routed through Miami. Netflix found there was no performance advantage to using servers in Brazil, which were farther from Miami than AWS’s East Coast servers. It reverted to serving South and Central American through its hundreds of servers in Northern Virginia because “it made sense to serve them out of U.S. East,” said Cockcroft.’

「NetflixのチーフクラウドアーキテクトAdrian Cockcroft氏によると、例えば、2011年9月5日南米でのオペレーションを開始した際、南米、中米にはスタッフもサーバも置いていなかった。ブラジルのサンパウロのAWSセンタにサーバを追加すれば、この地域のカスタマーサービスを向上させることができると考えた。だが、他国からのブラジルの仮想サーバへリクエストを送ると、ほとんど必ずマイアミを経由することになっていた。マイアミがネットワークキャリアの巨大ハブになっているからであり、エクアドルのインターネットユーザがブラジルのサーバとやりとりするには、ほとんど必ず、マイアミを経由していた。Netflixは、AWSの東海岸のサーバよりマイアミの方が遠いため、ブラジルのサーバを使うことによる性能上のメリットを見出せなかった。U.S. Eastからサービス提供する方が良いため、北バージニアの数百台のサーバで南米、中米にサービス提供したとのこと。」

Image courtesy of Stuart Miles at FreeDigitalPhotos.net

‘European customers, on the other hand, could be more efficiently served out of AWS’s Dublin, Ireland, data center. AWS services in Dublin are slightly more expensive than those in U.S. East, but reducing latencies for customers was worth the increase, he said. Netflix launched a 1,000 virtual machine footprint in Dublin, using the same procedures and same APIs to which it was already accustomed. “Everything just worked,” he said.’

「欧州の顧客は一方、アイルランドはダブリンのAWSデータセンターからサービス提供したほうが効率が良かった。ダブリンのAWSサービスはU.S. Eastよりも多少高めだが、顧客に対してレイテンシーを下げることはコスト上昇分の価値があった、と同氏。Netflixはダブリンで1000台の仮想マシンをたて、慣れ親しんだ手順とAPIと同じものを使ってサービス開始した。」

‘Cockcroft used a rough equation to formulate the trade-off: “How many dollars should you spend to reduce customer latencies by 50% if that increases your conversion rate by 10%?”‘

「Cockcroft氏は次のようなトレードオフの概算式を使っている。『顧客のレイテンシーを50%下げると、コンバージョン率が10%上がるならいくら払うか。』」

2. Plan Ahead For Disaster.(災害対策を事前に計画しておく)

‘Netflix is rare among Amazon users in implementing operations in multiple regions. Amazon urges customers to achieve high availability by implementing the same application and data in more than one availability zone. Multiple zones exist in the same region, but Netflix wants its U.S. East operations in Northern Virginia able to fail over to one of Amazon’s West Coast facilities. That allows a region-wide disaster, such as Hurricane Sandy, to strike Northern Virginia but still leave Netflix with a guarantee of continued operations. ‘

「Netflixはアマゾンユーザの中でも、複数のリージョンにまたがったオペレーションを実装している、まれな存在。Amazonは顧客に複数のavailability zoneに同じアプリケーションとデータを実装することにより高可用性を実現するよう勧めている。1つのリージョンに複数のゾーンが存在するが、Netflixは北部バージニアのU.S. EastのオペレーションをAmazonの西海岸の設備へフェイルオーバーできるようにすることを欲していた。これにより、ハリケーン・サンデーのような、北部バージニアが襲われても、継続的にオペレーションできるよう、リージョン間の災害対応を実現できる。」

3. Use Reserved Instances Appropriately.(リザーブド・インスタンスを適切に利用する)

‘Cockcroft advised other major AWS users to determine which workloads tend to operate at a steady state and then identify what that state is. By identifying steady-state workloads, customers know how much of a reserved instance they should buy and can move workloads onto the lower-cost server type to gain significant savings. “If you’re going to run your job less than 3.5 months a year, then stick with an on-demand instance,” he advised. Because reserved instance users make an upfront payment as well as pay an hourly rate for a minimum one-year contract, it doesn’t pay to seek the lower rate unless the job runs for more than three and a half months.’

「Cockcroft氏は、他のAWSユーザに、どの負荷が定常状態で運用される傾向にあるかを見極め、その状態が同であるかを識別するよう勧めている。定常状態の負荷がどれかを見極めることにより、顧客は、どれくらいリザーブド・インスタンスを購入すべきかがわかり、負荷をより安価のサーバタイプに移動させることにより、大きな節約ができるという。『1年に3.5ヶ月以下しかジョブを実行しないのなら、オンデマンド・インスタンスにすべき」と助言している。リザーブド・インスタンスは、先払いで、最低1年間の時間費用が発生するため、3.5ヶ月以上ジョブが走らないなら、割りに合わない。」

4. Borrow Idle Capacity For Dev And Test.(開発やテストのために、使っていないキャパを借りる)

‘Cockcroft said Netflix is trying to get away from having a separate set of AWS on-demand accounts for development and testing and will try to use idle reserve instance capacity for dev and test. That way, Netflix’s surplus reserved instance capacity is getting some use while still being available for peaks in production workloads or disaster recovery. Such a move keeps the capacity Netflix needs available in the cloud, while putting it to a secondary use when it’s not actually employed in everyday processing. That is, reserved instances can serve both a primary and secondary purpose, cutting your cloud bill. “I’m not sure other customers have figured this out,” Cockcroft noted.’

「Cockcroft氏によれば、Netflixは、開発やテスト用にAWSの別のオンデマンドアカウントを持たないようにし、使っていないリザーブド・インスタンスを使うようにしているとのこと。これにより、Netflixのリザーブド・インスタンスの余剰が利用され、同時に本番のピーク時やディザスタ・リカバリに使うことができる。これにより、Netflixは必要なキャパシティをクラウド上に確保しつつ、日々の処理に使われていない時に2次利用することができる。すなわち、リザーブド・インスタンスは、1次と2次の目的に使うことができ、クラウド費用を削減できる。Cockcroft氏は、『他の顧客がこれに気づいているかどうかは分からない』としている。」

5. Consolidate Accounts To Gain Discounts.(アカウントをまとめて値引きを獲得する。)

‘Cockcroft urged Cloud Connect attendees to consolidate their AWS bill under their company’s name, instead of having many individuals and departments run their own accounts. No percentages were cited, but Amazon will discount services for larger users, but it won’t discount them if they exist as many independent accounts.

「Cockcroft氏は、クラウドコネクト参加者に、個人や個別の部署でアカウントを管理せず、会社名でAWSの請求をまとめることを勧めている。 割合は引用されていないが、Amazonは大規模ユーザには値引きがある。だが、個別のアカウントが多数ある場合には値引きの対象とならない。」