使用spark-sql-perf评测spark 2.0
2019獨(dú)角獸企業(yè)重金招聘Python工程師標(biāo)準(zhǔn)>>>
文章分為四個(gè)部分講述怎樣使用spark官方評(píng)測工具評(píng)測spark 2.0 tpc ds支持情況
基礎(chǔ)環(huán)境的安裝
刀片機(jī):1臺(tái) 126G內(nèi)存 64核心 centos 7.2
virtualbox安裝四臺(tái)虛擬機(jī)(centos 7.2,16G內(nèi)存,4核):master,worker1,worker2,worker3(centos下)
spark版本:2.0
hadoop版本:2.6
安裝請(qǐng)參考:hadoop安裝或者Spark On Yarn安裝
安裝后的截圖
davies/tpcds-kit 下載、編譯、部署
簡介
davies/tpcds-kit是用來生成測試數(shù)據(jù)的工具
下載
git clone https://github.com/davies/tpcds-kit.git
編譯
任選一臺(tái)機(jī)器(這里我們選擇master)安裝以下編譯工具(默認(rèn)軟件里沒有編譯工具)
yum install gcc gcc-c++ bison flex cmake ncurses-devel cd tpcds-kit/tools cp Makefile.suite Makefile #復(fù)制Makefile.suite為Makefile make #運(yùn)行make命令接下來,拷貝tpcds-kit到所有機(jī)器的相同目錄下(重要)
scp -r /目錄/tpcds-kit root@worker1:/目錄/tpcds-kit #執(zhí)行三次該命令復(fù)制到worker1,worker2,worker3databricks/spark-sql-perf 下載、打包
下載
git clone https://github.com/databricks/spark-sql-perf.git
打包
使用sbt package打包的jar在使用時(shí)會(huì)出現(xiàn)依賴找不到情況,我們使用Intellij Idea導(dǎo)入該工程
修改sbt.build,更改scala版本為2.11.8
打包成jar包
設(shè)置Project Structure
設(shè)置Artifacts
Build
jar包不需要每個(gè)節(jié)點(diǎn)都有
運(yùn)行TPCDS測試
更改spark.env中的driver內(nèi)存限制
SPARK_DRIVER_MEMORY=8G #依具體情況而定
運(yùn)行spark-shell
cd spark-2.0.0-bin-hadoop2.6 ./bin/spark-shell --jars /jar包目錄/spark-sql-perf.jar --num-executors 20 --executor-cores 2 --executor-memory 8G --master spark://master:7077在spark-shell中運(yùn)行測試
// 創(chuàng)建sqlContext val sqlContext=new org.apache.spark.sql.SQLContext(sc) import sqlContext.implicits._ // 生成數(shù)據(jù) 參數(shù)1:sqlContext 參數(shù)2:tpcds-kit目錄 參數(shù)3:生成的數(shù)據(jù)量(GB) val tables=new Tables(sqlCotext,"/目錄/tpcds-kit/tools",1) tables.genData("hdfs://master:8020:tpctest","parquet",true,false,false,false,false); // 創(chuàng)建表結(jié)構(gòu)(外部表或者臨時(shí)表) // talbles.createExternalTables("hdfs://master:8020:tpctest","parquet","mytest",false) talbles.createTemporaryTables("hdfs://master:8020:tpctest","parquet") import com.databricks.spark.sql.perf.tpcds.TPCDS val tpcds=new TPCDS(sqlContext=sqlContext) //運(yùn)行測試 val experiment=tpcds.runExperiment(tpcds.tpcds1_4Queries)在spark-shell中我們可以調(diào)用 _experiment.html_查看執(zhí)行狀態(tài)
HDFS上生成的數(shù)據(jù)截圖
運(yùn)行截圖
運(yùn)行結(jié)果保存在spark/performance目錄下
HDFS上的評(píng)測結(jié)果截圖
轉(zhuǎn)載于:https://my.oschina.net/u/697744/blog/805428
總結(jié)
以上是生活随笔為你收集整理的使用spark-sql-perf评测spark 2.0的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 坚持你选择的路
- 下一篇: Ansible自动化运维工具介绍