class SparkLauncher extends AbstractLauncher[SparkLauncher]
Launcher for Spark applications.
Use this class to start Spark applications programmatically. The class uses a builder pattern to allow clients to configure the Spark application and launch it as a child process.
- Source
- SparkLauncher.java
- Alphabetic
- By Inheritance
- SparkLauncher
- AbstractLauncher
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def addAppArgs(args: <repeated...>[String]): SparkLauncher
Adds command line arguments for the application.
Adds command line arguments for the application.
- args
Arguments to pass to the application's main class.
- returns
This launcher.
- Definition Classes
- SparkLauncher → AbstractLauncher
- Annotations
- @Override()
- def addFile(file: String): SparkLauncher
Adds a file to be submitted with the application.
Adds a file to be submitted with the application.
- file
Path to the file.
- returns
This launcher.
- Definition Classes
- SparkLauncher → AbstractLauncher
- Annotations
- @Override()
- def addJar(jar: String): SparkLauncher
Adds a jar file to be submitted with the application.
Adds a jar file to be submitted with the application.
- jar
Path to the jar file.
- returns
This launcher.
- Definition Classes
- SparkLauncher → AbstractLauncher
- Annotations
- @Override()
- def addPyFile(file: String): SparkLauncher
Adds a python file / zip / egg to be submitted with the application.
Adds a python file / zip / egg to be submitted with the application.
- file
Path to the file.
- returns
This launcher.
- Definition Classes
- SparkLauncher → AbstractLauncher
- Annotations
- @Override()
- def addSparkArg(name: String, value: String): SparkLauncher
Adds an argument with a value to the Spark invocation.
Adds an argument with a value to the Spark invocation. If the argument name corresponds to a known argument, the code validates that the argument actually expects a value, and throws an exception otherwise.
It is safe to add arguments modified by other methods in this class (such as
#setMaster(String)
- the last invocation will be the one to take effect.Use this method with caution. It is possible to create an invalid Spark command by passing unknown arguments to this method, since those are allowed for forward compatibility.
- name
Name of argument to add.
- value
Value of the argument.
- returns
This launcher.
- Definition Classes
- SparkLauncher → AbstractLauncher
- Annotations
- @Override()
- Since
1.5.0
- def addSparkArg(arg: String): SparkLauncher
Adds a no-value argument to the Spark invocation.
Adds a no-value argument to the Spark invocation. If the argument is known, this method validates whether the argument is indeed a no-value argument, and throws an exception otherwise.
Use this method with caution. It is possible to create an invalid Spark command by passing unknown arguments to this method, since those are allowed for forward compatibility.
- arg
Argument to add.
- returns
This launcher.
- Definition Classes
- SparkLauncher → AbstractLauncher
- Annotations
- @Override()
- Since
1.5.0
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @IntrinsicCandidate() @native()
- def directory(dir: File): SparkLauncher
Sets the working directory of spark-submit.
Sets the working directory of spark-submit.
- dir
The directory to set as spark-submit's working directory.
- returns
This launcher.
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @IntrinsicCandidate() @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @IntrinsicCandidate() @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def launch(): Process
Launches a sub-process that will start the configured Spark application.
Launches a sub-process that will start the configured Spark application.
The
#startApplication(SparkAppHandle.Listener...)
method is preferred when launching Spark, since it provides better control of the child application.- returns
A process handle for the Spark app.
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- def redirectError(errFile: File): SparkLauncher
Redirects error output to the specified File.
Redirects error output to the specified File.
- errFile
The file to which stderr is written.
- returns
This launcher.
- def redirectError(to: Redirect): SparkLauncher
Redirects error output to the specified Redirect.
Redirects error output to the specified Redirect.
- to
The method of redirection.
- returns
This launcher.
- def redirectError(): SparkLauncher
Specifies that stderr in spark-submit should be redirected to stdout.
Specifies that stderr in spark-submit should be redirected to stdout.
- returns
This launcher.
- def redirectOutput(outFile: File): SparkLauncher
Redirects error output to the specified File.
Redirects error output to the specified File.
- outFile
The file to which stdout is written.
- returns
This launcher.
- def redirectOutput(to: Redirect): SparkLauncher
Redirects standard output to the specified Redirect.
Redirects standard output to the specified Redirect.
- to
The method of redirection.
- returns
This launcher.
- def redirectToLog(loggerName: String): SparkLauncher
Sets all output to be logged and redirected to a logger with the specified name.
Sets all output to be logged and redirected to a logger with the specified name.
- loggerName
The name of the logger to log stdout and stderr.
- returns
This launcher.
- def setAppName(appName: String): SparkLauncher
Set the application name.
Set the application name.
- appName
Application name.
- returns
This launcher.
- Definition Classes
- SparkLauncher → AbstractLauncher
- Annotations
- @Override()
- def setAppResource(resource: String): SparkLauncher
Set the main application resource.
Set the main application resource. This should be the location of a jar file for Scala/Java applications, or a python script for PySpark applications.
- resource
Path to the main application resource.
- returns
This launcher.
- Definition Classes
- SparkLauncher → AbstractLauncher
- Annotations
- @Override()
- def setConf(key: String, value: String): SparkLauncher
Set a single configuration value for the application.
Set a single configuration value for the application.
- key
Configuration key.
- value
The value to use.
- returns
This launcher.
- Definition Classes
- SparkLauncher → AbstractLauncher
- Annotations
- @Override()
- def setDeployMode(mode: String): SparkLauncher
Set the deploy mode for the application.
Set the deploy mode for the application.
- mode
Deploy mode.
- returns
This launcher.
- Definition Classes
- SparkLauncher → AbstractLauncher
- Annotations
- @Override()
- def setJavaHome(javaHome: String): SparkLauncher
Set a custom JAVA_HOME for launching the Spark application.
Set a custom JAVA_HOME for launching the Spark application.
- javaHome
Path to the JAVA_HOME to use.
- returns
This launcher.
- def setMainClass(mainClass: String): SparkLauncher
Sets the application class name for Java/Scala applications.
Sets the application class name for Java/Scala applications.
- mainClass
Application's main class.
- returns
This launcher.
- Definition Classes
- SparkLauncher → AbstractLauncher
- Annotations
- @Override()
- def setMaster(master: String): SparkLauncher
Set the Spark master for the application.
Set the Spark master for the application.
- master
Spark master.
- returns
This launcher.
- Definition Classes
- SparkLauncher → AbstractLauncher
- Annotations
- @Override()
- def setPropertiesFile(path: String): SparkLauncher
Set a custom properties file with Spark configuration for the application.
Set a custom properties file with Spark configuration for the application.
- path
Path to custom properties file to use.
- returns
This launcher.
- Definition Classes
- SparkLauncher → AbstractLauncher
- Annotations
- @Override()
- def setRemote(remote: String): SparkLauncher
Set the Spark master for the application.
Set the Spark master for the application.
- remote
Spark remote url.
- returns
This launcher.
- Definition Classes
- AbstractLauncher
- def setSparkHome(sparkHome: String): SparkLauncher
Set a custom Spark installation location for the application.
Set a custom Spark installation location for the application.
- sparkHome
Path to the Spark installation to use.
- returns
This launcher.
- def setVerbose(verbose: Boolean): SparkLauncher
Enables verbose reporting for SparkSubmit.
Enables verbose reporting for SparkSubmit.
- verbose
Whether to enable verbose output.
- returns
This launcher.
- Definition Classes
- SparkLauncher → AbstractLauncher
- Annotations
- @Override()
- def startApplication(listeners: <repeated...>[Listener]): SparkAppHandle
Starts a Spark application.
Starts a Spark application.
Applications launched by this launcher run as child processes. The child's stdout and stderr are merged and written to a logger (see
java.util.logging
) only if redirection has not otherwise been configured on thisSparkLauncher
. The logger's name can be defined by setting#CHILD_PROCESS_LOGGER_NAME
in the app's configuration. If that option is not set, the code will try to derive a name from the application's name or main class / script file. If those cannot be determined, an internal, unique name will be used. In all cases, the logger name will start with "org.apache.spark.launcher.app", to fit more easily into the configuration of commonly-used logging systems.- listeners
Listeners to add to the handle before the app is launched.
- returns
A handle for the launched application.
- Definition Classes
- SparkLauncher → AbstractLauncher
- Annotations
- @Override()
- Since
1.6.0
- See also
AbstractLauncher#startApplication(SparkAppHandle.Listener...)
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated
(Since version 9)