Class RowMutation (2.44.0)

public final class RowMutation implements MutationApi<RowMutation>, Serializable

Represents a list of mutations targeted at a single row. It's meant to be used as an parameter for com.google.cloud.bigtable.data.v2.BigtableDataClient#mutateRowAsync(RowMutation).

Inheritance

java.lang.Object > RowMutation

Implements

com.google.cloud.bigtable.data.v2.models.MutationApi<com.google.cloud.bigtable.data.v2.models.RowMutation>, Serializable

Static Methods

create(TargetId targetId, ByteString key)

public static RowMutation create(TargetId targetId, ByteString key)

Creates a new instance of the mutation builder for the given target with targetId. See Also: TableId, AuthorizedViewId

Parameters
Name Description
targetId TargetId
key ByteString
Returns
Type Description
RowMutation

create(TargetId targetId, ByteString key, Mutation mutation)

public static RowMutation create(TargetId targetId, ByteString key, Mutation mutation)

Creates new instance of mutation builder for the given target with targetId by wrapping existing set of row mutations. The builder will be owned by this RowMutation and should not be used by the caller after this call. This functionality is intended for advanced usage.

Sample code:


 Mutation mutation = Mutation.create()
     .setCell("[FAMILY_NAME]", "[QUALIFIER]", [TIMESTAMP], "[VALUE]");
 RowMutation rowMutation = RowMutation.create(TableId.of("[TABLE]"), [BYTE_STRING_ROW_KEY], mutation);
 

See Also: TableId, AuthorizedViewId

Parameters
Name Description
targetId TargetId
key ByteString
mutation Mutation
Returns
Type Description
RowMutation

create(TargetId targetId, String key)

public static RowMutation create(TargetId targetId, String key)

Creates a new instance of the mutation builder for the given target with targetId. See Also: TableId, AuthorizedViewId

Parameters
Name Description
targetId TargetId
key String
Returns
Type Description
RowMutation

create(TargetId targetId, String key, Mutation mutation)

public static RowMutation create(TargetId targetId, String key, Mutation mutation)

Creates new instance of mutation builder for the given target with targetId by wrapping existing set of row mutations. The builder will be owned by this RowMutation and should not be used by the caller after this call. This functionality is intended for advanced usage.

Sample code:


 Mutation mutation = Mutation.create()
     .setCell("[FAMILY_NAME]", "[QUALIFIER]", [TIMESTAMP], "[VALUE]");
 RowMutation rowMutation = RowMutation.create(TableId.of("[TABLE]"), "[ROW_KEY]", mutation);
 

See Also: TableId, AuthorizedViewId

Parameters
Name Description
targetId TargetId
key String
mutation Mutation
Returns
Type Description
RowMutation

create(String tableId, ByteString key) (deprecated)

public static RowMutation create(String tableId, ByteString key)

Deprecated. Please use RowMutation#create(TargetId, ByteString) instead.

Parameters
Name Description
tableId String
key ByteString
Returns
Type Description
RowMutation

create(String tableId, ByteString key, Mutation mutation) (deprecated)

public static RowMutation create(String tableId, ByteString key, Mutation mutation)
Parameters
Name Description
tableId String
key ByteString
mutation Mutation
Returns
Type Description
RowMutation

create(String tableId, String key) (deprecated)

public static RowMutation create(String tableId, String key)

Deprecated. Please use RowMutation#create(TargetId, String) instead.

Parameters
Name Description
tableId String
key String
Returns
Type Description
RowMutation

create(String tableId, String key, Mutation mutation) (deprecated)

public static RowMutation create(String tableId, String key, Mutation mutation)

Deprecated. Please use RowMutation#create(TargetId, String, Mutation) instead.

Parameters
Name Description
tableId String
key String
mutation Mutation
Returns
Type Description
RowMutation

fromProto(MutateRowRequest request)

public static RowMutation fromProto(MutateRowRequest request)

Wraps the protobuf MutateRowRequest.

This is meant for advanced usage only. Please ensure that the MutateRowRequest does not use server side timestamps. The BigtableDataClient assumes that RowMutations are idempotent and is configured to enable retries by default. If serverside timestamps are enabled, this can lead to duplicate mutations.

WARNING: when applied, the resulting mutation object will ignore the project id and instance id in the table_name and instead apply the configuration in the client.

Parameter
Name Description
request com.google.bigtable.v2.MutateRowRequest
Returns
Type Description
RowMutation

Methods

addToCell(String familyName, Value qualifier, Value timestamp, Value input)

public RowMutation addToCell(String familyName, Value qualifier, Value timestamp, Value input)

Adds a Value to an aggregate cell. The column family must be an aggregate family and have an input type matching the type of Value or this mutation will be rejected.

Note: The timestamp values are in microseconds but must match the granularity of the table(defaults to MILLIS). Therefore, the given value must be a multiple of 1000 (millisecond granularity). For example: 1571902339435000.

Parameters
Name Description
familyName String
qualifier Value
timestamp Value
input Value
Returns
Type Description
RowMutation

deleteCells(String familyName, ByteString qualifier)

public RowMutation deleteCells(String familyName, ByteString qualifier)

Adds a mutation which deletes cells from the specified column.

Parameters
Name Description
familyName String
qualifier ByteString
Returns
Type Description
RowMutation

deleteCells(String familyName, ByteString qualifier, Range.TimestampRange timestampRange)

public RowMutation deleteCells(String familyName, ByteString qualifier, Range.TimestampRange timestampRange)

Adds a mutation which deletes cells from the specified column, restricted to a given timestamp range.

