TPC-H Benchmark
TPC-H — это benchmark для систем поддержки принятия реш ений, разработанный Transaction Processing Performance Council (TPC). Он состоит из набора бизнес-ориентированных ad-hoc запросов и параллельных модификаций данных. TPC-H может использоваться для построения моделей на основе реальных production-сред для симуляции хранилища данных системы продаж. Этот тест использует восемь таблиц с размером данных от 1 ГБ до 3 ТБ. Тестируется всего 22 запроса, основной метрикой производительности является время ответа каждого запроса, то есть длительность между моментом отправки запроса и моментом возврата результата.
1. Выводы тестирования
Сравнительный тест был проведен на наборе данных TPC-H масштаба 100G с общим количеством 22 запросов. Результаты следующие:

Selena тестировала два метода: использование локального хранилища и запросы к таблицам Hive. Таблица Hive в Selena и Trino запрашивают одни и те же данные. Данные хра нятся в формате ORC и сжаты в формате zlib.
Задержка для Selena при запросе данных из собственного хранилища составляет 21 с, для Selena при запросе внешних таблиц Hive — 92 с, а для Trino при запросе внешних таблиц Hive — 187 с.
2. Подготовка к тестированию
2.1 Аппаратная среда
| Машина | 4 облачных хоста |
|---|---|
| CPU | 16core Intel(R) Xeon(R) Platinum 8269CY CPU @ 2.50GHz |
| Память | 64 GB |
| Пропускная способность сети | 5 Gbits/s |
| Диск | ESSD cloud disk |
2.2 Программная среда
Selena и Trino развернуты на машинах с одинаковой конфигурацией. В Selena развернуты 1 FE и 3 BE. В Trino развернуты 1 Coordinator и 3 Workers.
-
Версия ядра: Linux 3.10.0-1127.13.1.el7.x86_64
-
Версия операционной системы: CentOS Linux release 7.8.2003
-
Версия ПО: Selena 2.0, Trino-419, Hive-2.3.9
3 Тестовые данные и результаты
3.1 Тестовые данные
| table | количество строк |
|---|---|
| customer | 15 миллионов |
| lineitem | 600 миллионов |
| nation | 25 |
| orders | 150 миллионов |
| part | 20 миллионов |
| partsupp | 80 миллионов |
| region | 5 |
| supplier | 1 миллион |