@InterfaceAudience.Public public class Append extends Mutation
This operation ensures atomicty to readers. Appends are done under a single row lock, so write operations to a row are synchronized, and readers are guaranteed to see this operation fully completed.
To append to a set of columns of a row, instantiate an Append object with the
row to append to. At least one column to append must be specified using the
addColumn(byte[], byte[], byte[]) method.
| Modifier and Type | Field and Description |
|---|---|
private static long |
HEAP_OVERHEAD |
private static org.slf4j.Logger |
LOG |
private TimeRange |
tr |
durability, familyMap, MUTATION_OVERHEAD, row, tsID_ATRIBUTECOMPARATOR| Constructor and Description |
|---|
Append(Append appendToCopy)
Copy constructor
|
Append(byte[] row)
Create a Append operation for the specified row.
|
Append(byte[] rowArray,
int rowOffset,
int rowLength)
Create a Append operation for the specified row.
|
Append(byte[] row,
long ts,
NavigableMap<byte[],List<Cell>> familyMap)
Construct the Append with user defined data.
|
| Modifier and Type | Method and Description |
|---|---|
Append |
add(byte[] family,
byte[] qualifier,
byte[] value)
Deprecated.
As of release 2.0.0, this will be removed in HBase 3.0.0.
Use
addColumn(byte[], byte[], byte[]) instead |
Append |
add(Cell cell)
Add column and value to this Append operation.
|
Append |
addColumn(byte[] family,
byte[] qualifier,
byte[] value)
Add the specified column and value to this Append operation.
|
protected long |
extraHeapSize()
Subclasses should override this method to add the heap size of their own fields.
|
TimeRange |
getTimeRange()
Gets the TimeRange used for this append.
|
boolean |
isReturnResults() |
Append |
setACL(Map<String,Permission> perms) |
Append |
setACL(String user,
Permission perms) |
Append |
setAttribute(String name,
byte[] value)
Sets an attribute.
|
Append |
setCellVisibility(CellVisibility expression)
Sets the visibility expression associated with cells in this Mutation.
|
Append |
setClusterIds(List<UUID> clusterIds)
Marks that the clusters with the given clusterIds have consumed the mutation
|
Append |
setDurability(Durability d)
Set the durability for this mutation
|
Append |
setFamilyCellMap(NavigableMap<byte[],List<Cell>> map)
Deprecated.
As of release 2.0.0, this will be removed in HBase 3.0.0.
Use
Append(byte[], long, NavigableMap) instead |
Append |
setId(String id)
This method allows you to set an identifier on an operation.
|
Append |
setPriority(int priority) |
Append |
setReturnResults(boolean returnResults) |
Append |
setTimeRange(long minStamp,
long maxStamp)
Sets the TimeRange to be used on the Get for this append.
|
Append |
setTimestamp(long timestamp)
Set the timestamp of the delete.
|
Append |
setTTL(long ttl)
Set the TTL desired for the result of the mutation, in milliseconds.
|
cellScanner, checkRow, checkRow, checkRow, compareTo, createPutKeyValue, createPutKeyValue, createPutKeyValue, get, getACL, getCellList, getCellVisibility, getClusterIds, getDurability, getFamilyCellMap, getFingerprint, getRow, getTimestamp, getTimeStamp, getTTL, has, has, has, has, has, heapSize, isEmpty, numFamilies, size, toCellVisibility, toMapgetAttribute, getAttributeSize, getAttributesMap, getId, getPriorityprivate static final org.slf4j.Logger LOG
private static final long HEAP_OVERHEAD
public Append(byte[] row)
At least one column must be appended to.
row - row key; makes a local copy of passed in array.public Append(Append appendToCopy)
appendToCopy - append to copypublic Append(byte[] rowArray, int rowOffset, int rowLength)
At least one column must be appended to.
rowArray - Makes a copy out of this buffer.rowOffset - rowLength - public Append(byte[] row, long ts, NavigableMap<byte[],List<Cell>> familyMap)
row - row. CAN'T be nullts - timestampfamilyMap - the map to collect all cells internally. CAN'T be nullpublic Append setTimeRange(long minStamp, long maxStamp)
This is useful for when you have counters that only last for specific periods of time (ie. counters that are partitioned by time). By setting the range of valid times for this append, you can potentially gain some performance with a more optimal Get operation. Be careful adding the time range to this class as you will update the old cell if the time range doesn't include the latest cells.
This range is used as [minStamp, maxStamp).
minStamp - minimum timestamp value, inclusivemaxStamp - maximum timestamp value, exclusivepublic TimeRange getTimeRange()
protected long extraHeapSize()
MutationextraHeapSize in class Mutationpublic Append setReturnResults(boolean returnResults)
setReturnResults in class MutationreturnResults - True (default) if the append operation should return the results.
A client that is not interested in the result can save network
bandwidth setting this to false.public boolean isReturnResults()
isReturnResults in class Mutation@Deprecated public Append add(byte[] family, byte[] qualifier, byte[] value)
addColumn(byte[], byte[], byte[]) insteadfamily - family namequalifier - column qualifiervalue - value to append to specified columnpublic Append addColumn(byte[] family, byte[] qualifier, byte[] value)
family - family namequalifier - column qualifiervalue - value to append to specified columnpublic Append setTimestamp(long timestamp)
MutationsetTimestamp in class Mutationpublic Append setAttribute(String name, byte[] value)
AttributessetAttribute in interface AttributessetAttribute in class OperationWithAttributesname - attribute namevalue - attribute valuepublic Append setId(String id)
OperationWithAttributessetId in class OperationWithAttributesid - id to set for the scanpublic Append setDurability(Durability d)
MutationsetDurability in class Mutation@Deprecated public Append setFamilyCellMap(NavigableMap<byte[],List<Cell>> map)
Append(byte[], long, NavigableMap) insteadsetFamilyCellMap in class Mutationpublic Append setClusterIds(List<UUID> clusterIds)
MutationsetClusterIds in class MutationclusterIds - of the clusters that have consumed the mutationpublic Append setCellVisibility(CellVisibility expression)
MutationsetCellVisibility in class Mutationpublic Append setACL(String user, Permission perms)
public Append setACL(Map<String,Permission> perms)
public Append setPriority(int priority)
setPriority in class OperationWithAttributesCopyright © 2007–2020 The Apache Software Foundation. All rights reserved.