Package org.apache.hadoop.hbase.client
Class HTableMultiplexer
java.lang.Object
org.apache.hadoop.hbase.client.HTableMultiplexer
Deprecated.
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
Modifier and TypeClassDescriptionprivate static class
Deprecated.Helper to count the average over an interval until reset.(package private) static class
Deprecated.static class
Deprecated.since 2.2.0, will be removed in 3.0.0, without replacement.(package private) static class
Deprecated. -
Field Summary
Modifier and TypeFieldDescriptionprivate final org.apache.hadoop.conf.Configuration
Deprecated.private final ClusterConnection
Deprecated.private final ScheduledExecutorService
Deprecated.private final long
Deprecated.private static final org.slf4j.Logger
Deprecated.private final int
Deprecated.private final int
Deprecated.private final int
Deprecated.private final ExecutorService
Deprecated.private final Map<HRegionLocation,
HTableMultiplexer.FlushWorker> Deprecated.The map between each region server to its flush workerstatic final String
Deprecated.static final String
Deprecated.static final String
Deprecated. -
Constructor Summary
ConstructorDescriptionHTableMultiplexer
(org.apache.hadoop.conf.Configuration conf, int perRegionServerBufferQueueSize) Deprecated.HTableMultiplexer
(Connection conn, org.apache.hadoop.conf.Configuration conf, int perRegionServerBufferQueueSize) Deprecated. -
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
Deprecated.Closes the internalConnection
.(package private) ClusterConnection
Deprecated.Deprecated.Returns the current HTableMultiplexerStatus(package private) LinkedBlockingQueue<HTableMultiplexer.PutStatus>
getQueue
(HRegionLocation addr) Deprecated.Deprecated.Useput(TableName, List)
instead.boolean
Deprecated.Useput(TableName, Put)
instead.boolean
Deprecated.Useput(TableName, Put)
instead.Deprecated.The puts request will be buffered by their corresponding buffer queue.boolean
Deprecated.The put request will be buffered by its corresponding buffer queue.boolean
Deprecated.The put request will be buffered by its corresponding buffer queue.
-
Field Details
-
LOG
Deprecated. -
TABLE_MULTIPLEXER_FLUSH_PERIOD_MS
Deprecated.- See Also:
-
TABLE_MULTIPLEXER_INIT_THREADS
Deprecated.- See Also:
-
TABLE_MULTIPLEXER_MAX_RETRIES_IN_QUEUE
Deprecated.- See Also:
-
serverToFlushWorkerMap
Deprecated.The map between each region server to its flush worker -
conf
Deprecated. -
conn
Deprecated. -
pool
Deprecated. -
maxAttempts
Deprecated. -
perRegionServerBufferQueueSize
Deprecated. -
maxKeyValueSize
Deprecated. -
executor
Deprecated. -
flushPeriod
Deprecated.
-
-
Constructor Details
-
HTableMultiplexer
public HTableMultiplexer(org.apache.hadoop.conf.Configuration conf, int perRegionServerBufferQueueSize) throws IOException Deprecated.- Parameters:
conf
- The HBaseConfigurationperRegionServerBufferQueueSize
- determines the max number of the buffered Put ops for each region server before dropping the request.- Throws:
IOException
-
HTableMultiplexer
public HTableMultiplexer(Connection conn, org.apache.hadoop.conf.Configuration conf, int perRegionServerBufferQueueSize) Deprecated.- Parameters:
conn
- The HBase connection.conf
- The HBase configurationperRegionServerBufferQueueSize
- determines the max number of the buffered Put ops for each region server before dropping the request.
-
-
Method Details
-
close
Deprecated.Closes the internalConnection
. Does nothing if theConnection
has already been closed.- Throws:
IOException
- If there is an error closing the connection.
-
put
Deprecated.The put request will be buffered by its corresponding buffer queue. Return false if the queue is already full.- Returns:
- true if the request can be accepted by its corresponding buffer queue.
-
put
Deprecated.The puts request will be buffered by their corresponding buffer queue. Return the list of puts which could not be queued.- Returns:
- the list of puts which could not be queued
-
put
Deprecated.Useput(TableName, List)
instead. -
put
Deprecated.The put request will be buffered by its corresponding buffer queue. And the put request will be retried before dropping the request. Return false if the queue is already full.- Returns:
- true if the request can be accepted by its corresponding buffer queue.
-
put
Deprecated.Useput(TableName, Put)
instead. -
put
Deprecated.Useput(TableName, Put)
instead. -
getHTableMultiplexerStatus
Deprecated.Returns the current HTableMultiplexerStatus -
getQueue
Deprecated. -
getConnection
Deprecated.
-
BufferedMutator
for batching mutations.