OpenAI збільшила продуктивність основної PostgreSQL до мільйонів запитів на секунду для ChatGPT

Written By: author avatar Христина Горда

13 Лютого, 2026

Як OpenAI Масштабує PostgreSQL для Обслуговування Сотень Мільйонів Користувачів ChatGPT

OpenAI розкриває, як їм вдалося масштабувати PostgreSQL, щоб обробляти мільйони запитів на секунду для ChatGPT та платформи API. Завдяки цьому система наразі обслуговує сотні мільйонів користувачів по всьому світу. Цей випадок демонструє, наскільки можна розігнати PostgreSQL з одною основною інстанцією, перш ніж інтенсивні операції запису потребуватимуть розподілених рішень. Водночас це підкреслює важливість правильного балансу у проєктуванні та необхідність операційних заходів для збереження низької затримки та глобальної доступності сервісу.

Оптимізація на фоні стрімкого зростання навантаження

Протягом останнього року навантаження на PostgreSQL зросло вдесятеро. OpenAI у співпраці з Microsoft Azure адаптували розгортання бази даних у хмарі Azure Database for PostgreSQL, що дозволило обслуговувати 800 мільйонів користувачів ChatGPT, при цьому зберігши одну основну інстанцію з достатнім запасом потужності.

Для досягнення цього вжили комплексних заходів на двох рівнях:

  • збільшення розміру інстанції і вдосконалення патернів запитів;
  • розширення системи за рахунок додаткових реплік для читань.

Також суттєво знизили надлишкові операції запису через налаштування додатку. Найважчі за записом навантаження перенаправили на шардовані системи, наприклад, Azure Cosmos DB, залишаючи PostgreSQL для завдань із сильною консистентністю і реляційною логікою.

Инфраструктура реплік і підтримка освітлення навантаження

Головна інстанція PostgreSQL підтримується майже 50 георозподіленими репліками на Azure Database for PostgreSQL. Запити на читання рівномірно розподіляються між репліками, що дозволяє утримувати 99-процентильну затримку (p99) на рівні низьких двозначних мілісекунд. Тим часом операції запису залишаються централізованими з чіткими механізмами зниження зайвого навантаження.

PostgreSQL cascading replication diagram
Каскадна реплікація PostgreSQL (Джерело: блог OpenAI)

Використання «ледачих» записів та оптимізації на рівні додатка допомагає зменшити навантаження на основну інстанцію, гарантує стабільну роботу навіть під час глобальних стрибків трафіку.

Вирішення операційних труднощів

Зі зростанням трафіку виникли типові складнощі: «шторм» пропущених кешів, складні запити з багатьох таблиць, сформовані ORM, і цикли повторних спроб у сервісі. Для усунення цих проблем OpenAI:

  1. перемістив частину обчислень на рівень додатка;
  2. жорсткіше контролював таймаути для неактивних і довготривалих транзакцій;
  3. перебудував структуру запитів, щоб знизити конфлікти з процесом автозвільнення (autovacuum).

Зниження навантаження на запис для покращення продуктивності

Модель MVCC PostgreSQL, що використовується, істотно навантажує CPU та дискову підсистему при великих обсягах оновлень через створення нових версій і витрати на вакуумування. OpenAI зменшив цей тиск, перенісши шардовані навантаження на розподілені системи, ввів обмеження на обсяги бекапів та великих оновлень, а також підтримує суворі операційні політики для запобігання перевантаженню.

Ключові моменти керування підключеннями і розділення навантажень

За словами Шіріша Тоти, корпоративного віце-президента Microsoft, кожна база даних унікальна і потребує ретельного налаштування для масштабування.

OpenAI також зробив ставку на пулінг підключень і розділення робочих навантажень. Застосування PgBouncer у режимі transaction-pooling допомогло знизити затримки при встановленні з’єднань і уникнути пікових навантажень на клієнтські конекти. Крім того, критичні і некритичні завдання були ізольовані, що знизило шум від сусідніх процесів під час пікових навантажень.

PgBouncer Kubernetes deployment
Розгортання Kubernetes з кількома подами PgBouncer (Джерело: блог OpenAI)

Шляхи подальшого зростання масштабованості

Із збільшенням кількості реплік виникає навантаження на основну інстанцію через необхідність трансляції журналів змін WAL до кожного з них. OpenAI експериментує з каскадною реплікацією, коли проміжні репліки передають зміни далі, значно знижуючи навантаження на головний сервер і створюючи умови для подальшого збільшення масштабів.

Ці технології дозволяють PostgreSQL витримувати надвеликі, орієнтовані на читання AI навантаження у різних регіонах світу, тоді як розподілені шардовані системи справляються з інтенсивними операціями запису, зберігаючи стабільність і оперативність.

OpenAI продовжує дослідження для подальшого розширення можливостей масштабування PostgreSQL, в тому числі планує впроваджувати шардовані інсталяції PostgreSQL і альтернативні розподілені системи для збалансування між суворою консистентністю і зростаючим глобальним трафіком, а також для підтримки різноманітних робочих навантажень у майбутньому.

Категорії Без категорії

різне