Parameters
Name Description
familyName String
qualifier ByteString
timestampRange Range.TimestampRange
Returns
Type Description
RowMutation

deleteCells(String familyName, String qualifier)

public RowMutation deleteCells(String familyName, String qualifier)

Adds a mutation which deletes cells from the specified column.

Parameters
Name Description
familyName String
qualifier String
Returns
Type Description
RowMutation

deleteFamily(String familyName)

public RowMutation deleteFamily(String familyName)

Adds a mutation which deletes all cells from the specified column family.

Parameter
Name Description
familyName String
Returns
Type Description
RowMutation

deleteRow()

public RowMutation deleteRow()

Adds a mutation which deletes all cells from the containing row.

Returns
Type Description
RowMutation

mergeToCell(String familyName, Value qualifier, Value timestamp, Value input)

public RowMutation mergeToCell(String familyName, Value qualifier, Value timestamp, Value input)

Merges a Value accumulator to an aggregate cell. The column family must be an aggregate family or this mutation will be rejected.

Note: The timestamp values are in microseconds but must match the granularity of the table(defaults to MILLIS). Therefore, the given value must be a multiple of 1000 (millisecond granularity). For example: 1571902339435000.

Parameters
Name Description
familyName String
qualifier Value
timestamp Value
input Value
Returns
Type Description
RowMutation

setCell(String familyName, ByteString qualifier, ByteString value)

public RowMutation setCell(String familyName, ByteString qualifier, ByteString value)

Adds a mutation which sets the value of the specified cell.

Uses microseconds since epoch as the timestamp.

Parameters
Name Description
familyName String
qualifier ByteString
value ByteString
Returns
Type Description
RowMutation

setCell(String familyName, ByteString qualifier, long value)

public RowMutation setCell(String familyName, ByteString qualifier, long value)

Adds a mutation which sets the value of the specified cell.

Uses microseconds since epoch as the timestamp.

Parameters
Name Description
familyName String
qualifier ByteString
value long
Returns
Type Description
RowMutation

setCell(String familyName, ByteString qualifier, long timestamp, ByteString value)

public RowMutation setCell(String familyName, ByteString qualifier, long timestamp, ByteString value)

Adds a mutation which sets the value of the specified cell.

Note: The timestamp values are in microseconds but must match the granularity of the table(defaults to MILLIS). Therefore, the given value must be a multiple of 1000 (millisecond granularity). For example: 1571902339435000.

Parameters
Name Description
familyName String
qualifier ByteString
timestamp long
value ByteString
Returns
Type Description
RowMutation

setCell(String familyName, ByteString qualifier, long timestamp, long value)

public RowMutation setCell(String familyName, ByteString qualifier, long timestamp, long value)

Adds a mutation which sets the value of the specified cell.

Note: The timestamp values are in microseconds but must match the granularity of the table(defaults to MILLIS). Therefore, the given value must be a multiple of 1000 (millisecond granularity). For example: 1571902339435000.

Parameters
Name Description
familyName String
qualifier ByteString
timestamp long
value long
Returns
Type Description
RowMutation

setCell(String familyName, String qualifier, String value)

public RowMutation setCell(String familyName, String qualifier, String value)

Adds a mutation which sets the value of the specified cell.

This a convenience method that converts Strings to ByteStrings and uses microseconds since epoch as the timestamp.

Parameters
Name Description
familyName String
qualifier String
value String
Returns
Type Description
RowMutation

setCell(String familyName, String qualifier, long value)

public RowMutation setCell(String familyName, String qualifier, long value)

Adds a mutation which sets the value of the specified cell.

This a convenience method that converts Strings to ByteStrings and uses microseconds since epoch as the timestamp. Also it accepts long value.

Parameters
Name Description
familyName String
qualifier String
value long
Returns
Type Description
RowMutation

setCell(String familyName, String qualifier, long timestamp, String value)

public RowMutation setCell(String familyName, String qualifier, long timestamp, String value)

Adds a mutation which sets the value of the specified cell.

This is a convenience override that converts Strings to ByteStrings.

Note: The timestamp values are in microseconds but must match the granularity of the table(defaults to MILLIS). Therefore, the given value must be a multiple of 1000 (millisecond granularity). For example: 1571902339435000.

Parameters
Name Description
familyName String
qualifier String
timestamp long
value String
Returns
Type Description
RowMutation

setCell(String familyName, String qualifier, long timestamp, long value)

public RowMutation setCell(String familyName, String qualifier, long timestamp, long value)

Adds a mutation which sets the value of the specified cell.

This is a convenience override that converts Strings to ByteStrings.

Note: The timestamp values are in microseconds but must match the granularity of the table(defaults to MILLIS). Therefore, the given value must be a multiple of 1000 (millisecond granularity). For example: 1571902339435000.

Parameters
Name Description
familyName String
qualifier String
timestamp long
value long
Returns
Type Description
RowMutation

toBulkProto(RequestContext requestContext)

public MutateRowsRequest toBulkProto(RequestContext requestContext)

Creates a single entry bulk com.google.bigtable.v2.MutateRowsRequest, which will be merged by the batching logic in the callable chain.

Parameter
Name Description
requestContext com.google.cloud.bigtable.data.v2.internal.RequestContext
Returns
Type Description
com.google.bigtable.v2.MutateRowsRequest

toProto(RequestContext requestContext)

public MutateRowRequest toProto(RequestContext requestContext)
Parameter
Name Description
requestContext com.google.cloud.bigtable.data.v2.internal.RequestContext
Returns
Type Description
com.google.bigtable.v2.MutateRowRequest