PRODСуверенная европейская платформа BaaSОткрыть панель управления →

Производительность · 11 минута чтения

Тест Aurabase Postgres: pgbench, sysbench, TPC-C

Affane Daylami · Fondateur · 5 марта 2026 г.

Вернуться в блог

Aurabase предоставляет стандартный PostgreSQL 16 без собственного наложения — это означает, что все инструменты тестирования Postgres в экосистеме работают непосредственно с вашей базой данных Aurabase. Вот как можно самостоятельно измерить свою эффективность с помощью трех справочных инструментов, а не полагаться на опубликованные кем-либо маркетинговые данные.

Этот текст на английском языке был создан автоматически на основе французского оригинала и еще не проверялся.
Эта страница была переведена автоматически. Английская версия является авторитетной.

Самое необходимое

pgbench (официальный инструмент PostgreSQL, рабочая нагрузка близка к TPC-B) и sysbench-tpcc (рабочая нагрузка TPC-C, более репрезентативная для реальной транзакционной нагрузки) оба работают напрямую со стандартной строкой подключения Postgres 16 вашего проекта Aurabase — без использования проприетарного API. В этом руководстве показаны фактические заказы и то, где заканчивается то, что может законно доказать показатель GST.

#
Почему эти два инструмента

pgbench для простоты, sysbench-tpcc для реалистичности

pgbench распространяется вместе с PostgreSQL: отдельной установки на клиенте не требуется, если у вас уже есть клиентские инструменты Postgres. Его рабочая нагрузка по умолчанию воспроизводит нагрузку, близкую к историческому тесту TPC-B — простому, быстрому запуску, полезному для первого сигнала.

sysbench — это более общий инструмент тестирования с плагином sysbench-tpcc, который копирует рабочую нагрузку TPC-C — сочетание транзакций, представляющее реальное приложение OLTP (заказы, платежи, запасы), более близкое к тому, что ваш серверный компонент Aurabase обрабатывает в рабочей среде, чем стандартная рабочая нагрузка pgbench.

#
Подготовка

Получите строку подключения и создайте специальную тестовую базу.

1

Получите строку подключения с панели управления Aurabase.

Раздел базы данных вашего проекта, стандартный формат postgresql://user:password@host:5432/dbname.

2

Создайте отдельную тестовую базу, а не производственную базу.

psql "$AURABASE_CONN" -c "СОЗДАТЬ БАЗУ ДАННЫХ Bench_test;"

Никогда не сравнивайте свою производственную базу

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

#
pgbench

Инициализируйте и запустите первый запуск

1

Инициализировать набор данных

pgbench -i -s 10 "postgresql://user:pass@host:5432/bench_test" # -s 10 = коэффициент масштабирования (10 × 100 000 строк в pgbench_accounts)

2

Запустите 60-секундный забег с 10 конкурирующими клиентами.

pgbench -c 10 -j 2 -T 60 -P 5 "postgresql://user:pass@host:5432/bench_test" # -c = одновременные клиенты · -j = потоки · -T = продолжительность в секундах · -P = отчет каждые 5 секунд

3

Прочитайте результат

pgbench отображает tps (транзакций в секунду) в конце выполнения, с указанием времени соединения и без него. Обратите внимание на коэффициент масштабирования, количество клиентов и продолжительность запуска — без этих трех параметров само по себе число ничего не значит.

#
sysbench-tpcc

Более репрезентативная транзакционная рабочая нагрузка

1

Установите sysbench и плагин tpcc.

git clone https://github.com/Percona-Lab/sysbench-tpcc.git # следуйте README репозитория для компиляции плагина

2

Подготовьте набор данных TPC-C

./tpcc.lua --pgsql-host=host --pgsql-user=user --pgsql-password=pass \ --pgsql-db=bench_test --warehouses=10 подготовить

3

Начать бег

./tpcc.lua --pgsql-host=host --pgsql-user=user --pgsql-password=pass \ --pgsql-db=bench_test --warehouses=10 --time=300 --threads=16 --report-interval=10 запустить

Руководство по настройке sysbench-tpcc, посвященное PostgreSQL, было опубликовано Percona в мае 2026 года и полезно для настройки shared_buffers и work_mem перед запуском репрезентативного запуска.

#
Интерпретация

Чего не доказывает одна цифра GST

Значение tps зависит от коэффициента масштабирования, количества одновременных клиентов, базового оборудования и настроек Postgres, активных на момент запуска. Два временных показателя, полученные с разными параметрами, несопоставимы даже в одной базе данных.

Чтобы ваш результат служил воспроизводимым эталоном, систематически документируйте: версию Postgres, коэффициент масштабирования, количество клиентов/потоков, продолжительность выполнения и эффективную конфигурацию postgresql.conf. Прежде чем публиковать данные, ознакомьтесь с нашей полной методикой тестирования для протокола, который мы применяем.

#
Иди дальше

Настройка Postgres перед перезапуском запуска

Тестовый прогон часто выявляет узкое место еще до любой корректировки — насыщенные соединения, запаздывающая автоочистка, отсутствующий индекс. В нашем контрольном списке настройки Postgres в рабочей версии и в нашей статье о max_connections с размером описаны параметры, которые необходимо проверить перед перезапуском запуска.

#
Часто задаваемые вопросы

Часто задаваемые вопросы

В чем разница между pgbench и sysbench?+
pgbench — официальный инструмент, поставляемый с PostgreSQL: простой в установке, рабочая нагрузка по умолчанию близка к TPC-B. sysbench — это более общий инструмент для тестирования производительности с плагином sysbench-tpcc, который воспроизводит рабочую нагрузку TPC-C в PostgreSQL.
Можем ли мы запустить pgbench непосредственно в базе данных Aurabase?+
Да, по стандартной строке подключения Postgres, представленной на панели управления вашего проекта. Используйте специальную тестовую базу, а не производственную.
Достаточно ли показателя tps для сравнения двух бэкэндов?+
Нет. TPS зависит от количества одновременных клиентов, размера набора данных, базового оборудования и конфигурации Postgres. Без опубликованной и идентично воспроизведенной методологии два показателя GST несопоставимы.

ГОТОВЫ К РАЗВЕРТЫВАНИЮ?

Ваш бэкэнд за пять минут.

Кредитная карта не требуется · 500 МБ бесплатно · 50 000 MAU