OpenAIは2026年10月23日(現地時間)、オンラインストレージプラットフォーム「Habitat」に関するブログシリーズのパートIIを公開した。ChatGPTの10億を超えるユーザーに対応するため、HabitatにおけるAzure Cosmos DBの最適化手法を詳述。信頼性の高いマルチテナンシー、グローバルキャッシング、およびAzure Cosmos DBを活用したリードパフォーマンスの向上に焦点を当てている。
Habitatは、OpenAI製品がデータに高速かつ確実にアクセスできるよう設計されたオンラインストレージプラットフォームであり、40の地域にわたる10億超のユーザー要求にミリ秒単位で対応する。
OpenAIは、ミッションクリティカルな製品トラフィックの信頼性確保、グローバルユーザーへの高速提供、そして大規模な運用管理という課題に直面していた。本稿であるパートIIでは、基盤となるストレージコンポーネントであるAzure Cosmos DBのスケーリング方法に焦点を当てている。
OpenAIはAzureチームと緊密に連携し、大規模かつグローバルなスケールで優れた読み取りパフォーマンスを発揮する、共同管理コンテナによるマルチテナンシーアプローチを実現した。企業がスケールする際、インフラチームは単一テナントシステムからマルチテナントシステムへ移行する傾向がある。単一テナンシーは製品チームごとにシステムを維持し、影響範囲を限定してワークロード分離を容易にする一方で、運用コストが高くなる。一方、マルチテナンシーは中央のデータベースチームが管理することでリソースプロビジョニングの経験が向上するものの、リソースを過剰に消費する「ノイジーネイバー」問題などの課題も生じる。
Habitatでは、これらのトレードオフを考慮し、信頼性が高く効率的なストレージシステムを大規模に設計する必要があった。現在、Habitatは多くのOpenAI製品のマルチテナントデータベースレイヤーとして機能している。
初期段階では、Azure Cosmos DBのプリミティブに依存し、論理パーティションキーごとに10K RU/s(Request Units per second)の制限をバックプレッシャーとして利用していた。しかし、クライアントに直接論理パーティションキーの選択を公開したため、ユーザーIDやワークスペースIDなどの頻繁に使用されるパーティションキーで衝突が発生し、特定のユーザーの全体的なスループットが制約される問題が生じた。また、論理パーティションが物理パーティションの制限を共有するため、「ノイジーネイバー」問題が発生し、あるテナントの過剰な負荷が他の関連しない論理パーティションキーに影響を及ぼすこともあった。
さらに、物理パーティションごとのスループット制限は可変であり、Azure Cosmos DBコンテナに割り当てられた合計スループットに依存する。データ量が増加すると物理パーティションは分割され、合計パーティション数が増える一方で、合計プロビジョニングスループットは変わらないため、パーティションあたりの実効スループット制限がデータサイズと共に減少する問題も明らかになった。これらの課題に対し、OpenAIは分離されたコンテナを利用して、部分的にパーティションキーの制限とノイジーネイバー問題の解決を試みた。これにより、各コンテナは独自の物理パーティションを割り当てられ、コンテナ内のワークロードのみが互いに影響を及ぼすようになる。
参考: OpenAI Blog (アーカイブ) — 2026年10月21日 16:00 (JST)