10億人以上のChatGPTユーザーにサービスを提供するためのオンラインストレージの急速なスケーリング(パートII)

OpenAI
OpenAIは、Azure Cosmos DBを使用してHabitatのストレージをどのようにスケーリングし、10億人以上のユーザーにサービスを提供するためにアイソレーテッドコンテナからマルチテナンシーに回帰したかを説明しています。

概要

OpenAIのHabitatは、40の地理的リージョンにわたる10億人以上のユーザーにサービスを提供し、500ペタバイトのデータを保存するオンラインストレージプラットフォームです。このシリーズのパートIIでは、OpenAIがMicrosoftのAzureチームとの緊密なパートナーシップを通じてAzure Cosmos DBの使用をどのようにスケーリングしたかを詳述しています。記事は3つのフェーズを追っています。フェーズIでは、論理パーティションキーなどのAzure Cosmos DBプリミティブに依存していましたが、ホットキーのスループット衝突、物理パーティション間のノイジーネイバー干渉、ストレージ増加に伴うパーティションあたりの容量縮小が発生しました。フェーズIIでは、シングルテナントコンテナによるワークロード分離を試み、分離の問題は解決しましたが、プロビジョニングのオーバーヘッド、不安定な集計成長、製品チームの容量計画負担が生じました。フェーズIIIでは、デフォルトでマルチテナンシーに戻り、共同管理コンテナ設計とAzure Cosmos DBの新機能(ホットキースロットリング、サービス品質リクエスト階層化、RU使用量ベースの分割を備えた改良サーバーレスモード)を利用しています。また、Azureとの共同エンジニアリング(共有ダッシュボード、テスト、共同インシデント対応)と、2024年の地域障害がOpenAIの規模で未テストのフェイルオーバー動作を明らかにしたことにも触れています。最後に、パフォーマンス作業について説明しています。レイテンシクリティカルなデータセットのマルチリージョンレプリケーション、変更データキャプチャ(CDC)を無効化に使用する統合分散キャッシュ、HabitatサービスをRustで書き直すことで、グローバル読み取りp50レイテンシを約120msから約10msに短縮しました。今後、OpenAIはRocksetのRocksDB CloudとRaftベースのレプリケーションを組み合わせた、カスタムの社内エクサバイト規模オンラインストレージシステムを構築し、将来のレプリケーション課題に対処する予定です。

(出典:OpenAI)