OpenAI、ChatGPTの利用者10億人を支える巨大データ基盤の運用手法を公開
- OpenAIは、10億人以上のChatGPT利用者を支えるストレージ基盤「Habitat」の運用手法を公開した。
- 共有環境から用途別の分離環境を経て、再び共有環境へ戻す設計の変遷と直面した運用課題を説明した。
- マイクロソフトのAzureチームと協力し、負荷制御や自動調整を改善して障害ゼロを実現した。
OpenAIは、10億人以上の利用者を抱える「ChatGPT」などの同社製品を支えるオンラインストレージプラットフォーム「Habitat」について、基盤となるデータベース「Azure Cosmos DB」を大規模にスケーリングさせた技術的な取り組みを公開した。
Habitatは世界40の地域にわたり、500ペタバイトを超えるデータをミリ秒単位の応答速度で処理している。初期の構成では単一のアカウント内に共有コンテナを設けて運用していたが、複数の用途で同じ識別子が集中してスループットが頭打ちになる現象や、特定処理の過負荷が同一物理領域にある別の処理に影響を与える「騒々しい隣人(Noisy Neighbor)」問題が発生した。さらに、データ量増加に伴い物理パーティションが分割されると、1区画あたりの実効スループット上限が縮小し、保存データの増加だけで性能が低下する課題にも直面していた。
これらの問題を回避するため、同社は重要な機能ごとに専用コンテナを割り当てる個別環境への分離を試みた。しかし、この手法では新機能の公開時に負荷が急増する際、事前の容量確保を忘れた製品チームが障害対応に追われる事態が頻発した。また、利用状況の監視や容量計画の責任が各開発チームへ分散したことで、組織全体での運用管理が破綻する要因となった。
そこでOpenAIは、マイクロソフトのAzureチームと共同で対策を進め、再び共有コンテナを標準とする構成へ移行した。負荷が集中したキーに対する優先的な流量制限や、バッチ処理などの優先度を下げて対話処理を保護する制御機能を導入した。さらに、物理パーティションあたり最大1万RU/sまで拡張可能で、利用実績に基づいて自動分割を行う改良型サーバーレスモードを採用した。これにより、開発チームが個別に見積もりや手動拡張を行う必要がなくなり、以降の数カ月間にわたり容量不足や負荷干渉による障害の発生をゼロに抑えている。
この記事は OpenAI 公式の発表を AI が日本語に要約したものです。正確な内容は原文をご確認ください。
アプリで開く