public final class EngineConfig extends Object
A number of instance methods are provided to permit a more fluent and declarative style of specifying configurations. For example,
public static final EngineConfig myConfig= engine().monitor(true).licensePath("/path/to/my/license.file");which defines a configuration with:
/path/to/my/license.file
Modifier and Type | Class and Description |
---|---|
static class |
EngineConfig.Ports
Nested class containing settings specific to ports.
|
static class |
EngineConfig.RemoteMonitoring
Settings in this object determine settings for remote monitoring
|
static class |
EngineConfig.Sort
Settings in this object determine
default tuning for the
Sort operator. |
Modifier and Type | Field and Description |
---|---|
static EngineProperty<ClasspathSpecifier> |
CLASSPATH_SPECIFIER
Property controlling classpath that is used for launching remote jobs
|
static EngineProperty<ClusterSpecifier> |
CLUSTER
Property controls which cluster to run on
|
static EngineProperty<String> |
DUMPFILE_PATH
Defines the directory in which where low-level statistics and plan dumps are to be placed
|
static EngineProperty<String> |
EXTENSION_PATHS
Defines a list of directories in shared storage containing user extensions
|
static EngineProperty<FileMetaConfiguration> |
FILE_CONFIGURATION
Property controlling authorization for file access within the graph.
|
static EngineProperty<Integer> |
MAX_RETRIES
Maximum number of retry attempts.
|
static EngineProperty<Integer> |
MIN_PARALLELISM
Property controlling the default parallelism used in graph.
|
static EngineProperty<ModuleConfiguration> |
MODULE_CONFIGURATION
Property controlling classpath that is used for launching remote jobs
|
static EngineProperty<Boolean> |
MONITOR
Property controlling the collection of execution statistics.
|
static EngineProperty<NetworkConfiguration> |
NETWORK_CONFIGURATION
Property controlling the socket provider to be used for communication between the client and cluster manager
|
static EngineProperty<Integer> |
PARALLELISM
Property controlling the default parallelism used in graph.
|
EngineConfig.Ports |
ports
The ports sub-object
|
EngineConfig.RemoteMonitoring |
remoteMonitoring
The remote monitoring sub-object.
|
static EngineProperty<String> |
SCHEDULER_QUEUE
Defines the scheduler queue used for executing jobs
|
EngineConfig.Sort |
sort
The sort sub-object.
|
static EngineProperty<Path> |
STORAGE_MANAGEMENT_PATH
Property that controls a base path to use for intermediate storage.
|
static EngineProperty<Integer> |
SUBGRAPH_HISTORY_SIZE
Property controlling the maximum number of subgraphs to retain
when tracking execution history.
|
Modifier and Type | Method and Description |
---|---|
EngineConfig |
applyConfig(EngineConfig config)
Constructs a new configuration by merging the properties of
another config with this one.
|
EngineConfig |
autoParallelize()
Specifies that the engine should automatically determine the default
degree of parallelism for graphs.
|
EngineConfig |
classpathSpecifier(ClasspathSpecifier classpath)
Sets the classpath to be used in the case of a remote job.
|
EngineConfig |
cluster(ClusterSpecifier spec)
Specifies the cluster on which we are to run
|
EngineConfig |
cluster(String url)
Specifies the cluster that we are to run on.
|
EngineConfig |
defaultStorageManagementPath()
Specifies to use the default storage management path.
|
EngineConfig |
dumpfilePath(String path)
Specifies the dump path where low-level statistics and plan dumps are placed.
|
static EngineConfig |
engine()
Returns the default engine configuration
|
static EngineConfig |
engine(Properties properties)
Creates an EngineConfig from a set of properties.
|
EngineConfig |
extensionPaths(String... paths)
Specifies the list of user extension directory paths to use.
|
EngineConfig |
fileConfiguration(FileMetaConfiguration configuration)
Specifies the file configuration to be used by operators in the graph.
|
int |
getAvailableProcessors()
Retrieves the configured number of processors available for this
engine.
|
ClasspathSpecifier |
getClasspathSpecifier()
Returns the classpath to be used in the case of a remote job.
|
ClusterSpecifier |
getCluster()
Returns the cluster specifier.
|
String |
getDumpfilePath()
Returns the dump path where low-level statistics and plan dumps are placed.
|
String[] |
getExtensionPaths()
Return the list of extension paths.
|
FileMetaConfiguration |
getFileConfiguration()
Returns the file configuration to be used by operators in the graph.
|
int |
getMaxRetries()
Maximum number of retries.
|
int |
getMinParallelism()
Returns the raw, un-interpreted value of the parallelism setting
|
ModuleConfiguration |
getModuleConfiguration()
Returns the module configuration to be used by operators in the graph.
|
NetworkConfiguration |
getNetworkConfiguration()
Returns the network configuration to be used for communication between the client and cluster manager.
|
int |
getParallelism()
Returns the raw, un-interpreted value of the parallelism setting
|
<T> T |
getProperty(EngineProperty<T> property)
Returns the value of an arbitrary property
|
String |
getRawExtensionPaths()
Returns the comma delimited list of user extension paths.
|
String |
getSchedulerQueue()
Returns the scheduler queue used for scheduling jobs.
|
Path |
getStorageManagementPath()
Returns the root scratch directory to use.
|
int |
getSubgraphHistorySize()
Returns the maximum number of subgraphs to retain
when tracking execution history.
|
boolean |
isMonitored()
Indicates whether run-time statistics are gathered.
|
boolean |
isPseudoDistributed()
Returns true if the configured
ClusterSpecifier is
for the pseudo-distributed (i.e. |
EngineConfig |
maxRetries(int maxRetries)
Specifies the maximum number of retries.
|
EngineConfig |
minParallelism(int count)
Specifies that the engine should use the given degree of parallelism
for graphs.
|
EngineConfig |
moduleConfiguration(ModuleConfiguration configuration)
Specifies the module configuration to be used by operators in the graph
|
EngineConfig |
monitored(boolean enabled)
Specifies whether performance statistics should be gathered for
executed graphs.
|
static EngineConfig |
monitoredEngine()
Returns a default engine configuration with monitoring enabled.
|
EngineConfig |
networkConfiguration(NetworkConfiguration networkConfiguration)
Sets the network configuration to be used for communication between the client and cluster manager.
|
EngineConfig |
parallelism(int count)
Specifies that the engine should use the given degree of parallelism
for graphs.
|
<T> EngineConfig |
property(EngineProperty<T> property,
T value)
Constructs a new configuration overriding the specified setting
All other settings are left unchanged.
|
EngineConfig |
pseudoDistributed()
Specifies that we are to run in pseudo-distributed mode.
|
EngineConfig |
schedulerQueue(String queueName)
Specifies the scheduler queue to use when a job is executed.
|
EngineConfig |
storageManagementPath(Path path)
Specifies the root scratch directory to use.
|
EngineConfig |
subgraphHistorySize(int size)
Sets the maximum number of subgraphs to retain
when tracking execution history.
|
String |
toString() |
public static final EngineProperty<ModuleConfiguration> MODULE_CONFIGURATION
public static final EngineProperty<FileMetaConfiguration> FILE_CONFIGURATION
public static final EngineProperty<ClasspathSpecifier> CLASSPATH_SPECIFIER
public static final EngineProperty<NetworkConfiguration> NETWORK_CONFIGURATION
public static final EngineProperty<Boolean> MONITOR
public static final EngineProperty<Integer> SUBGRAPH_HISTORY_SIZE
public static final EngineProperty<Path> STORAGE_MANAGEMENT_PATH
public static final EngineProperty<ClusterSpecifier> CLUSTER
public static final EngineProperty<Integer> PARALLELISM
public static final EngineProperty<Integer> MIN_PARALLELISM
public static final EngineProperty<Integer> MAX_RETRIES
public static final EngineProperty<String> DUMPFILE_PATH
public static final EngineProperty<String> SCHEDULER_QUEUE
public static final EngineProperty<String> EXTENSION_PATHS
public final EngineConfig.Ports ports
public final EngineConfig.Sort sort
public final EngineConfig.RemoteMonitoring remoteMonitoring
public ModuleConfiguration getModuleConfiguration()
public EngineConfig moduleConfiguration(ModuleConfiguration configuration)
configuration
- the module configurationpublic FileMetaConfiguration getFileConfiguration()
public EngineConfig fileConfiguration(FileMetaConfiguration configuration)
configuration
- the file configuration to be used by operators in the graph.EngineConfig
with the settings modifiedpublic ClasspathSpecifier getClasspathSpecifier()
public EngineConfig classpathSpecifier(ClasspathSpecifier classpath)
classpath
- the classpath to be used when running a remote job.EngineConfig
with the settings modifiedpublic NetworkConfiguration getNetworkConfiguration()
public EngineConfig networkConfiguration(NetworkConfiguration networkConfiguration)
networkConfiguration
- the network configuration to be used when running a remote job.EngineConfig
with the settings modifiedpublic int getAvailableProcessors()
public <T> T getProperty(EngineProperty<T> property)
T
- the property typeproperty
- the propertypublic <T> EngineConfig property(EngineProperty<T> property, T value)
This call does not modify this object.
T
- the type of propertyproperty
- the property to modifyvalue
- the new value for that propertypublic EngineConfig applyConfig(EngineConfig config)
config
- the engine configuration containing new propertiespublic static EngineConfig engine()
public static EngineConfig monitoredEngine()
public static EngineConfig engine(Properties properties)
properties
- the propertiespublic boolean isMonitored()
true
if run-time statistics will be gatheredpublic EngineConfig monitored(boolean enabled)
enabled
- indicates whether statistics collection is activeEngineConfig
with the settings modifiedpublic int getSubgraphHistorySize()
public EngineConfig subgraphHistorySize(int size)
size
- the maximum number of subgraphs to retain when tracking execution historyEngineConfig
with the settings modifiedpublic Path getStorageManagementPath()
public EngineConfig storageManagementPath(Path path)
path
- the storage management path.EngineConfig
with the settings modifiedpublic EngineConfig defaultStorageManagementPath()
EngineConfig
with the settings modifiedpublic ClusterSpecifier getCluster()
public EngineConfig cluster(ClusterSpecifier spec)
spec
- the cluster specifierEngineConfig
with the settings modifiedpublic EngineConfig pseudoDistributed()
EngineConfig
with the settings modifiedpublic EngineConfig cluster(String url)
url
- the cluster url. For the dr cluster this will be of
the form "dr://host:port".EngineConfig
with the settings modifiedpublic boolean isPseudoDistributed()
ClusterSpecifier
is
for the pseudo-distributed (i.e. local) cluster.public EngineConfig autoParallelize()
EngineConfig
with the settings modifiedpublic int getParallelism()
public EngineConfig parallelism(int count)
count
- the default degree of parallelism to useEngineConfig
with the settings modifiedpublic int getMinParallelism()
public EngineConfig minParallelism(int count)
count
- the default degree of parallelism to useEngineConfig
with the settings modifiedpublic int getMaxRetries()
public EngineConfig maxRetries(int maxRetries)
maxRetries
- the max retriesEngineConfig
with the settings modifiedpublic String getDumpfilePath()
public EngineConfig dumpfilePath(String path)
path
- the dump pathEngineConfig
with the settings modifiedpublic String getSchedulerQueue()
public EngineConfig schedulerQueue(String queueName)
queueName
- name of the queue to useEngineConfig
with the settings modifiedpublic String getRawExtensionPaths()
public String[] getExtensionPaths()
public EngineConfig extensionPaths(String... paths)
paths
- set of user extension directory pathsEngineConfig
with the settings modifiedCopyright © 2020 Actian Corporation. All rights reserved.