> 文章列表 > Presto VS Spark

Presto VS Spark

Presto VS Spark

环境配置

5个节点,每个节点10G内存。

测试SQL,每个执行3次,求平均,对比计算性能

版本信息

  • Spark:2.3.1
  • Presto: 0.208

10亿量级查询性能对别

Spark:

spark-sql> select sex,count(1) from contact10 group by sex;
F 499976538
M 500023462
Time taken: 2.55 seconds, Fetched 2 row(s)

Presto:

presto> select sex,count(1) from contact10 group by sex;
sex | _col1
-----+-----------
M | 500023462
F | 499976538
(2 rows)Query 20180827_131349_00018_8qdyf, FINISHED, 5 nodes
Splits: 1,019 total, 1,019 done (100.00%)
0:05 [1000M rows, 123MB] [215M rows/s, 26.4MB/s]

Spark计算比Presto快一倍,胜出。

1000W量级查询性能对比

平分秋色,Spark会好那么一丢丢。

  • Spark: 0.43s
  • Presto: 0.5s

100条以内的表查询性能对比

Presto无论聚合计算,还是全表扫描查询,都略比Spark有优势,不过总的查询不大,性能优势可以忽略。

  • Spark:0.19s
  • Presto:0.11s

发现的问题

Presto: 不支持Hive的View

结论

测试结果上和京东的朋友做的对比测试确实比较吻合。

从生态及性能两方面考虑,Presto相比Spark2.x确实没啥优势了。