복붙노트

[HADOOP] 어떻게 별도의 자바 프로그램 내에서 클러스터 스파크 프로그램을 실행하려면?

HADOOP

어떻게 별도의 자바 프로그램 내에서 클러스터 스파크 프로그램을 실행하려면?

그래서 난 내 자바 프로그램이 클러스터에서 작은 불꽃 모듈 / 프로그램을 실행 할 수있는 방법을 별도의 작은 스파크 프로그램을 실행하는 자바 프로그램이?

예를 들면 : 나는 프로그램 이름 실행자 (자바 프로그램)이있다.

일부 스파크 프로그램 두 숫자를 --add --subtract 두 숫자

어떻게 내 자바 프로그램에서이 경우 즉 집행을 클러스터에 그 스파크 프로그램을 실행할 수 있습니다.

감사!!!

해결법

  1. ==============================

    1.https://github.com/spark-jobserver/spark-jobserver : 당신이 공유 텍스를 만들 수 있도록하고 나머지 인터페이스에서 작업을 실행 스파크 작업 서버 프로젝트를 확인 이 유용한되기를 바랍니다

    https://github.com/spark-jobserver/spark-jobserver : 당신이 공유 텍스를 만들 수 있도록하고 나머지 인터페이스에서 작업을 실행 스파크 작업 서버 프로젝트를 확인 이 유용한되기를 바랍니다

  2. ==============================

    2.가능한 해결 방법이 될 수 :

    가능한 해결 방법이 될 수 :

  3. ==============================

    3.당신은 SparkLauncher이 방법을 사용할 수 있습니다 :

    당신은 SparkLauncher이 방법을 사용할 수 있습니다 :

    import org.apache.spark.launcher.SparkLauncher
    import scala.collection.JavaConverters._
    
    
    val env = Map(
      "HADOOP_CONF_DIR" -> hadoopConfDir,
      "YARN_CONF_DIR" -> yarnConfDir
    )
    
    println(env.asJava)
    val process = new SparkLauncher(env.asJava)
      .setSparkHome(sparkHome)
      .setAppResource(jarPath)
      .setAppName(appName)
      .setMainClass(className) //Main class in your uber spark JAR 
      .setMaster(master)
      //.setConf("spark.driver.memory", "2g") example additional conf prop
      .setVerbose(true)
      .launch()
    
  4. from https://stackoverflow.com/questions/31582892/how-to-run-a-spark-program-on-cluster-from-within-a-separate-java-program by cc-by-sa and MIT license