本地開發spark程式碼上傳spark叢集服務並執行(基於spark官網文件)

五柳-先生發表於2015-11-25

開啟IDEA 在src下的main下的scala下右擊建立一個scala類 名字為SimpleApp ,內容如下

import org.apache.spark.SparkContext
import org.apache.spark.SparkContext._
import org.apache.spark.SparkConf
object SimpleApp {
  def main(args: Array[String]) {
    val logFile = "/home/spark/opt/spark-1.2.0-bin-hadoop2.4/README.md" // Should be some file on your system
    val conf = new SparkConf().setAppName("Simple Application")
    val sc = new SparkContext(conf)
    val logData = sc.textFile(logFile, 2).cache()
    val numAs = logData.filter(line => line.contains("a")).count()
    val numBs = logData.filter(line => line.contains("b")).count()
    println("Lines with a: %s, Lines with b: %s".format(numAs, numBs))
  }
}
打包檔案:

File-->>ProjectStructure -->點選Artificats-->>點選綠色加號 --> 點選JAR-->>選擇 From module with dependices 


點選Output Layout  看看是否沒有第三方jar包,因為你使用spark叢集環境,所以你不需要第三方jar包


重新build:

Build-->>Build Artifcat ..--->>build 或者rebuild




執行後 就會在D:\mygit\study-scala\out\artifacts\study_scala_jar目錄下看到study-scala.jar


上傳到spark叢集伺服器的 spark_home下的myApp下


上傳/home/spark/opt/spark-1.2.0-bin-hadoop2.4/README.md到HDFS中


提交spark任務:

 ./bin/spark-submit  --class "SimpleApp" --master local[4]  myApp/study-scala.jar



執行結果為a:60,b:29


轉載: http://blog.csdn.net/stark_summer/article/details/42528081

相關文章