我在linux上安裝了spark,單節點,master節點也是worker節點, ip是192.168.90.74.使用spark-shell的時候很正常。我想在eclipse開發spark程式并且直接運行除錯,但遇到了各種問題,向大家求教。我程式運行在自己的筆記本上,ip是192.168.90.88,我的測驗程式如下:
System.setProperty("user.name", "webuser");
JavaSparkContext ct= new JavaSparkContext("spark://192.168.90.74:7077","test--1","/home/webuser/spark/spark-1.5.2-bi n-hadoop2.4","C://newWorkSpace/java.spark.test/target/java.spark.test-0.0.1-SNAPSHOT.jar");
List list=new ArrayList();
list.add(1);
list.add(6);
list.add(9);
JavaRDD<String> rdd=ct.parallelize(list);
System.out.println(rdd.collect());
rdd.saveAsTextFile("/home/webuser/temp");
ct.close();1. 運行的時候要把jar包加進去,這里是使用sparkContext的建構式加進來的。請問這個jar包必須事先上傳到master上然后使用master上的路徑嗎?
2.當我把jar路徑指定為maste上jar包路徑的時候程式才可以運行,之前一直報錯找不到盤符c。運行后又有新問題,程式成功的打出了collect結果,但是saveAsTextFile結果不正確,他在我開發的電腦的c盤下面創建了/home/webuser/temp檔案夾,沒有在運行spark的server上創建,請問這是什么原理?我的理解rdd的action應該運行在worker節點,而我程式運行的地方是driver,為啥他會在driver上創建檔案而不是在worker上?
uj5u.com熱心網友回復:
這路徑怎么有linux還windows啊,沒看懂uj5u.com熱心網友回復:
技術貼,支持了轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/75882.html
標籤:Spark
