TPC-H, comparison with Greenplum
TPC-H (Transaction Processing Performance Council - High Performance) is a benchmark for evaluating the performance of decision support systems and data warehouses. It includes a set of business-oriented analytical queries and parallel data modifications that simulate real-life scenarios of using such systems.
Test parameters
Benchmark |
TPC-H |
Scaling factor |
|
Query |
random |
Parameters |
random |
Number of threads |
|
Time |
1 hour |
Examples of test queries
See examples of test SQL-queries
--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;
Systems under test
-
Tengri
-
100 vCPU
-
200GB RAM
-
-
Greenplum [1]
-
1 coordinator + 3 nodes of 30 each vCPU, 64GB RAM
-
Results
Number of streams | Tengri, requests per hour | Greenplum, requests per hour |
---|---|---|
|
302 |
304 |
|
1466 |
1082 |
|
2890 |
1444 |
|
4111 |
1800 |
When the system is used by a single analyst, the performance of Tengri and Greenplum is comparable:

When the system is used by 10 analysts, Tengri outperforms Greenplum due to efficient resource utilisation without competition:

Tengri scales linearly as the number of analysts increases, efficiently utilising computing resources:
