spark-sql性能測試


一,測試環境
      1) 硬件環境完全相同:
             包括:cpu/內存/網絡/磁盤Io/機器數量等
      2)軟件環境:
             相同數據
             相同測試用例
      3) 不同計算框架,其中spark-sql 都是基於yarn的
      4)spark-sql executor內存總量不大於 hive使用內存峰值
二,不同框架在兩個測試用例下的性能對比
1)bu_出租車需求數計算.sql
  orc orc (split 110M) parquet +snappy parquet +gzip
spark-sql 1.4 2mins, 7sec  1mins,40sec Parquet does not support decimal Parquet does not support decimal
spark-sql 1.6 1mins, 30sec   大概1mins,4sec 大概1mins,4sec 大概1mins,4sec
hive 20mins 18.5mins 大概20mins 大概20mins
所占空間(raw倍數) 1 1 1.6 1

 

2)專快播單,接單情況.sql

      spark-sql 1.6保持分配600G的內存不變,在不同數據量下進行測試:

 
200G
550G
1.1T
spark-sql 1.4 11-12mins    
spark-sql 1.6 7-8mins 22mins 51mins
hive 15mins 50mins 將近5T內存,就沒測試

 

3) 聽單

 
time
spark-sql 1.6 190s
hive 1117s

 

4) 

三,總結 

1)spark-sql 1.6  相對於spark-sql 1.4 提高30%的性能;
2)不同應用spark-sql相對於hive性能提升幅度不同,但是都會提高很多
3)不同存儲+壓縮格式,存儲空間不同
4)hive的stage-1的mr個數與數據存儲空間大小成正比;
     注:mr 的個數與block大小有關,所以在split切分設為110M以后,資源占用大概兩倍;
5)在數據量接近或遠大於分配內存資源的情況下,spark-sql速度比下降,但相對於hive,仍就很快(並且hive資源占用過多);


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM