Showing content from https://cloud.google.com/cpp/docs/reference/bigtable/2.23.0/bigtable-samples-data-client below:
C++ Client Libraries | Google Cloud
Skip to main content
- Overview
-
Library reference docs
- Google Cloud Platform Bigtable C++ Client Library
-
Namespaces
-
google::cloud::bigtable
- Overview
-
Classes
-
AsyncRowReader<Unused1, Unused2>
-
Cell
- Overview
-
Constructors
- Cell(KeyType &&, std::string, ColumnType &&, std::int64_t, ValueType &&, std::vector< std::string >)
- Cell(KeyType &&, std::string, ColumnType &&, std::int64_t, std::int64_t, std::vector< std::string >)
- Cell(KeyType &&, std::string, ColumnType &&, std::int64_t, ValueType &&)
-
DataClient
- Overview
-
Functions
- MutateRow(grpc::ClientContext *, google::bigtable::v2::MutateRowRequest const &, google::bigtable::v2::MutateRowResponse *)
- AsyncMutateRow(grpc::ClientContext *, google::bigtable::v2::MutateRowRequest const &, grpc::CompletionQueue *)
- CheckAndMutateRow(grpc::ClientContext *, google::bigtable::v2::CheckAndMutateRowRequest const &, google::bigtable::v2::CheckAndMutateRowResponse *)
- AsyncCheckAndMutateRow(grpc::ClientContext *, google::bigtable::v2::CheckAndMutateRowRequest const &, grpc::CompletionQueue *)
- ReadModifyWriteRow(grpc::ClientContext *, google::bigtable::v2::ReadModifyWriteRowRequest const &, google::bigtable::v2::ReadModifyWriteRowResponse *)
- AsyncReadModifyWriteRow(grpc::ClientContext *, google::bigtable::v2::ReadModifyWriteRowRequest const &, grpc::CompletionQueue *)
- ReadRows(grpc::ClientContext *, google::bigtable::v2::ReadRowsRequest const &)
- AsyncReadRows(grpc::ClientContext *, google::bigtable::v2::ReadRowsRequest const &, grpc::CompletionQueue *, void *)
- PrepareAsyncReadRows(::grpc::ClientContext *, google::bigtable::v2::ReadRowsRequest const &, grpc::CompletionQueue *)
- SampleRowKeys(grpc::ClientContext *, google::bigtable::v2::SampleRowKeysRequest const &)
- AsyncSampleRowKeys(grpc::ClientContext *, google::bigtable::v2::SampleRowKeysRequest const &, grpc::CompletionQueue *, void *)
- virtual PrepareAsyncSampleRowKeys(grpc::ClientContext *, google::bigtable::v2::SampleRowKeysRequest const &, grpc::CompletionQueue *)
- MutateRows(grpc::ClientContext *, google::bigtable::v2::MutateRowsRequest const &)
- AsyncMutateRows(::grpc::ClientContext *, google::bigtable::v2::MutateRowsRequest const &, grpc::CompletionQueue *, void *)
- PrepareAsyncMutateRows(grpc::ClientContext *, google::bigtable::v2::MutateRowsRequest const &, grpc::CompletionQueue *)
- project_id() const
- instance_id() const
- Channel()
- reset()
- BackgroundThreadsFactory()
-
DataConnection
- Overview
-
Functions
- virtual options()
- virtual Apply(std::string const &, SingleRowMutation)
- virtual AsyncApply(std::string const &, SingleRowMutation)
- virtual BulkApply(std::string const &, BulkMutation)
- virtual AsyncBulkApply(std::string const &, BulkMutation)
- virtual ReadRows(std::string const &, RowSet, std::int64_t, Filter)
- virtual ReadRowsFull(ReadRowsParams)
- virtual ReadRow(std::string const &, std::string, Filter)
- virtual CheckAndMutateRow(std::string const &, std::string, Filter, std::vector< Mutation >, std::vector< Mutation >)
- virtual AsyncCheckAndMutateRow(std::string const &, std::string, Filter, std::vector< Mutation >, std::vector< Mutation >)
- virtual SampleRows(std::string const &)
- virtual AsyncSampleRows(std::string const &)
- virtual ReadModifyWriteRow(google::bigtable::v2::ReadModifyWriteRowRequest)
- virtual AsyncReadModifyWriteRow(google::bigtable::v2::ReadModifyWriteRowRequest)
- virtual AsyncReadRows(std::string const &, std::function< future< bool >(Row)>, std::function< void(Status)>, RowSet, std::int64_t, Filter)
- virtual AsyncReadRow(std::string const &, std::string, Filter)
-
DataLimitedErrorCountRetryPolicy
-
Filter
- Overview
-
Functions
- static ValueRangeLeftOpen(std::string, std::string)
- static ValueRangeRightOpen(std::string, std::string)
- static ValueRangeClosed(std::string, std::string)
- static ValueRangeOpen(std::string, std::string)
- static ColumnRangeRightOpen(std::string, std::string, std::string)
- static ColumnRangeLeftOpen(std::string, std::string, std::string)
- static ColumnRangeClosed(std::string, std::string, std::string)
- static ColumnRangeOpen(std::string, std::string, std::string)
- static Condition(Filter, Filter, Filter)
- static Chain(FilterTypes &&...)
- static ChainFromRange(Iterator, Iterator)
- static Interleave(FilterTypes &&...)
- static InterleaveFromRange(Iterator, Iterator)
- static Sink()
- as_proto() const &
- as_proto() &&
- static PassAllFilter()
- static BlockAllFilter()
- static Latest(std::int32_t)
- static FamilyRegex(std::string)
- static ColumnRegex(std::string)
- static ColumnRange(std::string, std::string, std::string)
- static ColumnName(std::string, std::string)
- static TimestampRangeMicros(std::int64_t, std::int64_t)
- static TimestampRange(std::chrono::duration< Rep1, Period1 >, std::chrono::duration< Rep2, Period2 >)
- static RowKeysRegex(std::string)
- static ValueRegex(std::string)
- static ValueRange(std::string, std::string)
- static CellsRowLimit(std::int32_t)
- static CellsRowOffset(std::int32_t)
- static RowSample(double)
- static StripValueTransformer()
- static ApplyLabelTransformer(std::string)
-
GenericPollingPolicy<Retry, Backoff>
-
InstanceAdmin
- Overview
-
Functions
- project_name() const
- project_id() const
- WithNewTarget(std::string) const
- InstanceName(std::string const &) const
- ClusterName(std::string const &, std::string const &) const
- AppProfileName(std::string const &, std::string const &) const
- CreateInstance(InstanceConfig)
- CreateCluster(ClusterConfig, std::string const &, std::string const &)
- UpdateInstance(InstanceUpdateConfig)
- ListInstances()
- GetInstance(std::string const &)
- DeleteInstance(std::string const &)
- ListClusters()
- ListClusters(std::string const &)
- UpdateCluster(ClusterConfig)
- DeleteCluster(std::string const &, std::string const &)
- GetCluster(std::string const &, std::string const &)
- CreateAppProfile(std::string const &, AppProfileConfig)
- GetAppProfile(std::string const &, std::string const &)
- UpdateAppProfile(std::string const &, std::string const &, AppProfileUpdateConfig)
- ListAppProfiles(std::string const &)
- DeleteAppProfile(std::string const &, std::string const &, bool)
- GetNativeIamPolicy(std::string const &)
- SetIamPolicy(std::string const &, google::iam::v1::Policy const &)
- TestIamPermissions(std::string const &, std::vector< std::string > const &)
-
RowReader
- Overview
-
Constructors
- RowReader()
- RowReader(std::shared_ptr< DataClient >, std::string, RowSet, std::int64_t, Filter, std::unique_ptr< RPCRetryPolicy >, std::unique_ptr< RPCBackoffPolicy >, MetadataUpdatePolicy, std::unique_ptr< internal::ReadRowsParserFactory >)
- RowReader(std::shared_ptr< DataClient >, std::string, std::string, RowSet, std::int64_t, Filter, std::unique_ptr< RPCRetryPolicy >, std::unique_ptr< RPCBackoffPolicy >, MetadataUpdatePolicy, std::unique_ptr< internal::ReadRowsParserFactory >)
- RowReader(RowReader &&)
-
Table
- Overview
-
Constructors
- Table(std::shared_ptr< bigtable::DataConnection >, TableResource, Options)
- Table(std::shared_ptr< DataClient >, std::string const &)
- Table(std::shared_ptr< DataClient >, std::string, std::string const &)
- Table(std::shared_ptr< DataClient >, std::string const &, Policies &&...)
- Table(std::shared_ptr< DataClient >, std::string, std::string const &, Policies &&...)
-
Functions
- table_name() const
- app_profile_id() const
- project_id() const
- instance_id() const
- table_id() const
- WithNewTarget(std::string, std::string, std::string) const
- WithNewTarget(std::string, std::string, std::string, std::string) const
- Apply(SingleRowMutation, Options)
- AsyncApply(SingleRowMutation, Options)
- BulkApply(BulkMutation, Options)
- AsyncBulkApply(BulkMutation, Options)
- ReadRows(RowSet, Filter, Options)
- ReadRows(RowSet, std::int64_t, Filter, Options)
- ReadRow(std::string, Filter, Options)
- CheckAndMutateRow(std::string, Filter, std::vector< Mutation >, std::vector< Mutation >, Options)
- AsyncCheckAndMutateRow(std::string, Filter, std::vector< Mutation >, std::vector< Mutation >, Options)
- SampleRows(Options)
- AsyncSampleRows(Options)
- ReadModifyWriteRow(std::string, bigtable::ReadModifyWriteRule, Args &&...)
- AsyncReadModifyWriteRow(std::string, bigtable::ReadModifyWriteRule, Args &&...)
- AsyncReadRows(RowFunctor, FinishFunctor, RowSet, Filter, Options)
- AsyncReadRows(RowFunctor, FinishFunctor, RowSet, std::int64_t, Filter, Options)
- AsyncReadRow(std::string, Filter, Options)
-
TableAdmin
- Overview
-
Functions
- project() const
- instance_id() const
- instance_name() const
- WithNewTarget(std::string, std::string) const
- CreateTable(std::string, TableConfig)
- ListTables(::google::bigtable::admin::v2::Table::View)
- GetTable(std::string const &, TableView)
- DeleteTable(std::string const &)
- CreateBackup(CreateBackupParams const &)
- GetBackup(std::string const &, std::string const &)
- UpdateBackup(UpdateBackupParams const &)
- DeleteBackup(std::string const &, std::string const &)
- DeleteBackup(google::bigtable::admin::v2::Backup const &)
- ListBackups(ListBackupsParams const &)
- RestoreTable(RestoreTableParams const &)
- RestoreTable(RestoreTableFromInstanceParams)
- ModifyColumnFamilies(std::string const &, std::vector< ColumnFamilyModification >)
- DropRowsByPrefix(std::string const &, std::string)
- GenerateConsistencyToken(std::string const &)
- CheckConsistency(std::string const &, std::string const &)
- WaitForConsistency(std::string const &, std::string const &)
- DropAllRows(std::string const &)
- GetIamPolicy(std::string const &)
- GetIamPolicy(std::string const &, std::string const &)
- SetIamPolicy(std::string const &, google::iam::v1::Policy const &)
- SetIamPolicy(std::string const &, std::string const &, google::iam::v1::Policy const &)
- TestIamPermissions(std::string const &, std::vector< std::string > const &)
- TestIamPermissions(std::string const &, std::string const &, std::vector< std::string > const &)
- TableName(std::string const &) const
- ClusterName(std::string const &) const
- BackupName(std::string const &, std::string const &) const
-
Functions
- DeleteFromColumn(std::string, ColumnType &&, std::chrono::duration< Rep1, Period1 >, std::chrono::duration< Rep2, Period2 >)
- DeleteFromColumnStartingFrom(std::string, ColumnType &&, std::chrono::duration< Rep1, Period1 >)
- DeleteFromColumnEndingAt(std::string, ColumnType &&, std::chrono::duration< Rep2, Period2 >)
- DeleteFromColumn(std::string, ColumnType &&)
- MakeAdminClient(std::string, Options)
- CreateDefaultAdminClient(std::string, ClientOptions)
- SetCell(Cell)
- MakeDataClient(std::string, std::string, Options)
- CreateDefaultDataClient(std::string, std::string, ClientOptions)
- InstanceName(std::shared_ptr< DataClient > const &)
- MakeDataConnection(Options)
- Expression(std::string, std::string, std::string, std::string)
- IamBinding(std::string, InputIt, InputIt)
- IamBinding(std::string, InputIt, InputIt, google::type::Expr)
- IamBinding(std::string, std::initializer_list< std::string >)
- IamBinding(std::string, std::initializer_list< std::string >, google::type::Expr)
- IamBinding(std::string, std::vector< std::string >)
- IamBinding(std::string, std::vector< std::string >, google::type::Expr)
- IamBindingAppendMembers(google::iam::v1::Binding, InputIt, InputIt)
- IamBindingSetCondition(google::iam::v1::Binding, google::type::Expr)
- IamPolicy(InputIt, InputIt, std::string, std::int32_t)
- IamPolicy(std::initializer_list< google::iam::v1::Binding >, std::string, std::int32_t)
- IamPolicy(std::vector< google::iam::v1::Binding >, std::string, std::int32_t)
- RemoveBindingsFromPolicyIf(google::iam::v1::Policy &, Functor)
- RemoveBindingFromPolicy(google::iam::v1::Policy &, google::protobuf::RepeatedPtrField< google::iam::v1::Binding >::iterator)
- DefaultIdempotentMutationPolicy()
- MakeInstanceAdminClient(std::string, Options)
- CreateDefaultInstanceAdminClient(std::string, ClientOptions)
- MakeInstanceResource(std::string const &)
- ServerSetTimestamp()
- SetCell(std::string, ColumnType &&, std::chrono::milliseconds, ValueType &&)
- SetCell(std::string, ColumnType &&, std::chrono::milliseconds, std::int64_t)
- SetCell(std::string, ColumnType &&, ValueType &&)
- SetCell(std::string, ColumnType &&, std::int64_t)
- DeleteFromFamily(std::string)
- DeleteFromRow()
- DefaultPollingPolicy(internal::RPCPolicyParameters)
- InstanceName(std::string const &, std::string const &)
- TableName(std::string const &, std::string const &, std::string const &)
- ClusterName(std::string const &, std::string const &, std::string const &)
- AppProfileName(std::string const &, std::string const &, std::string const &)
- BackupName(std::string const &, std::string const &, std::string const &, std::string const &)
- DefaultRPCBackoffPolicy(internal::RPCPolicyParameters)
- DefaultRPCRetryPolicy(internal::RPCPolicyParameters)
- TableName(std::shared_ptr< DataClient > const &, std::string const &)
- MakeTableResource(std::string const &)
- version_major()
- version_minor()
- version_patch()
- version_pre_release()
- version()
- version_string()
-
google::cloud::bigtable::experimental
-
google::cloud::bigtable_admin
- Overview
-
Classes
-
BigtableInstanceAdminClient
- Overview
-
Functions
- CreateInstance(std::string const &, std::string const &, google::bigtable::admin::v2::Instance const &, std::map< std::string, google::bigtable::admin::v2::Cluster > const &, Options)
- CreateInstance(google::bigtable::admin::v2::CreateInstanceRequest const &, Options)
- GetInstance(std::string const &, Options)
- GetInstance(google::bigtable::admin::v2::GetInstanceRequest const &, Options)
- ListInstances(std::string const &, Options)
- ListInstances(google::bigtable::admin::v2::ListInstancesRequest const &, Options)
- UpdateInstance(google::bigtable::admin::v2::Instance const &, Options)
- PartialUpdateInstance(google::bigtable::admin::v2::Instance const &, google::protobuf::FieldMask const &, Options)
- PartialUpdateInstance(google::bigtable::admin::v2::PartialUpdateInstanceRequest const &, Options)
- DeleteInstance(std::string const &, Options)
- DeleteInstance(google::bigtable::admin::v2::DeleteInstanceRequest const &, Options)
- CreateCluster(std::string const &, std::string const &, google::bigtable::admin::v2::Cluster const &, Options)
- CreateCluster(google::bigtable::admin::v2::CreateClusterRequest const &, Options)
- GetCluster(std::string const &, Options)
- GetCluster(google::bigtable::admin::v2::GetClusterRequest const &, Options)
- ListClusters(std::string const &, Options)
- ListClusters(google::bigtable::admin::v2::ListClustersRequest const &, Options)
- UpdateCluster(google::bigtable::admin::v2::Cluster const &, Options)
- PartialUpdateCluster(google::bigtable::admin::v2::Cluster const &, google::protobuf::FieldMask const &, Options)
- PartialUpdateCluster(google::bigtable::admin::v2::PartialUpdateClusterRequest const &, Options)
- DeleteCluster(std::string const &, Options)
- DeleteCluster(google::bigtable::admin::v2::DeleteClusterRequest const &, Options)
- CreateAppProfile(std::string const &, std::string const &, google::bigtable::admin::v2::AppProfile const &, Options)
- CreateAppProfile(google::bigtable::admin::v2::CreateAppProfileRequest const &, Options)
- GetAppProfile(std::string const &, Options)
- GetAppProfile(google::bigtable::admin::v2::GetAppProfileRequest const &, Options)
- ListAppProfiles(std::string const &, Options)
- ListAppProfiles(google::bigtable::admin::v2::ListAppProfilesRequest, Options)
- UpdateAppProfile(google::bigtable::admin::v2::AppProfile const &, google::protobuf::FieldMask const &, Options)
- UpdateAppProfile(google::bigtable::admin::v2::UpdateAppProfileRequest const &, Options)
- DeleteAppProfile(google::bigtable::admin::v2::DeleteAppProfileRequest const &, Options)
- GetIamPolicy(std::string const &, Options)
- GetIamPolicy(google::iam::v1::GetIamPolicyRequest const &, Options)
- SetIamPolicy(std::string const &, google::iam::v1::Policy const &, Options)
- SetIamPolicy(std::string const &, IamUpdater const &, Options)
- SetIamPolicy(google::iam::v1::SetIamPolicyRequest const &, Options)
- TestIamPermissions(std::string const &, std::vector< std::string > const &, Options)
- TestIamPermissions(google::iam::v1::TestIamPermissionsRequest const &, Options)
- ListHotTablets(std::string const &, Options)
- ListHotTablets(google::bigtable::admin::v2::ListHotTabletsRequest, Options)
-
BigtableInstanceAdminConnection
-
BigtableInstanceAdminConnectionIdempotencyPolicy
-
BigtableInstanceAdminLimitedErrorCountRetryPolicy
-
BigtableInstanceAdminLimitedTimeRetryPolicy
-
BigtableInstanceAdminRetryPolicy
-
BigtableTableAdminClient
- Overview
-
Functions
- CreateTable(std::string const &, std::string const &, google::bigtable::admin::v2::Table const &, Options)
- CreateTable(google::bigtable::admin::v2::CreateTableRequest const &, Options)
- ListTables(std::string const &, Options)
- ListTables(google::bigtable::admin::v2::ListTablesRequest, Options)
- GetTable(std::string const &, Options)
- GetTable(google::bigtable::admin::v2::GetTableRequest const &, Options)
- UpdateTable(google::bigtable::admin::v2::Table const &, google::protobuf::FieldMask const &, Options)
- UpdateTable(google::bigtable::admin::v2::UpdateTableRequest const &, Options)
- DeleteTable(std::string const &, Options)
- DeleteTable(google::bigtable::admin::v2::DeleteTableRequest const &, Options)
- UndeleteTable(std::string const &, Options)
- UndeleteTable(google::bigtable::admin::v2::UndeleteTableRequest const &, Options)
- CreateAuthorizedView(std::string const &, google::bigtable::admin::v2::AuthorizedView const &, std::string const &, Options)
- CreateAuthorizedView(google::bigtable::admin::v2::CreateAuthorizedViewRequest const &, Options)
- ListAuthorizedViews(std::string const &, Options)
- ListAuthorizedViews(google::bigtable::admin::v2::ListAuthorizedViewsRequest, Options)
- GetAuthorizedView(std::string const &, Options)
- GetAuthorizedView(google::bigtable::admin::v2::GetAuthorizedViewRequest const &, Options)
- UpdateAuthorizedView(google::bigtable::admin::v2::AuthorizedView const &, google::protobuf::FieldMask const &, Options)
- UpdateAuthorizedView(google::bigtable::admin::v2::UpdateAuthorizedViewRequest const &, Options)
- DeleteAuthorizedView(std::string const &, Options)
- DeleteAuthorizedView(google::bigtable::admin::v2::DeleteAuthorizedViewRequest const &, Options)
- ModifyColumnFamilies(std::string const &, std::vector< google::bigtable::admin::v2::ModifyColumnFamiliesRequest::Modification > const &, Options)
- ModifyColumnFamilies(google::bigtable::admin::v2::ModifyColumnFamiliesRequest const &, Options)
- DropRowRange(google::bigtable::admin::v2::DropRowRangeRequest const &, Options)
- GenerateConsistencyToken(std::string const &, Options)
- GenerateConsistencyToken(google::bigtable::admin::v2::GenerateConsistencyTokenRequest const &, Options)
- CheckConsistency(std::string const &, std::string const &, Options)
- CheckConsistency(google::bigtable::admin::v2::CheckConsistencyRequest const &, Options)
- CreateBackup(std::string const &, std::string const &, google::bigtable::admin::v2::Backup const &, Options)
- CreateBackup(google::bigtable::admin::v2::CreateBackupRequest const &, Options)
- GetBackup(std::string const &, Options)
- GetBackup(google::bigtable::admin::v2::GetBackupRequest const &, Options)
- UpdateBackup(google::bigtable::admin::v2::Backup const &, google::protobuf::FieldMask const &, Options)
- UpdateBackup(google::bigtable::admin::v2::UpdateBackupRequest const &, Options)
- DeleteBackup(std::string const &, Options)
- DeleteBackup(google::bigtable::admin::v2::DeleteBackupRequest const &, Options)
- ListBackups(std::string const &, Options)
- ListBackups(google::bigtable::admin::v2::ListBackupsRequest, Options)
- RestoreTable(google::bigtable::admin::v2::RestoreTableRequest const &, Options)
- CopyBackup(std::string const &, std::string const &, std::string const &, google::protobuf::Timestamp const &, Options)
- CopyBackup(google::bigtable::admin::v2::CopyBackupRequest const &, Options)
- GetIamPolicy(std::string const &, Options)
- GetIamPolicy(google::iam::v1::GetIamPolicyRequest const &, Options)
- SetIamPolicy(std::string const &, google::iam::v1::Policy const &, Options)
- SetIamPolicy(std::string const &, IamUpdater const &, Options)
- SetIamPolicy(google::iam::v1::SetIamPolicyRequest const &, Options)
- TestIamPermissions(std::string const &, std::vector< std::string > const &, Options)
- TestIamPermissions(google::iam::v1::TestIamPermissionsRequest const &, Options)
- AsyncCheckConsistency(std::string const &, std::string const &, Options)
- AsyncCheckConsistency(google::bigtable::admin::v2::CheckConsistencyRequest const &, Options)
-
BigtableTableAdminConnectionIdempotencyPolicy
-
BigtableTableAdminLimitedErrorCountRetryPolicy
-
BigtableTableAdminLimitedTimeRetryPolicy
-
Structs
-
BigtableInstanceAdminBackoffPolicyOption
-
BigtableInstanceAdminConnectionIdempotencyPolicyOption
-
BigtableInstanceAdminPollingPolicyOption
-
BigtableInstanceAdminRetryPolicyOption
-
BigtableTableAdminBackoffPolicyOption
-
BigtableTableAdminConnectionIdempotencyPolicyOption
-
BigtableTableAdminPollingPolicyOption
-
BigtableTableAdminRetryPolicyOption
-
google::cloud::bigtable_admin_mocks
-
google::cloud::bigtable_mocks
- Overview
-
Classes
-
MockDataConnection
- Overview
-
Functions
- virtual options()
- virtual Apply(std::string const &, SingleRowMutation)
- virtual AsyncApply(std::string const &, SingleRowMutation)
- virtual BulkApply(std::string const &, BulkMutation)
- virtual AsyncBulkApply(std::string const &, BulkMutation)
- virtual ReadRows(std::string const &, RowSet, std::int64_t, Filter)
- virtual ReadRowsFull(ReadRowsParams)
- virtual ReadRow(std::string const &, std::string, Filter)
- virtual CheckAndMutateRow(std::string const &, std::string, Filter, std::vector< Mutation >, std::vector< Mutation >)
- virtual AsyncCheckAndMutateRow(std::string const &, std::string, Filter, std::vector< Mutation >, std::vector< Mutation >)
- virtual SampleRows(std::string const &)
- virtual AsyncSampleRows(std::string const &)
- virtual ReadModifyWriteRow(google::bigtable::v2::ReadModifyWriteRowRequest)
- virtual AsyncReadModifyWriteRow(google::bigtable::v2::ReadModifyWriteRowRequest)
- virtual AsyncReadRows(std::string const &, std::function< future< bool >(Row)>, std::function< void(Status)>, RowSet, std::int64_t, Filter)
- virtual AsyncReadRow(std::string const &, std::string, Filter)
Stay organized with collections Save and categorize content based on your preferences.
Advanced Reading and Writing Samples
This example is for advanced reading and writing operations on bigtable data client, that illustrates how to:
- Use ReadModifyWrite to append a string to a value.
- Use ReadModifyWrite to increment a value.
- Use the features to simplify reading big-endian values from Cloud Bigtable.
- Use CheckAndMutate to modify a value only if it exists.
Run the example
This example uses the Cloud Bigtable C++ Client Library to communicate with Cloud Bigtable.
To run the example program, follow the instructions for the example on GitHub.
The example uses the following headers:
#include "google/cloud/bigtable/table.h"
Connect to the Cloud Bigtable data client endpoint.
google::cloud::bigtable::Table table(
google::cloud::bigtable::MakeDataConnection(),
google::cloud::bigtable::TableResource(project_id, instance_id,
table_id));
Use ReadModifyWrite to increment a value and append a string to a value.
namespace cbt = ::google::cloud::bigtable;
using ::google::cloud::StatusOr;
[](cbt::Table table, std::string const& row_key) {
StatusOr<cbt::Row> row = table.ReadModifyWriteRow(
row_key, cbt::ReadModifyWriteRule::IncrementAmount("fam", "counter", 1),
cbt::ReadModifyWriteRule::AppendValue("fam", "list", ";element"));
// As the modify in this example is not idempotent, and this example
// does not attempt to retry if there is a failure, we simply print
// such failures, if any, and otherwise ignore them.
if (!row) {
std::cout << "Failed to append row: " << row.status().message() << "\n";
return;
}
// Print the contents of the row
std::cout << row->row_key() << "\n";
for (auto const& cell : row->cells()) {
std::cout << " " << cell.family_name() << ":"
<< cell.column_qualifier() << " = <";
if (cell.column_qualifier() == "counter") {
// This example uses "counter" to store 64-bit numbers in big-endian
// format, extract them as follows:
std::cout << cell.decode_big_endian_integer<std::int64_t>().value();
} else {
std::cout << cell.value();
}
std::cout << ">\n";
}
}
Use the features to simplify reading big-endian values from Cloud Bigtable.
namespace cbt = ::google::cloud::bigtable;
using ::google::cloud::StatusOr;
[](google::cloud::bigtable::Table table, std::string const& row_key) {
StatusOr<std::pair<bool, cbt::Row>> tuple = table.ReadRow(
row_key, cbt::Filter::ColumnName("stats_summary", "os_build"));
if (!tuple) throw std::move(tuple).status();
if (!tuple->first) {
std::cout << "Row " << row_key << " not found\n";
return;
}
PrintRow(tuple->second);
}
Use CheckAndMutate to modify a cell if it has a value.
namespace cbt = ::google::cloud::bigtable;
using ::google::cloud::StatusOr;
[](cbt::Table table, std::string const& row_key) {
// Check if the latest value of the flip-flop column is "on".
cbt::Filter predicate = cbt::Filter::Chain(
cbt::Filter::ColumnRangeClosed("fam", "flip-flop", "flip-flop"),
cbt::Filter::Latest(1), cbt::Filter::ValueRegex("on"));
// If the predicate matches, change the latest value to "off", otherwise,
// change the latest value to "on". Modify the "flop-flip" column at the
// same time.
StatusOr<cbt::MutationBranch> branch =
table.CheckAndMutateRow(row_key, std::move(predicate),
{cbt::SetCell("fam", "flip-flop", "off"),
cbt::SetCell("fam", "flop-flip", "on")},
{cbt::SetCell("fam", "flip-flop", "on"),
cbt::SetCell("fam", "flop-flip", "off")});
if (!branch) throw std::move(branch).status();
if (*branch == cbt::MutationBranch::kPredicateMatched) {
std::cout << "The predicate was matched\n";
} else {
std::cout << "The predicate was not matched\n";
}
}
Use CheckAndMutate to modify a cell if another cell exists.
namespace cbt = ::google::cloud::bigtable;
using ::google::cloud::StatusOr;
[](cbt::Table table, std::string const& row_key) {
// Check if the latest value of the "test-column" column is present,
// regardless of its value.
cbt::Filter predicate = cbt::Filter::Chain(
cbt::Filter::ColumnRangeClosed("fam", "test-column", "test-column"),
cbt::Filter::Latest(1));
// If the predicate matches, do nothing, otherwise set the
// "had-test-column" to "false":
StatusOr<cbt::MutationBranch> branch = table.CheckAndMutateRow(
row_key, std::move(predicate), {},
{cbt::SetCell("fam", "had-test-column", "false")});
if (!branch) throw std::move(branch).status();
if (*branch == cbt::MutationBranch::kPredicateMatched) {
std::cout << "The predicate was matched\n";
} else {
std::cout << "The predicate was not matched\n";
}
}
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-08-14 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-14 UTC."],[[["The content provides documentation and examples for using the Cloud Bigtable C++ Client Library, focusing on advanced reading and writing operations."],["The latest version of the C++ client library documented is 2.37.0-rc, and there are multiple previous versions going back to 2.11.0 available to reference."],["The examples demonstrate how to use `ReadModifyWrite` to increment values and append strings, along with methods to decode big-endian integers."],["The examples also illustrate the use of `CheckAndMutateRow` for conditionally modifying cells based on the existence or value of other cells within a row."],["Instructions are provided to connect to the Cloud Bigtable data client endpoint, including necessary headers and example code snippets for table operations."]]],[]]
RetroSearch is an open source project built by @garambo
| Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4