「10分停止で3億円の損失」を防げ Netflixの効率性と信頼性両立の秘策は:真のシステム効率とは
AWSの年次イベントで、Netflixのエンジニアが「効率を追い求めるシステム運用」の危うさについて語った。損失を最小化し、経営陣を納得させる“真の効率”を目指すための体制作りとは。
Netflixは、同社サービスの運用における効率と信頼性を両立させる手法について明らかにした。2025年12月、米ラスベガスで開催されたAWS(Amazon Web Services)の年次イベント「AWS re:Invent 2025」でAWSとNetflixのエンジニアが講演で語った。
講演に登壇したのは、AWSのプリンシパルソリューションアーキテクトであるプラティーク・シャルマ氏とNetflixのシニアソフトウェアエンジニア、アルガ・C氏だ。同氏は、Netflixのライブオペレーションにおいて、スケーラビリティと可用性を確保する責任も担っている。
Netflixの冗長性と効率性、両立の秘策は
併せて読みたいお薦め記事
クラウド障害で情シスはどう動くべきか
NetflixはAWSが展開する4リージョンを同時に本番稼働させる体制を取っている。そのため、あるリージョンに障害が発生した場合もサービスを継続できる。その背景には「年商1000億ドル規模の企業では、1分間の停止が約20万ドルの損失になる」というアルガ氏の試算がある。サービスが10分止まれば200万ドル相当の損失だ。事業規模が大きくなるほど、障害のテールリスク(発生率は極めて低いが甚大な被害をもたらすリスク)は指数関数的に増大する。従って、効率性だけを追求するのは誤りであり、障害コストを考慮した「リスク調整後の正味価値」で評価すべきだと同氏は指摘する。
一方、ユーザーはスマートフォン、PC、タブレット、テレビなど多様なデバイスからNetflixのサービスを利用する。アルガ氏はこの状況を前提に「単一の安定したネットワークを前提にできない」と指摘する。さらに、デバイスの計算処理能力や画面の解像度も多様だ。
そこでアルガ氏が紹介するのが、Netflixが自社で運用するコンテンツ配信ネットワーク(CDN)の「Open Connect」(以下、OC)だ。OCは、世界中の配信品質向上とコスト削減を目的に設計されている。
CPUの使用率は効率を表さない
アルガ氏によると、Netflixはシステムの性能や効率をCPUの稼働率のみで計測しないという。同社は、キングマンの近似式(注)を用いてシステム性能を評価している。負荷を高めると応答時間は加速度的に悪化し、ある地点を越えると処理の待ち時間が急増する。「稼働率だけを見るのは誤りだ」というのがアルガ氏の指摘だ。同じCPU使用率30%でも、サービスAは安定し、Bは突発的に使用率が跳ね上がり、Cはその中間的な挙動を示す、というようにサービスによって状況は異なる。従って、単なるCPU使用率を効率の指標として見るのでは不十分だと同氏は述べる。
※注:キングマンの近似式は、待ち行列理論において「稼働率と待ち時間の関係」を算出する計算式。稼働率が100%に近づくと待ち時間が急激に増大する現象を説明するために用いられる場合がある(近似式は、複雑な厳密解を簡略化する式)。待ち行列理論は、サービスを受けるために顧客やジョブが待つ「待ち行列」を数学的に解析する理論。
ワークロードを階層化する
Netflixはワークロードを重要度別に4つのグループに分類している。
- Tier 0
- 停止するとNetflixのサービスは即時停止となる
- 劣化許容
- 停止してもユーザーはそれほど困ることがないNetflixの一部の機能
- ベストエフォート
- 停止してもユーザーは気付かない機能。空いているサーバがあれば実行できるようにする
- バッチ処理
- リアルタイムに実施せず、後回しにしても問題がない処理
アルガ氏によると、従来はこれら全てを約50%の稼働で運用していたが、Tier 0を約30%、バッチを60〜70%で運用し、総コストを変えずに全体効率を改善している
成功バッファと失敗バッファの概念を導入
Netflixは「成功バッファ」と「失敗バッファ」という概念を導入した。前者は、サーバの負荷を増やしても遅延もエラーも出さずに耐えられる負荷の範囲、後者は、表面上は動いているが、わずかでも負荷が増えると一気にシステムが破綻する直前の範囲を示す。
このバッファ量は、インスタンスの世代、サイズ、データベースの特性ごとに異なるため、一律のCPU指標は用いないとアルガ氏は説明する。例えば「Apache Cassandra」(オープンソース型のデータベース管理システム<DBMS>)はデータを内部に持ち、内部処理が性能を左右する状態保持型のサービスだ。同サービスは、バックグラウンドで定期的にコンパクション(ファイル統合処理)を実施するが、その際にCPUやメモリに負荷を掛ける。Netflixはその負荷を考慮して別のバッファを設定している。アルガ氏は「効率だけを追うと信頼性を失う。両者は補完関係にある」と述べる。
講演をまとめると
Netflixは効率を単独で考えず、信頼性とリスクを補完関係として捉えている。需要を先読みする容量設計、変化に即応するオートスケール、秒単位で動作するロードシェディング(負荷遮断機能)までを組み合わせることで、巨大規模でも停止しないクラウド運用を実現している。
Copyright © ITmedia, Inc. All Rights Reserved.