Как OpenAI использует PostgreSQL для ChatGPT

OpenAI представила технический блог, в котором обсуждает, как PostgreSQL поддерживает работу ChatGPT, имеющего от 800 до 900 миллионов активных пользователей еженедельно. Инженер компании Бохан Чжан поделился информацией на конференции PGConf.Dev 2025, отметив, что система функционирует без шардирования, применяя единственный основной сервер и около 50 реплик для чтения. Кластер способен обрабатывать свыше миллиона запросов в секунду, обеспечивая время отклика в низкие двузначные миллисекунды на 99-м перцентиле. Все это достигается благодаря стандартному PostgreSQL с оптимизированным пулом соединений, грамотной индексацией и настройками запросов. Однако запись данных осуществляется только через основной сервер, что требует строгой оптимизации. Чтение, в свою очередь, легче масштабируется благодаря распределению реплик по регионам и приоритизации трафика. Этот подход OpenAI отличается от текущего тренда на распределенные базы данных, подчеркивая эффективность единого кластера для Reading-ориентированных нагрузок.

Вопрос-ответ

Каким образом OpenAI справляется с огромной нагрузкой ChatGPT с помощью PostgreSQL, не прибегая к шардированию?

OpenAI использует архитектуру с одним основным (primary) сервером для всех операций записи и примерно 50 репликами для чтения. Эта схема позволяет эффективно масштабировать операции чтения, которые составляют основную часть нагрузки, распределяя их по множеству реплик в разных регионах.

Каких показателей производительности достигает кластер PostgreSQL, обслуживающий ChatGPT?

Кластер способен обрабатывать более одного миллиона запросов в секунду. При этом время отклика для 99% запросов (на 99-м перцентиле) составляет всего несколько десятков миллисекунд (низкие двузначные значения).

Что лежит в основе такой высокой производительности на стандартном PostgreSQL?

Высокая производительность достигается благодаря классическим методам оптимизации, а не за счет перехода на распределенные базы данных. Ключевыми факторами являются оптимизированный пул соединений, грамотно настроенная индексация и тщательно проработанные запросы к базе данных.