OWN NEWS GATHER
← 戻る
OpenAI Blog

OpenAI、10億人のChatGPTユーザー支える基盤「Habitat」のCosmos DB拡張知見を公開

要点

  • OpenAIは、ChatGPTなど同社製品のデータ基盤「Habitat」におけるAzure Cosmos DBのスケーリング手法を公式ブログで公開した。

  • Habitatは世界40地域・10億人以上の利用者にミリ秒単位で応答し、500PB超のデータを扱うオンラインストレージ基盤である。

  • システム拡大に伴い、個別運用の高コストと相乗り運用のリソース競合という設計上のトレードオフに直面した。

  • Cosmos DB標準機能に頼った初期運用では、論理キーの競合、物理パーティションでの他機能への干渉、容量増加に伴うスループット低下という3大課題が露呈した。

  • 米OpenAIは2026年10月23日、自社サービスを支えるオンラインストレージプラットフォーム「Habitat(ハビタット)」の技術解説記事を公式ブログで公開した。同社技術スタッフのJon Lee氏らが執筆したもので、マイクロソフトの分散データベース「Azure Cosmos DB」を中核としたストレージ層を大規模に拡張した過程と直面した課題が紹介されている。

10億人と500PB超を支える基盤「Habitat」

Habitatは、ChatGPTやAPI、Codex、社内ツールなどOpenAIの全製品が必要なデータへ高速かつ安定してアクセスするためのストレージ基盤だ。世界40地域にまたがる10億人以上のユーザーに対し、ミリ秒単位の低遅延で応答し続ける役割を担う。

同基盤はキャッシュや暗号化、アクセス制御、レート制限などの機能を備え、バックエンドのCosmos DBや独自ストレージNanobase、インメモリキャッシュのValkey、Blobストレージなどを統括する。前編でPython製サービスとしての進化(500ペタバイト以上の管理)が語られたのに続き、今回の後編では基盤ストレージであるCosmos DBの最適化に焦点が当てられた。

マルチテナンシーにおける設計のジレンマ

サービス拡大に伴い、複数用途でインフラを共有する「マルチテナンシー(相乗り)」の設計が大きな焦点となったという。

各製品チームが個別に環境を抱える「シングルテナント」構成は、障害の影響範囲を限定し責任境界を明確にできるが、チーム増加に伴い運用コストが増大し、過剰なリソース確保が生じやすい。一方、中央チームが統括する「マルチテナント」構成は効率的な運用が可能になる反面、特定用途の負荷が他を圧迫する「ノイジーネイバー(騒がしい隣人)」問題が避けられない。Habitatでは単一コンテナでの相乗りから個別コンテナの試用を経て、再びマルチテナントを基本とする形へ回帰したと説明している。

Azure Cosmos DBの内部構造と動作仕様

Azure Cosmos DBは、アカウント内に複数の「コンテナ」を持ち、コンテナごとに1秒あたりの処理能力「RU/s(Request Units per second)」を割り当てて運用する。

データは指定した「論理パーティションキー」に基づき分散されるが、内部的には少数の「物理パーティション」上に配置される。データ容量の超過やスループット維持の必要性に応じて、物理パーティションが自動分割(スプリット)される仕組みとなっている。

初期運用で露呈した3つの技術的課題

OpenAIは初期フェーズにおいてCosmos DBの標準仕様に頼り、アカウントあたり1つのデフォルトコンテナで運用していた。論理キーごとの10,000 RU/s制限を負荷抑制に利用していたが、トラフィック急増に伴い以下の3つの問題に直面した。

第1に、論理パーティションキーの重複である。キー選定をクライアント側に委ねていたため、user_id などの共通キーが異なる機能間で衝突した。その結果、同一ユーザーに関する複数機能のトラフィックが単一キーの上限枠を取り合い、スループットが制約された。

第2に、物理パーティション単位でのノイジーネイバー問題だ。制限は実際には内部の物理パーティション単位で適用されるため、同じ物理領域に同居する論理パーティション同士が処理枠を取り合う。これにより、副次的な機能の高負荷が同じ領域のデータへ波及し、ログインや登録などのコア機能を阻害する事態を招いた。

第3に、データ増大に伴う実効スループットの低下(弱いパーティション)である。コンテナ全体の総スループットは物理パーティションへ均等配分されるため、データ容量増加でパーティションが分割されると、全体の割り当てが同一のままパーティション数が増え、1区画あたりの実効スループットが減少する(10,000 RU/sの領域が分割されると各5,000 RU/sに半減)。アクセス頻度が一定でも、データ蓄積だけで処理能力が需要を下回る障害モードが生じたという。

補足

Azure Cosmos DBはマイクロソフトが提供するフルマネージド型分散NoSQLデータベースであり、OpenAIはAzureチームと連携してこれらの課題を克服する共同管理アプローチを進めている。

元URL