Spark-Bench 測試教程

Spark-Bench 教程

本文原始地址:https://sitoi.cn/posts/19752.htmlhtml

系統環境配置

操做系統:centos7git

環境要求:安裝 JDK, Hadoop, Sparkmvn 運行環境github

步驟

  1. 安裝測試工具ubuntu

    1. 安裝 wikixmlj
    2. 安裝 SparkBench 基準測試組件
    3. 單機環境安裝方式
  2. 根據實際環境配置測試環境vim

    1. 修改基本環境
    2. 配置 Spark 運行參數部分
  3. 運行 Spark-Bench 測試centos

    1. 機器學習測試案例
    2. 圖計算測試案例
    3. SQL 查詢測試案例
    4. 流處理測試案例
    5. 其餘測試案例
  4. 查看測試結果bash

安裝測試工具

全部步驟在 hdfs 帳號下進行:機器學習

安裝 wikixmlj

克隆項目:項目地址maven

git clone https://github.com/synhershko/wikixmlj.git

進入項目目錄進行 mvn 編譯:工具

cd wikixmlj

mvn package -Dmaven.test.skip=true

mvn install -Dmaven.test.skip=true
安裝 SparkBench 基準測試組件

注: ubuntu 系統須要安裝如下包:

sudo apt-get install libgfortran3

克隆項目:項目地址

git clone -b legacy https://github.com/CODAIT/spark-bench.git

進入項目目錄進行構建:

cd spark-bench/
./bin/build-all.sh
單機環境安裝方式

在其餘機器上執行上述兩步,將兩個文件拷貝到須要測試的機器上的 hdfs 帳號下

注: ubuntu 系統須要安裝額外包

根據實際環境配置測試環境

進入到 spark-bench 目錄下修改 conf 目錄下的 env.sh

cd spark-bench/
vim conf/env.sh
修改基本環境

根據實際狀況修改對應配置

master="<master_ip_address>"                   根據實際狀況修改master
MC_LIST=""
HADOOP_HOME=<HADOOP_HOME>                      根據實際狀況修改HADOOP_HOME
SPARK_HOME=<SPARK_HOME>                        根據實際狀況修改SPARK_HOME
HDFS_URL="hdfs://${master}:9000"               根據實際狀況修改端口號
DATA_HDFS="hdfs://${master}:9000/SparkBench"   根據實際狀況修改端口號
配置 Spark 運行參數部分

修改conf目錄下的env.sh

SPARK_EXECUTOR_MEMORY=4G                       根據實際狀況修改
export SPARK_DRIVER_MEMORY=4g                  根據實際狀況修改
export SPARK_EXECUTOR_INSTANCES=1              根據實際狀況修改
export SPARK_EXECUTOR_CORES=1                  根據實際狀況修改

運行 Spark-Bench 測試

測試案例 功能
機器學習測試案例 邏輯迴歸,支持向量機,矩陣分解
圖計算測試案例 PageRank,SVD++,三角計數(Triangle Count)
SQL查詢測試案例 Hive,RDDRelation
流處理測試案例 Twitter Tag , Page View
其餘測試案例 Kmeans,線性迴歸,決策樹,最短路徑,標籤傳播,連通圖,強連通圖
機器學習測試案例

進入到 spark-bench 目錄下,在該目錄下執行操做:

測試案例 Workload
邏輯迴歸 LogisticRegression
支持向量機 SVM
矩陣分解 MatrixFactorization

步驟:

  1. 修改配置參數
  2. 運行生成測試數據腳本
  3. 運行相應案例測試腳本
修改配置參數

<Workload> 根據測試案例表填寫實際內容,下同:

vim <Workload>/conf/env.sh
運行生成測試數據腳本
./<Workload>/bin/gen_data.sh
運行相應案例測試腳本
./<Workload>/bin/run.sh
圖計算測試案例

進入到 spark-bench 目錄下,在該目錄下執行操做:

測試案例 Workload
網頁排名 PageRank
SVD++ SVDPlusPlus
三角計數 TriangleCount

步驟:

  1. 修改配置參數
  2. 運行生成測試數據腳本
  3. 運行相應案例測試腳本
修改配置參數
vim <Workload>/conf/env.sh
運行生成測試數據腳本
./<Workload>/bin/gen_data.sh
運行相應案例測試腳本
./<Workload>/bin/run.sh

SQL 查詢測試案例

進入到 spark-bench 目錄下,在該目錄下執行操做:

測試案例 Workload
SQL查詢 SQL

步驟:

  1. 修改配置參數
  2. 運行生成測試數據腳本
  3. 運行相應案例測試腳本
修改配置參數
vim /<Workload>/conf/env.sh
運行生成測試數據腳本
./<Workload>/bin/gen_data.sh
運行相應案例測試腳本
./<Workload>/bin/run.sh

在運行 SQL 查詢案例時,默認是運行其中的 RDDRelation 案例,若是要想運行其中的 Hive 案例能夠執行下面代碼:

./<Workload>/bin/run.sh hive

流處理測試案例

進入到 spark-bench 目錄下,在該目錄下執行操做:

測試案例 Workload
流處理 Streaming

步驟:

  1. 修改配置參數
  2. 首先在一個終端中執行生成隨機數據
  3. 而後再另外一個終端中執行
修改配置參數
vim <Workload>/conf/env.sh

在運行流數據處理案例時,例如 TwitterTag,Streaming 邏輯迴歸

首先在一個終端中執行生成隨機數據

在執行腳本時必需要指定你要運行案例名字的參數,以下:

./<Workload>/bin/gen_data.sh TwitterPopularTags
而後再另外一個終端中執行

在執行腳本時必需要指定你要運行案例名字的參數,以下:

./<Workload>/bin/run.sh TwitterPopularTags

固然你也能夠在 <Workload>/conf/env.sh 配置文件中指定你要運行的子案例的名稱,經過修改 subApp=TwitterPopularTags

其餘測試案例

進入到 spark-bench 目錄下,在該目錄下執行操做:

測試案例 Workload
Kmeans Kmeans
線性迴歸 LinearRegression
決策樹 DecisionTree
最短路徑 ShortestPaths
標籤傳播 LabelPropagation
連通圖 ConnectedComponent
強連通圖 StronglyConnectedComponent
主成分分析 PCA

步驟:

  1. 修改配置參數
  2. 運行生成測試數據腳本
  3. 運行相應案例測試腳本
修改配置參數
vim <Workload>/conf/env.sh
運行生成測試數據腳本
./<Workload>/bin/gen_data.sh
運行相應案例測試腳本
./<Workload>/bin/run.sh

查看測試結果

spark-bench 目錄下的 num 目錄下能夠查看到運行結果。

相關連接

開源項目官網 : https://github.com/CODAIT/spark-bench/tree/legacy

安裝文檔 : https://blog.csdn.net/xfg0218/article/details/79250019

相關文章
相關標籤/搜索