Class ConfiguratorBase
- java.lang.Object
-
- org.apache.accumulo.core.clientImpl.mapreduce.lib.ConfiguratorBase
-
- Direct Known Subclasses:
FileOutputConfigurator,InputConfigurator,OutputConfigurator
public class ConfiguratorBase extends Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classConfiguratorBase.ConnectorInfoSpecifies that connection info was configuredstatic classConfiguratorBase.GeneralOptsConfiguration keys for general configuration options.static classConfiguratorBase.InstanceOptsConfiguration keys for available Instance types.static classConfiguratorBase.TokenSource
-
Field Summary
Fields Modifier and Type Field Description protected static org.apache.log4j.Loggerlog
-
Constructor Summary
Constructors Constructor Description ConfiguratorBase()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static ClientContextclient(Class<?> CLASS, RangeInputSplit split, org.apache.hadoop.conf.Configuration conf)static ClientContextclient(Class<?> CLASS, org.apache.hadoop.conf.Configuration conf)protected static StringenumToConfKey(Class<?> implementingClass, Enum<?> e)Provides a configuration key for a given feature enum, prefixed by the implementingClassprotected static StringenumToConfKey(Enum<?> e)Provides a configuration key for a given feature enum.static AuthenticationTokengetAuthenticationToken(Class<?> implementingClass, org.apache.hadoop.conf.Configuration conf)Gets the authenticated token from either the specified token file or directly from the configuration, whichever was used when the job was configured.static ClientConfigurationgetClientConfiguration(Class<?> implementingClass, org.apache.hadoop.conf.Configuration conf)Obtain a ClientConfiguration based on the configuration.static InstancegetInstance(Class<?> implementingClass, org.apache.hadoop.conf.Configuration conf)Initializes an Accumulo Instance based on the configuration.static org.apache.log4j.LevelgetLogLevel(Class<?> implementingClass, org.apache.hadoop.conf.Configuration conf)Gets the log level from this configuration.static StringgetPrincipal(Class<?> implementingClass, org.apache.hadoop.conf.Configuration conf)Gets the user name from the configuration.static AuthenticationTokengetTokenFromFile(Class<?> implementingClass, org.apache.hadoop.conf.Configuration conf, String principal, String tokenFile)Reads from the token file in distributed cache.static intgetVisibilityCacheSize(org.apache.hadoop.conf.Configuration conf)Gets the valid visibility count for this job.static BooleanisConnectorInfoSet(Class<?> implementingClass, org.apache.hadoop.conf.Configuration conf)Determines if the connector info has already been set for this instance.static voidsetConnectorInfo(Class<?> implementingClass, org.apache.hadoop.conf.Configuration conf, String principal, String tokenFile)Sets the connector information needed to communicate with Accumulo in this job.static voidsetConnectorInfo(Class<?> implementingClass, org.apache.hadoop.conf.Configuration conf, String principal, AuthenticationToken token)Sets the connector information needed to communicate with Accumulo in this job.static voidsetLogLevel(Class<?> implementingClass, org.apache.hadoop.conf.Configuration conf, org.apache.log4j.Level level)Sets the log level for this job.static voidsetVisibilityCacheSize(org.apache.hadoop.conf.Configuration conf, int visibilityCacheSize)Sets the valid visibility count for this job.static voidsetZooKeeperInstance(Class<?> implementingClass, org.apache.hadoop.conf.Configuration conf, ClientConfiguration clientConfig)Configures a ZooKeeperInstance for this job.static AuthenticationTokenunwrapAuthenticationToken(org.apache.hadoop.mapred.JobConf job, AuthenticationToken token)Unwraps the providedAuthenticationTokenif it is an instance of DelegationTokenStub, reconstituting it from the providedJobConf.static AuthenticationTokenunwrapAuthenticationToken(org.apache.hadoop.mapreduce.JobContext job, AuthenticationToken token)Unwraps the providedAuthenticationTokenif it is an instance of DelegationTokenStub, reconstituting it from the providedJobConf.
-
-
-
Method Detail
-
enumToConfKey
protected static String enumToConfKey(Class<?> implementingClass, Enum<?> e)
Provides a configuration key for a given feature enum, prefixed by the implementingClass- Parameters:
implementingClass- the class whose name will be used as a prefix for the property configuration keye- the enum used to provide the unique part of the configuration key- Returns:
- the configuration key
- Since:
- 1.6.0
-
enumToConfKey
protected static String enumToConfKey(Enum<?> e)
Provides a configuration key for a given feature enum.- Parameters:
e- the enum used to provide the unique part of the configuration key- Returns:
- the configuration key
-
setConnectorInfo
public static void setConnectorInfo(Class<?> implementingClass, org.apache.hadoop.conf.Configuration conf, String principal, AuthenticationToken token)
Sets the connector information needed to communicate with Accumulo in this job.WARNING: The serialized token is stored in the configuration and shared with all MapReduce tasks. It is BASE64 encoded to provide a charset safe conversion to a string, and is not intended to be secure.
- Parameters:
implementingClass- the class whose name will be used as a prefix for the property configuration keyconf- the Hadoop configuration object to configureprincipal- a valid Accumulo user nametoken- the user's password- Since:
- 1.6.0
-
setConnectorInfo
public static void setConnectorInfo(Class<?> implementingClass, org.apache.hadoop.conf.Configuration conf, String principal, String tokenFile)
Sets the connector information needed to communicate with Accumulo in this job.Pulls a token file into the Distributed Cache that contains the authentication token in an attempt to be more secure than storing the password in the Configuration. Token file created with "bin/accumulo create-token".
- Parameters:
implementingClass- the class whose name will be used as a prefix for the property configuration keyconf- the Hadoop configuration object to configureprincipal- a valid Accumulo user nametokenFile- the path to the token file in DFS- Since:
- 1.6.0
-
isConnectorInfoSet
public static Boolean isConnectorInfoSet(Class<?> implementingClass, org.apache.hadoop.conf.Configuration conf)
Determines if the connector info has already been set for this instance.- Parameters:
implementingClass- the class whose name will be used as a prefix for the property configuration keyconf- the Hadoop configuration object to configure- Returns:
- true if the connector info has already been set, false otherwise
- Since:
- 1.6.0
- See Also:
setConnectorInfo(Class, Configuration, String, AuthenticationToken)
-
getPrincipal
public static String getPrincipal(Class<?> implementingClass, org.apache.hadoop.conf.Configuration conf)
Gets the user name from the configuration.- Parameters:
implementingClass- the class whose name will be used as a prefix for the property configuration keyconf- the Hadoop configuration object to configure- Returns:
- the principal
- Since:
- 1.6.0
- See Also:
setConnectorInfo(Class, Configuration, String, AuthenticationToken)
-
getAuthenticationToken
public static AuthenticationToken getAuthenticationToken(Class<?> implementingClass, org.apache.hadoop.conf.Configuration conf)
Gets the authenticated token from either the specified token file or directly from the configuration, whichever was used when the job was configured.- Parameters:
implementingClass- the class whose name will be used as a prefix for the property configuration keyconf- the Hadoop configuration object to configure- Returns:
- the principal's authentication token
- Since:
- 1.6.0
- See Also:
setConnectorInfo(Class, Configuration, String, AuthenticationToken),setConnectorInfo(Class, Configuration, String, String)
-
getTokenFromFile
public static AuthenticationToken getTokenFromFile(Class<?> implementingClass, org.apache.hadoop.conf.Configuration conf, String principal, String tokenFile)
Reads from the token file in distributed cache. Currently, the token file stores data separated by colons e.g. principal:token_class:token- Parameters:
conf- the Hadoop context for the configured job- Returns:
- path to the token file as a String
- Since:
- 1.6.0
- See Also:
setConnectorInfo(Class, Configuration, String, AuthenticationToken)
-
setZooKeeperInstance
public static void setZooKeeperInstance(Class<?> implementingClass, org.apache.hadoop.conf.Configuration conf, ClientConfiguration clientConfig)
Configures a ZooKeeperInstance for this job.- Parameters:
implementingClass- the class whose name will be used as a prefix for the property configuration keyconf- the Hadoop configuration object to configureclientConfig- client configuration for specifying connection timeouts, SSL connection options, etc.- Since:
- 1.6.0
-
getInstance
public static Instance getInstance(Class<?> implementingClass, org.apache.hadoop.conf.Configuration conf)
Initializes an Accumulo Instance based on the configuration.- Parameters:
implementingClass- the class whose name will be used as a prefix for the property configuration keyconf- the Hadoop configuration object to configure- Returns:
- an Accumulo instance
- Since:
- 1.6.0
-
getClientConfiguration
public static ClientConfiguration getClientConfiguration(Class<?> implementingClass, org.apache.hadoop.conf.Configuration conf)
Obtain a ClientConfiguration based on the configuration.- Parameters:
implementingClass- the class whose name will be used as a prefix for the property configuration keyconf- the Hadoop configuration object to configure- Returns:
- A ClientConfiguration
- Since:
- 1.7.0
-
setLogLevel
public static void setLogLevel(Class<?> implementingClass, org.apache.hadoop.conf.Configuration conf, org.apache.log4j.Level level)
Sets the log level for this job.- Parameters:
implementingClass- the class whose name will be used as a prefix for the property configuration keyconf- the Hadoop configuration object to configurelevel- the logging level- Since:
- 1.6.0
-
getLogLevel
public static org.apache.log4j.Level getLogLevel(Class<?> implementingClass, org.apache.hadoop.conf.Configuration conf)
Gets the log level from this configuration.- Parameters:
implementingClass- the class whose name will be used as a prefix for the property configuration keyconf- the Hadoop configuration object to configure- Returns:
- the log level
- Since:
- 1.6.0
- See Also:
setLogLevel(Class, Configuration, Level)
-
setVisibilityCacheSize
public static void setVisibilityCacheSize(org.apache.hadoop.conf.Configuration conf, int visibilityCacheSize)Sets the valid visibility count for this job.- Parameters:
conf- the Hadoop configuration object to configurevisibilityCacheSize- the LRU cache size
-
getVisibilityCacheSize
public static int getVisibilityCacheSize(org.apache.hadoop.conf.Configuration conf)
Gets the valid visibility count for this job.- Parameters:
conf- the Hadoop configuration object to configure- Returns:
- the valid visibility count
-
unwrapAuthenticationToken
public static AuthenticationToken unwrapAuthenticationToken(org.apache.hadoop.mapred.JobConf job, AuthenticationToken token)
Unwraps the providedAuthenticationTokenif it is an instance of DelegationTokenStub, reconstituting it from the providedJobConf.- Parameters:
job- The jobtoken- The authentication token
-
unwrapAuthenticationToken
public static AuthenticationToken unwrapAuthenticationToken(org.apache.hadoop.mapreduce.JobContext job, AuthenticationToken token)
Unwraps the providedAuthenticationTokenif it is an instance of DelegationTokenStub, reconstituting it from the providedJobConf.- Parameters:
job- The jobtoken- The authentication token
-
client
public static ClientContext client(Class<?> CLASS, org.apache.hadoop.conf.Configuration conf) throws AccumuloException, AccumuloSecurityException
-
client
public static ClientContext client(Class<?> CLASS, RangeInputSplit split, org.apache.hadoop.conf.Configuration conf) throws IOException
- Throws:
IOException
-
-