|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.hadoop.hbase.client.HTableMultiplexer
@InterfaceAudience.Public @InterfaceStability.Evolving public class HTableMultiplexer
HTableMultiplexer provides a thread-safe non blocking PUT API across all the tables. Each put will be sharded into different buffer queues based on its destination region server. So each region server buffer queue will only have the puts which share the same destination. And each queue will have a flush worker thread to flush the puts request to the region server. If any queue is full, the HTableMultiplexer starts to drop the Put requests for that particular queue. Also all the puts will be retried as a configuration number before dropping. And the HTableMultiplexer can report the number of buffered requests and the number of the failed (dropped) requests in total or on per region server basis. This class is thread safe.
Nested Class Summary | |
---|---|
static class |
HTableMultiplexer.HTableMultiplexerStatus
HTableMultiplexerStatus keeps track of the current status of the HTableMultiplexer. |
Field Summary | |
---|---|
static String |
TABLE_MULTIPLEXER_FLUSH_PERIOD_MS
|
static String |
TABLE_MULTIPLEXER_INIT_THREADS
|
static String |
TABLE_MULTIPLEXER_MAX_RETRIES_IN_QUEUE
|
Constructor Summary | |
---|---|
HTableMultiplexer(org.apache.hadoop.conf.Configuration conf,
int perRegionServerBufferQueueSize)
|
Method Summary | |
---|---|
HTableMultiplexer.HTableMultiplexerStatus |
getHTableMultiplexerStatus()
|
List<Put> |
put(byte[] tableName,
List<Put> puts)
Deprecated. |
boolean |
put(byte[] tableName,
Put put)
Deprecated. |
boolean |
put(byte[] tableName,
Put put,
int retry)
Deprecated. |
List<Put> |
put(TableName tableName,
List<Put> puts)
The puts request will be buffered by their corresponding buffer queue. |
boolean |
put(TableName tableName,
Put put)
The put request will be buffered by its corresponding buffer queue. |
boolean |
put(TableName tableName,
Put put,
int retry)
The put request will be buffered by its corresponding buffer queue. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final String TABLE_MULTIPLEXER_FLUSH_PERIOD_MS
public static final String TABLE_MULTIPLEXER_INIT_THREADS
public static final String TABLE_MULTIPLEXER_MAX_RETRIES_IN_QUEUE
Constructor Detail |
---|
public HTableMultiplexer(org.apache.hadoop.conf.Configuration conf, int perRegionServerBufferQueueSize) throws IOException
conf
- The HBaseConfigurationperRegionServerBufferQueueSize
- determines the max number of the buffered Put ops for
each region server before dropping the request.
IOException
Method Detail |
---|
public boolean put(TableName tableName, Put put)
tableName
- put
-
IOException
public List<Put> put(TableName tableName, List<Put> puts)
tableName
- puts
-
IOException
@Deprecated public List<Put> put(byte[] tableName, List<Put> puts)
put(TableName, List)
instead.
public boolean put(TableName tableName, Put put, int retry)
IOException
@Deprecated public boolean put(byte[] tableName, Put put, int retry)
put(TableName, Put)
instead.
@Deprecated public boolean put(byte[] tableName, Put put)
put(TableName, Put)
instead.
public HTableMultiplexer.HTableMultiplexerStatus getHTableMultiplexerStatus()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |