Открыть сервис

TPC-H

TPC-H — это стандартизированный тест производительности (бенчмарк) для систем управления базами данных (СУБД), разработанный международной некоммерческой организацией Transaction Processing Performance Council (TPC). TPC-H моделирует работу системы в условиях выполнения сложных аналитических запросов (OLAP — онлайн-аналитическая обработка) и предназначен для оценки способности СУБД обрабатывать большие объёмы данных, выполнять ресурсоёмкие операции соединения, агрегации и сортировки, а также генерировать отчёты.

История и цели создания

Бенчмарк TPC-H был официально принят TPC в 1999 году как замена более раннему тесту TPC-D, который, по мнению сообщества, имел ряд недостатков, включая избыточную сложность и неоднозначность интерпретации результатов. Основной целью разработки TPC-H стало создание объективного, воспроизводимого и сопоставимого инструмента для оценки производительности СУБД в сценариях, характерных для систем поддержки принятия решений (DSS) и хранилищ данных.

Ключевые задачи, которые решает TPC-H:

Структура и компоненты теста

TPC-H состоит из нескольких ключевых элементов, которые вместе формируют комплексную оценку производительности.

Модель данных

Схема данных TPC-H представляет собой реляционную модель, состоящую из восьми таблиц, которые моделируют работу оптового поставщика. Таблицы делятся на два типа:

Набор запросов (Queries)

Бенчмарк включает 22 фиксированных аналитических запроса (Q1–Q22). Каждый запрос представляет собой сложный SQL-запрос, который включает:

Примеры типов запросов:

Набор обновлений (Refresh Functions)

TPC-H включает две функции обновления данных (RF1 и RF2), которые имитируют добавление новых заказов и удаление старых. Это необходимо для оценки способности СУБД справляться с конкурентной нагрузкой (смесь запросов и обновлений).

Метрики производительности

Основным результатом теста TPC-H является композитный показатель производительности (TPC-H Composite Query-per-Hour Performance Metric, QphH@Size). Он измеряется в количестве запросов в час и зависит от размера базы данных (Scale Factor, SF).

Процедура выполнения теста

Процесс сертифицированного тестирования TPC-H строго регламентирован и состоит из двух фаз:

  1. Фаза загрузки (Load Test): Данные генерируются с помощью утилиты dbgen, загружаются в СУБД, и на них создаются индексы и статистики.
  2. Фаза выполнения (Power and Throughput Test):

Результаты теста публикуются на официальном сайте TPC и должны сопровождаться полным отчётом (Full Disclosure Report), который содержит все детали конфигурации, настройки СУБД и времена выполнения.

Значение и критика

Значение для индустрии

TPC-H является одним из наиболее авторитетных и широко используемых бенчмарков в области баз данных. Он позволяет:

Критика и ограничения

Несмотря на широкое распространение, TPC-H подвергается критике по нескольким причинам:

Альтернативы

Для более современной оценки аналитических систем были разработаны другие бенчмарки:

Источники

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →