TPC-H是业界常用的一套Benchmark,由TPC委员会制定发布,用于评测数据库的分析型查询能力。TPC-H查询包含8张数据表、22条复杂的SQL查询,大多数查询包含若干表Join、子查询和Group-by聚合等。
本次测试基于TPC-H 100G数据进行,其中主要表数据量如下:LINEITEM表约6亿行,ORDERS表1.5亿行,PARSUPP表8000万行。
测试环境机器 | 1台master阿里云主机 | 3台core阿里云主机 |
CPU | 8Core | 32Core |
内存 | 32G | 128G |
带宽 | 2.5 Gbit/s | 10 Gbit/s |
节点类型 | Impala 3.4.0 | StarRocks 2.2 |
emr-header-1 | impala-catalog/impala-state-store | FE |
emr-worker-1 | impala-server | BE |
emr-worker-2 | impala-server | BE |
emr-worker-3 | impala-server | BE |
Impala配置
EMR上默认Impala是访问local hive cluster, 为了跨网络访问HDFS,需要:
- 修改配置文件
# /etc/ecm/impala-conf
hive.metastore.uris
thrift://192.168.1.11:9083
- 将域名添加到所有机器的/etc/hosts下面
- 重启所有的impala组件
优化参数如下:
- num_remote_hdfs_io_threads = 48
- num_hdfs_worker_threads = 48
- coordinator_rpc_threads = 48
在StarRocks中按照如下方式创建外表,以外表形式访问Hive数据:
CREATE EXTERNAL TABLE `orders` (
`o_orderkey` int(11) NULL COMMENT "",
`o_custkey` int(11) NULL COMMENT "",
`o_orderstatus` varchar(1) NULL COMMENT "",
`o_totalprice` double NULL COMMENT "",
`o_orderdate` date NULL COMMENT "",
`o_orderpriority` varchar(15) NULL COMMENT "",
`o_clerk` varchar(15) NULL COMMENT "",
`o_shippriority` int(11) NULL COMMENT "",
`o_comment` varchar(79) NULL COMMENT ""
) ENGINE=HIVE
COMMENT "PARTITION BY ()"
PROPERTIES (
"database" = "tpch_100g_zlib",
"table" = "orders",
"resource" = "emr_test",
"hive.metastore.uris" = "thrift://192.168.1.11:9083"
);
使用默认配置(下面都是默认值):
- cbo_max_reorder_node_use_dp = 10
- cbo_enable_dp_join_reorder = true
- cbo_max_reorder_node_use_exhaustive = 4
- enable_global_runtime_filter = true
- doris_scanner_thread_pool_thread_num = 48
Impala在运行Q18的时候出现过OOM,Q11不支持Having子句,因此在统计总体时间时不将这两个查询计算在内。分别测试并发为4,8,16的情况。
C = 4
Query | impala | starRocks | Imapa/StarRocks |
Q01 | 12615 | 17020 | 0.741186839 |
Q02 | 7075 | 1548 | 4.570413437 |
Q03 | 19545 | 8224 | 2.376580739 |
Q04 | 19163 | 8193 | 2.338947882 |
Q05 | 33196 | 20808 | 1.595347943 |
Q06 | 7523 | 5517 | 1.363603408 |
Q07 | 55233 | 8265 | 6.682758621 |
Q08 | 24650 | 10121 | 2.435530086 |
Q09 | 43989 | 23607 | 1.863387978 |
Q10 | 15042 | 7321 | 2.054637345 |
Q11 | 0 | 1410 | 0 |
Q12 | 15800 | 7415 | 2.130815914 |
Q13 | 28044 | 14235 | 1.970073762 |
Q14 | 11099 | 7594 | 1.461548591 |
Q15 | 19330 | 13687 | 1.412289033 |
Q16 | 6334 | 2402 | 2.636969192 |
Q17 | 46142 | 9758 | 4.728632917 |
Q18 | 0 | 33176 | 0 |
Q19 | 14472 | 7583 | 1.908479494 |
Q20 | 18958 | 7667 | 2.472675101 |
Q21 | 77373 | 26897 | 2.876640518 |
Q22 | 7209 | 3688 | 1.954718004 |
Total | 482792 | 211550 | 2.282164973 |
C = 8
Query | impala | StarRocks | Imapa/StarRocks |
Q01 | 16664 | 22543 | 0.739209511 |
Q02 | 8766 | 2341 | 3.74455361 |
Q03 | 25471 | 9869 | 2.58090992 |
Q04 | 25564 | 10966 | 2.331205544 |
Q05 | 40461 | 28565 | 1.416453702 |
Q06 | 14471 | 11483 | 1.260210746 |
Q07 | 73645 | 16738 | 4.399868563 |
Q08 | 36240 | 19743 | 1.835587297 |
Q09 | 58073 | 29132 | 1.993443636 |
Q10 | 21039 | 10602 | 1.984436899 |
Q11 | 0 | 2709 | 0 |
Q12 | 23967 | 12466 | 1.922589443 |
Q13 | 37570 | 18611 | 2.018698619 |
Q14 | 20287 | 15113 | 1.342354265 |
Q15 | 38694 | 27451 | 1.409566136 |
Q16 | 7903 | 2792 | 2.830587393 |
Q17 | 54877 | 19449 | 2.821584657 |
Q18 | 0 | 39803 | 0 |
Q19 | 24556 | 16146 | 1.520872043 |
Q20 | 25949 | 16973 | 1.528839922 |
Q21 | 99201 | 39376 | 2.519326493 |
Q22 | 9647 | 5128 | 1.88124025 |
Total | 663045 | 335487 | 1.976365701 |
C = 16
Query | impala | StarRocks | Imapa/StarRocks |
Q01 | 33109 | 43032 | 0.769404164 |
Q02 | 14084 | 4675 | 3.012620321 |
Q03 | 43767 | 16652 | 2.628332933 |
Q04 | 44760 | 18309 | 2.444699328 |
Q05 | 59935 | 45499 | 1.317281698 |
Q06 | 29002 | 23664 | 1.225574713 |
Q07 | 119317 | 33133 | 3.601152929 |
Q08 | 70404 | 39255 | 1.793504012 |
Q09 | 92872 | 41868 | 2.218209611 |
Q10 | 38625 | 19463 | 1.984534758 |
Q11 | 0 | 5731 | 0 |
Q12 | 43914 | 23269 | 1.887231939 |
Q13 | 69355 | 30471 | 2.276098586 |
Q14 | 40873 | 30678 | 1.332322837 |
Q15 | 77504 | 54967 | 1.410009642 |
Q16 | 11696 | 3895 | 3.002824134 |
Q17 | 79944 | 39428 | 2.027594603 |
Q18 | 0 | 57030 | 0 |
Q19 | 46156 | 31054 | 1.486314162 |
Q20 | 47937 | 30430 | 1.575320407 |
Q21 | 163101 | 78061 | 2.08940444 |
Q22 | 14637 | 8447 | 1.732804546 |
Total | 1140992 | 616250 | 1.851508316 |
通过以上测试结果可以看到,不同并行度下,StarRocks的性能表现都优于Impala,有近2倍的性能优势。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)