public class SparkConf extends Object implements scala.Cloneable, Logging
Most of the time, you would create a SparkConf object with new SparkConf()
, which will load
values from any spark.*
Java system properties set in your application as well. In this case,
parameters you set directly on the SparkConf
object take priority over system properties.
For unit tests, you can also call new SparkConf(false)
to skip loading external settings and
get the same configuration no matter what the system properties are.
All setter methods in this class support chaining. For example, you can write
new SparkConf().setMaster("local").setAppName("My app")
.
Note that once a SparkConf object is passed to Spark, it is cloned and can no longer be modified by the user. Spark does not support modifying the configuration at runtime.
Constructor and Description |
---|
SparkConf()
Create a SparkConf that loads defaults from system properties and the classpath
|
SparkConf(boolean loadDefaults) |
Modifier and Type | Method and Description |
---|---|
SparkConf |
clone()
Copy this object
|
boolean |
contains(String key)
Does the configuration contain a given parameter?
|
String |
get(String key)
Get a parameter; throws a NoSuchElementException if it's not set
|
String |
get(String key,
String defaultValue)
Get a parameter, falling back to a default if not set
|
scala.collection.Seq<scala.Tuple2<String,String>> |
getAkkaConf()
Get all akka conf variables set on this SparkConf
|
scala.Tuple2<String,String>[] |
getAll()
Get all parameters as a list of pairs
|
String |
getAppId()
Returns the Spark application id, valid in the Driver after TaskScheduler registration and
from the start in the Executor.
|
boolean |
getBoolean(String key,
boolean defaultValue)
Get a parameter as a boolean, falling back to a default if not set
|
double |
getDouble(String key,
double defaultValue)
Get a parameter as a double, falling back to a default if not set
|
String |
getenv(String name)
By using this instead of System.getenv(), environment variables can be mocked
in unit tests.
|
scala.collection.Seq<scala.Tuple2<String,String>> |
getExecutorEnv()
Get all executor environment variables set on this SparkConf
|
int |
getInt(String key,
int defaultValue)
Get a parameter as an integer, falling back to a default if not set
|
long |
getLong(String key,
long defaultValue)
Get a parameter as a long, falling back to a default if not set
|
scala.Option<String> |
getOption(String key)
Get a parameter as an Option
|
static boolean |
isAkkaConf(String name)
Return whether the given config is an akka config (e.g.
|
static boolean |
isExecutorStartupConf(String name)
Return whether the given config should be passed to an executor on start-up.
|
static boolean |
isSparkPortConf(String name)
Return true if the given config matches either
spark.*.port or spark.port.* . |
SparkConf |
registerKryoClasses(Class<?>[] classes)
Use Kryo serialization and register the given set of classes with Kryo.
|
SparkConf |
remove(String key)
Remove a parameter from the configuration
|
SparkConf |
set(String key,
String value)
Set a configuration variable.
|
SparkConf |
setAll(scala.collection.Traversable<scala.Tuple2<String,String>> settings)
Set multiple parameters together
|
SparkConf |
setAppName(String name)
Set a name for your application.
|
SparkConf |
setExecutorEnv(scala.collection.Seq<scala.Tuple2<String,String>> variables)
Set multiple environment variables to be used when launching executors.
|
SparkConf |
setExecutorEnv(String variable,
String value)
Set an environment variable to be used when launching executors for this application.
|
SparkConf |
setExecutorEnv(scala.Tuple2<String,String>[] variables)
Set multiple environment variables to be used when launching executors.
|
SparkConf |
setIfMissing(String key,
String value)
Set a parameter if it isn't already configured
|
SparkConf |
setJars(scala.collection.Seq<String> jars)
Set JAR files to distribute to the cluster.
|
SparkConf |
setJars(String[] jars)
Set JAR files to distribute to the cluster.
|
SparkConf |
setMaster(String master)
The master URL to connect to, such as "local" to run locally with one thread, "local[4]" to
run locally with 4 cores, or "spark://master:7077" to run on a Spark standalone cluster.
|
SparkConf |
setSparkHome(String home)
Set the location where Spark is installed on worker nodes.
|
String |
toDebugString()
Return a string listing all keys and values, one per line.
|
static String |
translateConfKey(String userKey,
boolean warn)
Translate the configuration key if it is deprecated and has a replacement, otherwise just
returns the provided key.
|
void |
validateSettings()
Checks for illegal or deprecated config settings.
|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
initializeIfNecessary, initializeLogging, isTraceEnabled, log_, log, logDebug, logDebug, logError, logError, logInfo, logInfo, logName, logTrace, logTrace, logWarning, logWarning
public SparkConf(boolean loadDefaults)
public SparkConf()
public static boolean isAkkaConf(String name)
public static boolean isExecutorStartupConf(String name)
Certain akka and authentication configs are required of the executor when it connects to the scheduler, while the rest of the spark configs can be inherited from the driver later.
public static boolean isSparkPortConf(String name)
spark.*.port
or spark.port.*
.public static String translateConfKey(String userKey, boolean warn)
userKey
- Configuration key from the user / caller.warn
- Whether to print a warning if the key is deprecated. Warnings will be printed
only once for each key.public SparkConf set(String key, String value)
public SparkConf setMaster(String master)
public SparkConf setAppName(String name)
public SparkConf setJars(scala.collection.Seq<String> jars)
public SparkConf setJars(String[] jars)
public SparkConf setExecutorEnv(String variable, String value)
public SparkConf setExecutorEnv(scala.collection.Seq<scala.Tuple2<String,String>> variables)
public SparkConf setExecutorEnv(scala.Tuple2<String,String>[] variables)
public SparkConf setSparkHome(String home)
public SparkConf setAll(scala.collection.Traversable<scala.Tuple2<String,String>> settings)
public SparkConf setIfMissing(String key, String value)
public SparkConf registerKryoClasses(Class<?>[] classes)
public SparkConf remove(String key)
public String get(String key)
public String get(String key, String defaultValue)
public scala.Option<String> getOption(String key)
public scala.Tuple2<String,String>[] getAll()
public int getInt(String key, int defaultValue)
public long getLong(String key, long defaultValue)
public double getDouble(String key, double defaultValue)
public boolean getBoolean(String key, boolean defaultValue)
public scala.collection.Seq<scala.Tuple2<String,String>> getExecutorEnv()
public scala.collection.Seq<scala.Tuple2<String,String>> getAkkaConf()
public String getAppId()
public boolean contains(String key)
public SparkConf clone()
clone
in class Object
public String getenv(String name)
public void validateSettings()
public String toDebugString()