1. 程式人生 > >在spark叢集中執行程式遇到的一些問題

在spark叢集中執行程式遇到的一些問題

使用的是yarn模式,所以執行程式之前需要先將所用資料集傳到hdfs上

//檢視hdfs的目錄
./hdfs dfs -ls
//新建一個data資料夾
./hdfs dfs -mkdir /data
//將檔案上傳到data資料夾下
./hdfs dfs -put /root/Readme.txt  /data

在程式中,讀取檔案可以讀取本地檔案,也有讀取hdfs中的檔案

val sc = new SparkContext(conf)
//在本地執行,讀取本地磁碟中的檔案,只需寫明路徑即可
val data = sc.textFile("D:/data/Readme.txt")
//讀取hdfs中的檔案,下列兩個方法都可
val data1 = sc.textFile("hdfs://master:9000/user/root/Readme.txt")
val data2 = sc.textFile("hdfs:///data/Readme.txt")

執行程式時,使用eclipse將程式打成jar包上傳到spark叢集中,使用如下命令執行程式

//在spark的bin目錄下執行
./bin/spark-submit   --class CLASSNAME   --master spark://192.168.45.145:7077  /root/CLASSNAME.jar