@InterfaceAudience.Private @InterfaceStability.Evolving public class BufferedMutatorImpl extends Object implements BufferedMutator
Used to communicate with a single HBase table similar to HTable
but meant for batched, potentially asynchronous puts. Obtain an instance from
a Connection and call close() afterwards.
While this can be used accross threads, great care should be used when doing so. Errors are global to the buffered mutator and the Exceptions can be thrown on any thread that causes the flush for requests.
ConnectionFactory,
ConnectionBufferedMutator.ExceptionListener| 限定符和类型 | 字段和说明 |
|---|---|
protected org.apache.hadoop.hbase.client.AsyncProcess |
ap |
protected ClusterConnection |
connection |
| 限定符和类型 | 方法和说明 |
|---|---|
void |
close()
Performs a
BufferedMutator.flush() and releases any resources held. |
void |
flush()
Executes all the buffered, asynchronous
Mutation operations and waits until they
are done. |
org.apache.hadoop.conf.Configuration |
getConfiguration()
Returns the
Configuration object used by this instance. |
TableName |
getName()
Gets the fully qualified table name instance of the table that this BufferedMutator writes to.
|
List<Row> |
getWriteBuffer()
已过时。
Going away when we drop public support for
HTableInterface.
Ó |
long |
getWriteBufferSize()
Returns the maximum size in bytes of the write buffer for this HTable.
|
void |
mutate(List<? extends Mutation> ms)
Send some
Mutations to the table. |
void |
mutate(Mutation m)
Sends a
Mutation to the table. |
void |
setOperationTimeout(int operationTimeout) |
void |
setRpcTimeout(int writeRpcTimeout) |
void |
setWriteBufferSize(long writeBufferSize)
已过时。
Going away when we drop public support for
HTableInterface. |
void |
validatePut(Put put) |
protected ClusterConnection connection
protected org.apache.hadoop.hbase.client.AsyncProcess ap
public TableName getName()
BufferedMutatorgetName 在接口中 BufferedMutatorpublic org.apache.hadoop.conf.Configuration getConfiguration()
BufferedMutatorConfiguration object used by this instance.
The reference returned is not a copy, so any change made to it will affect this instance.
getConfiguration 在接口中 BufferedMutatorpublic void mutate(Mutation m) throws InterruptedIOException, RetriesExhaustedWithDetailsException
BufferedMutatorMutation to the table. The mutations will be buffered and sent over the
wire as part of a batch. Currently only supports Put and Delete mutations.mutate 在接口中 BufferedMutatorm - The data to send.InterruptedIOExceptionRetriesExhaustedWithDetailsExceptionpublic void mutate(List<? extends Mutation> ms) throws InterruptedIOException, RetriesExhaustedWithDetailsException
BufferedMutatorMutations to the table. The mutations will be buffered and sent over the
wire as part of a batch. There is no guarantee of sending entire content of mutations
in a single batch; it will be broken up according to the write buffer capacity.mutate 在接口中 BufferedMutatorms - The data to send.InterruptedIOExceptionRetriesExhaustedWithDetailsExceptionpublic void validatePut(Put put) throws IllegalArgumentException
public void close()
throws IOException
BufferedMutatorBufferedMutator.flush() and releases any resources held.close 在接口中 Closeableclose 在接口中 AutoCloseableclose 在接口中 BufferedMutatorIOException - if a remote or network exception occurs.public void flush()
throws InterruptedIOException,
RetriesExhaustedWithDetailsException
BufferedMutatorMutation operations and waits until they
are done.@Deprecated public void setWriteBufferSize(long writeBufferSize) throws RetriesExhaustedWithDetailsException, InterruptedIOException
HTableInterface.HTable.setWriteBufferSize(long) only. This ought
not be called for production uses.public long getWriteBufferSize()
The default value comes from the configuration parameter hbase.client.write.buffer.
getWriteBufferSize 在接口中 BufferedMutatorpublic void setRpcTimeout(int writeRpcTimeout)
public void setOperationTimeout(int operationTimeout)
@Deprecated public List<Row> getWriteBuffer()
HTableInterface.
ÓHTable.getWriteBuffer() only. This should not beÓ
called from production uses.Copyright © 2007–2021 The Apache Software Foundation. All rights reserved.