@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, ts
ID_ATRIBUTE
COMPARATOR
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.
|
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()
Returns current setting for returnResults
|
Append |
setACL(Map<String,Permission> perms)
Set the ACL for this operation.
|
Append |
setACL(String user,
Permission perms)
Set the ACL for this operation.
|
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 n
|
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)
n * True (default) if the append operation should return the results.
|
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, toMap
getAttribute, getAttributeSize, getAttributesMap, getId, getPriority
private 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. nnpublic 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, exclusive npublic TimeRange getTimeRange()
protected long extraHeapSize()
Mutation
extraHeapSize
in class Mutation
public Append setReturnResults(boolean returnResults)
setReturnResults
in class Mutation
public boolean isReturnResults()
isReturnResults
in class Mutation
@Deprecated public Append add(byte[] family, byte[] qualifier, byte[] value)
family
- family namequalifier
- column qualifiervalue
- value to append to specified column n * @deprecated As of release 2.0.0, this
will be removed in HBase 3.0.0. Use addColumn(byte[], byte[], byte[])
insteadpublic Append addColumn(byte[] family, byte[] qualifier, byte[] value)
family
- family namequalifier
- column qualifiervalue
- value to append to specified column npublic Append add(Cell cell)
public Append setTimestamp(long timestamp)
Mutation
setTimestamp
in class Mutation
public Append setAttribute(String name, byte[] value)
Attributes
setAttribute
in interface Attributes
setAttribute
in class OperationWithAttributes
name
- attribute namevalue
- attribute valuepublic Append setId(String id)
OperationWithAttributes
setId
in class OperationWithAttributes
public Append setDurability(Durability d)
Mutation
setDurability
in class Mutation
@Deprecated public Append setFamilyCellMap(NavigableMap<byte[],List<Cell>> map)
Append(byte[], long, NavigableMap)
insteadsetFamilyCellMap
in class Mutation
public Append setClusterIds(List<UUID> clusterIds)
Mutation
setClusterIds
in class Mutation
clusterIds
- of the clusters that have consumed the mutationpublic Append setCellVisibility(CellVisibility expression)
Mutation
setCellVisibility
in class Mutation
public Append setACL(String user, Permission perms)
Mutation
public Append setACL(Map<String,Permission> perms)
Mutation
public Append setPriority(int priority)
setPriority
in class OperationWithAttributes
Copyright © 2007–2020 The Apache Software Foundation. All rights reserved.