TPC-H, сравнение с Greenplum
TPC-H (Transaction Processing Performance Council — High Performance) — это бенчмарк для оценки производительности систем поддержки принятия решений и хранилищ данных. Он включает в себя набор бизнес-ориентированных аналитических запросов и параллельные модификации данных, моделирующие реальные сценарии использования таких систем.
Параметры теста
Бенчмарк |
TPC-H |
Scaling factor |
|
Запрос |
случайный |
Параметры |
случайные |
Количество потоков |
|
Время |
1 час |
Примеры тестовых запросов
Посмотреть примеры тестовых SQL-запросов
--Q1. Pricing Summary Report Query
--inputs = [{"depth": random.choice(range(90))}]
select
l_returnflag,
l_linestatus,
sum(l_quantity) as sum_qty,
sum(l_extendedprice) as sum_base_price,
sum(l_extendedprice * (1-l_discount)) as sum_disc_price,
sum(l_extendedprice * (1-l_discount) * (1+l_tax)) as sum_charge,
avg(l_quantity) as avg_qty,
avg(l_extendedprice) as avg_price,
avg(l_discount) as avg_disc,
count(*) as count_order
from
s1_lineitem
where
l_shipdate <= (DATE '1998-12-01') - :depth * interval '1' day
group by
l_returnflag,
l_linestatus
order by
l_returnflag,
l_linestatus;
--Q2. Minimum Cost Supplier Query
--inputs.size = random.choice(range(50))
--inputs.type = random.choice(['TIN','NICKEL', 'BRASS', 'STEEL', 'COPPER'])
--inputs.region = random.choice(['AFRICA','AMERICA','ASIA','EUROPE','MIDDLE EAST'])
select s_acctbal,s_name,n_name,p_partkey,p_mfgr,s_address,s_phone,s_comment
from s1_part, s1_supplier,s1_partsupp,s1_nation,s1_region
where p_partkey = ps_partkey
and s_suppkey = ps_suppkey
and p_size = :size
and p_type like '%' || :type
and s_nationkey = n_nationkey
and n_regionkey = r_regionkey
and r_name = :region
and ps_supplycost = (
Select min(ps_supplycost)
from s1_partsupp, s1_supplier, s1_nation, s1_region
Where p_partkey = ps_partkey
and s_suppkey = ps_suppkey
and s_nationkey = n_nationkey
and n_regionkey = r_regionkey
and r_name = :region
)
order by s_acctbal desc,n_name,s_name,p_partkey;
Тестируемые системы
-
Tengri
-
100 vCPU
-
200GB RAM
-
-
Greenplum [1]
-
1 координатор + 3 ноды по 30 vCPU, 64GB RAM
-
Результаты
Количество потоков | Tengri, запросов в час | Greenplum, запросов в час |
---|---|---|
|
302 |
304 |
|
1466 |
1082 |
|
2890 |
1444 |
|
4111 |
1800 |
При использовании системы одним аналитиком производительность Tengri и Greenplum сравнимая:

При использовании системы 10 аналитиками Tengri опережает Greenplum за счет эффективной утилизации ресурсов без конкуренции:

Tengri линейно масштабируется при увеличении количества аналитиков, эффективно утилизируя вычислительные ресурсы:
