|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
public interface HTableInterface
Used to communicate with a single HBase table.
| Method Summary | |
|---|---|
java.lang.Object[] |
batch(java.util.List<Row> actions)
Method that does a batch call on Deletes, Gets and Puts. |
void |
batch(java.util.List<Row> actions,
java.lang.Object[] results)
Method that does a batch call on Deletes, Gets and Puts. |
boolean |
checkAndDelete(byte[] row,
byte[] family,
byte[] qualifier,
byte[] value,
Delete delete)
Atomically checks if a row/family/qualifier value matches the expected value. |
boolean |
checkAndPut(byte[] row,
byte[] family,
byte[] qualifier,
byte[] value,
Put put)
Atomically checks if a row/family/qualifier value matches the expected value. |
void |
close()
Releases any resources help or pending changes in internal buffers. |
void |
delete(Delete delete)
Deletes the specified cells/row. |
void |
delete(java.util.List<Delete> deletes)
Deletes the specified cells/rows in bulk. |
boolean |
exists(Get get)
Test for the existence of columns in the table, as specified in the Get. |
void |
flushCommits()
Executes all the buffered Put operations. |
Result |
get(Get get)
Extracts certain cells from a given row. |
Result[] |
get(java.util.List<Get> gets)
Extracts certain cells from the given rows, in batch. |
org.apache.hadoop.conf.Configuration |
getConfiguration()
Returns the Configuration object used by this instance. |
Result |
getRowOrBefore(byte[] row,
byte[] family)
Return the row that matches row exactly, or the one that immediately precedes it. |
ResultScanner |
getScanner(byte[] family)
Gets a scanner on the current table for the given family. |
ResultScanner |
getScanner(byte[] family,
byte[] qualifier)
Gets a scanner on the current table for the given family and qualifier. |
ResultScanner |
getScanner(Scan scan)
Returns a scanner on the current table as specified by the Scan
object. |
HTableDescriptor |
getTableDescriptor()
Gets the table descriptor for this table. |
byte[] |
getTableName()
Gets the name of this table. |
Result |
increment(Increment increment)
Increments one or more columns within a single row. |
long |
incrementColumnValue(byte[] row,
byte[] family,
byte[] qualifier,
long amount)
Atomically increments a column value. |
long |
incrementColumnValue(byte[] row,
byte[] family,
byte[] qualifier,
long amount,
boolean writeToWAL)
Atomically increments a column value. |
boolean |
isAutoFlush()
Tells whether or not 'auto-flush' is turned on. |
RowLock |
lockRow(byte[] row)
Obtains a lock on a row. |
void |
put(java.util.List<Put> puts)
Puts some data in the table, in batch. |
void |
put(Put put)
Puts some data in the table. |
void |
unlockRow(RowLock rl)
Releases a row lock. |
| Method Detail |
|---|
byte[] getTableName()
org.apache.hadoop.conf.Configuration getConfiguration()
Configuration object used by this instance.
The reference returned is not a copy, so any change made to it will affect this instance.
HTableDescriptor getTableDescriptor()
throws java.io.IOException
table descriptor for this table.
java.io.IOException - if a remote or network exception occurs.
boolean exists(Get get)
throws java.io.IOException
This will return true if the Get matches one or more keys, false if not.
This is a server-side call so it prevents any data from being transfered to the client.
get - the Get
java.io.IOException - e
void batch(java.util.List<Row> actions,
java.lang.Object[] results)
throws java.io.IOException,
java.lang.InterruptedException
actions - list of Get, Put, Delete objectsresults - Empty Object[], same size as actions. Provides access to partial
results, in case an exception is thrown. A null in the result array means that
the call for that action failed, even after retries
java.io.IOException
java.lang.InterruptedException
java.lang.Object[] batch(java.util.List<Row> actions)
throws java.io.IOException,
java.lang.InterruptedException
actions - list of Get, Put, Delete objects
java.io.IOException
java.lang.InterruptedException
Result get(Get get)
throws java.io.IOException
get - The object that specifies what data to fetch and from which row.
Result instance returned won't
contain any KeyValue, as indicated by Result.isEmpty().
java.io.IOException - if a remote or network exception occurs.
Result[] get(java.util.List<Get> gets)
throws java.io.IOException
gets - The objects that specify what data to fetch and from which rows.
Result instance returned won't
contain any KeyValue, as indicated by Result.isEmpty().
A null in the return array means that the get operation for that
Get failed, even after retries.
java.io.IOException - if a remote or network exception occurs.
Result getRowOrBefore(byte[] row,
byte[] family)
throws java.io.IOException
row - A row key.family - Column family to include in the Result.
java.io.IOException - if a remote or network exception occurs.
ResultScanner getScanner(Scan scan)
throws java.io.IOException
Scan
object.
scan - A configured Scan object.
java.io.IOException - if a remote or network exception occurs.
ResultScanner getScanner(byte[] family)
throws java.io.IOException
family - The column family to scan.
java.io.IOException - if a remote or network exception occurs.
ResultScanner getScanner(byte[] family,
byte[] qualifier)
throws java.io.IOException
family - The column family to scan.qualifier - The column qualifier to scan.
java.io.IOException - if a remote or network exception occurs.
void put(Put put)
throws java.io.IOException
If isAutoFlush is false, the update is buffered
until the internal buffer is full.
put - The data to put.
java.io.IOException - if a remote or network exception occurs.
void put(java.util.List<Put> puts)
throws java.io.IOException
If isAutoFlush is false, the update is buffered
until the internal buffer is full.
puts - The list of mutations to apply. The list gets modified by this
method (in particular it gets re-ordered, so the order in which the elements
are inserted in the list gives no guarantee as to the order in which the
Puts are executed).
java.io.IOException - if a remote or network exception occurs. In that case
the puts argument will contain the Put instances that
have not be successfully applied.
boolean checkAndPut(byte[] row,
byte[] family,
byte[] qualifier,
byte[] value,
Put put)
throws java.io.IOException
row - to checkfamily - column family to checkqualifier - column qualifier to checkvalue - the expected valueput - data to put if check succeeds
java.io.IOException - e
void delete(Delete delete)
throws java.io.IOException
delete - The object that specifies what to delete.
java.io.IOException - if a remote or network exception occurs.
void delete(java.util.List<Delete> deletes)
throws java.io.IOException
deletes - List of things to delete. List gets modified by this
method (in particular it gets re-ordered, so the order in which the elements
are inserted in the list gives no guarantee as to the order in which the
Deletes are executed).
java.io.IOException - if a remote or network exception occurs. In that case
the deletes argument will contain the Delete instances
that have not be successfully applied.
boolean checkAndDelete(byte[] row,
byte[] family,
byte[] qualifier,
byte[] value,
Delete delete)
throws java.io.IOException
row - to checkfamily - column family to checkqualifier - column qualifier to checkvalue - the expected valuedelete - data to delete if check succeeds
java.io.IOException - e
Result increment(Increment increment)
throws java.io.IOException
This operation does not appear atomic to readers. Increments are done under a single row lock, so write operations to a row are synchronized, but readers do not take row locks so get and scan operations can see this operation partially completed.
increment - object that specifies the columns and amounts to be used
for the increment operations
java.io.IOException - e
long incrementColumnValue(byte[] row,
byte[] family,
byte[] qualifier,
long amount)
throws java.io.IOException
Equivalent to {@link #incrementColumnValue(byte[], byte[], byte[],
long, boolean) incrementColumnValue}(row, family, qualifier, amount,
<b>true</b>)
row - The row that contains the cell to increment.family - The column family of the cell to increment.qualifier - The column qualifier of the cell to increment.amount - The amount to increment the cell with (or decrement, if the
amount is negative).
java.io.IOException - if a remote or network exception occurs.
long incrementColumnValue(byte[] row,
byte[] family,
byte[] qualifier,
long amount,
boolean writeToWAL)
throws java.io.IOException
amount and
written to the specified column.
Setting writeToWAL to false means that in a fail scenario, you will lose any increments that have not been flushed.
row - The row that contains the cell to increment.family - The column family of the cell to increment.qualifier - The column qualifier of the cell to increment.amount - The amount to increment the cell with (or decrement, if the
amount is negative).writeToWAL - if true, the operation will be applied to the
Write Ahead Log (WAL). This makes the operation slower but safer, as if
the call returns successfully, it is guaranteed that the increment will
be safely persisted. When set to false, the call may return
successfully before the increment is safely persisted, so it's possible
that the increment be lost in the event of a failure happening before the
operation gets persisted.
java.io.IOException - if a remote or network exception occurs.boolean isAutoFlush()
true if 'auto-flush' is enabled (default), meaning
Put operations don't get buffered/delayed and are immediately
executed.
void flushCommits()
throws java.io.IOException
Put operations.
This method gets called once automatically for every Put or batch
of Puts (when put(List is used) when
isAutoFlush() is true.
java.io.IOException - if a remote or network exception occurs.
void close()
throws java.io.IOException
java.io.IOException - if a remote or network exception occurs.
RowLock lockRow(byte[] row)
throws java.io.IOException
row - The row to lock.
RowLock containing the row and lock id.
java.io.IOException - if a remote or network exception occurs.RowLock,
unlockRow(org.apache.hadoop.hbase.client.RowLock)
void unlockRow(RowLock rl)
throws java.io.IOException
rl - The row lock to release.
java.io.IOException - if a remote or network exception occurs.RowLock,
unlockRow(org.apache.hadoop.hbase.client.RowLock)
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||