@InterfaceAudience.Public public class HFileOutputFormat2 extends org.apache.hadoop.mapreduce.lib.output.FileOutputFormat<ImmutableBytesWritable,Cell>
HFile
s. Calling write(null,null) will
forcibly roll all HFiles being written.
Using this class as part of a MapReduce job is best done using
configureIncrementalLoad(Job, TableDescriptor, RegionLocator)
.
Modifier and Type | Field and Description |
---|---|
static String |
COMPRESSION_OVERRIDE_CONF_KEY |
static String |
DATABLOCK_ENCODING_OVERRIDE_CONF_KEY |
static String |
LOCALITY_SENSITIVE_CONF_KEY
Keep locality while generating HFiles for bulkload.
|
static String |
REMOTE_CLUSTER_CONF_PREFIX |
static String |
REMOTE_CLUSTER_ZOOKEEPER_CLIENT_PORT_CONF_KEY |
static String |
REMOTE_CLUSTER_ZOOKEEPER_QUORUM_CONF_KEY |
static String |
REMOTE_CLUSTER_ZOOKEEPER_ZNODE_PARENT_CONF_KEY |
static String |
STORAGE_POLICY_PROPERTY |
static String |
STORAGE_POLICY_PROPERTY_CF_PREFIX |
protected static byte[] |
tableSeparator |
Constructor and Description |
---|
HFileOutputFormat2() |
Modifier and Type | Method and Description |
---|---|
protected static byte[] |
combineTableNameSuffix(byte[] tableName,
byte[] suffix) |
static void |
configureIncrementalLoad(org.apache.hadoop.mapreduce.Job job,
TableDescriptor tableDescriptor,
RegionLocator regionLocator)
Configure a MapReduce Job to perform an incremental load into the given table.
|
static void |
configureIncrementalLoad(org.apache.hadoop.mapreduce.Job job,
Table table,
RegionLocator regionLocator)
Configure a MapReduce Job to perform an incremental load into the given table.
|
static void |
configureIncrementalLoadMap(org.apache.hadoop.mapreduce.Job job,
TableDescriptor tableDescriptor) |
static void |
configureRemoteCluster(org.apache.hadoop.mapreduce.Job job,
org.apache.hadoop.conf.Configuration clusterConf)
Configure HBase cluster key for remote cluster to load region location for locality-sensitive
if it's enabled.
|
org.apache.hadoop.mapreduce.RecordWriter<ImmutableBytesWritable,Cell> |
getRecordWriter(org.apache.hadoop.mapreduce.TaskAttemptContext context) |
protected static byte[] |
getTableNameSuffixedWithFamily(byte[] tableName,
byte[] family) |
checkOutputSpecs, getCompressOutput, getDefaultWorkFile, getOutputCommitter, getOutputCompressorClass, getOutputName, getOutputPath, getPathForWorkFile, getUniqueFile, getWorkOutputPath, setCompressOutput, setOutputCompressorClass, setOutputName, setOutputPath
protected static final byte[] tableSeparator
public static final String DATABLOCK_ENCODING_OVERRIDE_CONF_KEY
public static final String COMPRESSION_OVERRIDE_CONF_KEY
public static final String LOCALITY_SENSITIVE_CONF_KEY
public static final String REMOTE_CLUSTER_CONF_PREFIX
public static final String REMOTE_CLUSTER_ZOOKEEPER_QUORUM_CONF_KEY
public static final String REMOTE_CLUSTER_ZOOKEEPER_CLIENT_PORT_CONF_KEY
public static final String REMOTE_CLUSTER_ZOOKEEPER_ZNODE_PARENT_CONF_KEY
public static final String STORAGE_POLICY_PROPERTY
public static final String STORAGE_POLICY_PROPERTY_CF_PREFIX
public HFileOutputFormat2()
protected static byte[] combineTableNameSuffix(byte[] tableName, byte[] suffix)
public org.apache.hadoop.mapreduce.RecordWriter<ImmutableBytesWritable,Cell> getRecordWriter(org.apache.hadoop.mapreduce.TaskAttemptContext context) throws IOException, InterruptedException
getRecordWriter
in class org.apache.hadoop.mapreduce.lib.output.FileOutputFormat<ImmutableBytesWritable,Cell>
IOException
InterruptedException
protected static byte[] getTableNameSuffixedWithFamily(byte[] tableName, byte[] family)
public static void configureIncrementalLoad(org.apache.hadoop.mapreduce.Job job, Table table, RegionLocator regionLocator) throws IOException
IOException
public static void configureIncrementalLoad(org.apache.hadoop.mapreduce.Job job, TableDescriptor tableDescriptor, RegionLocator regionLocator) throws IOException
IOException
public static void configureIncrementalLoadMap(org.apache.hadoop.mapreduce.Job job, TableDescriptor tableDescriptor) throws IOException
IOException
public static void configureRemoteCluster(org.apache.hadoop.mapreduce.Job job, org.apache.hadoop.conf.Configuration clusterConf)
TableInputFormat
and
generate hfiles for HBase cluster B. Otherwise, HFileOutputFormat2 fetch location from cluster
A and locality-sensitive won't working correctly.
configureIncrementalLoad(Job, Table, RegionLocator)
calls this method using
Table.getConfiguration()
as clusterConf. See HBASE-25608.job
- which has configuration to be updatedclusterConf
- which contains cluster key of the HBase cluster to be locality-sensitiveconfigureIncrementalLoad(Job, Table, RegionLocator)
,
LOCALITY_SENSITIVE_CONF_KEY
,
REMOTE_CLUSTER_ZOOKEEPER_QUORUM_CONF_KEY
,
REMOTE_CLUSTER_ZOOKEEPER_CLIENT_PORT_CONF_KEY
,
REMOTE_CLUSTER_ZOOKEEPER_ZNODE_PARENT_CONF_KEY
Copyright © 2007–2020 The Apache Software Foundation. All rights reserved.