Showing content from https://cloud.google.com/cpp/docs/reference/bigtable/2.23.0/bigtable-hello-table-admin 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.
Getting Started with Bigtable Table Administrative Operations
This example illustrates how to use the BigtableTableAdminClient
class to:
- Create a table.
- List tables.
- Retrieve table metadata.
- Modify existing tables.
- Delete all the rows in a table.
- Delete a table.
Running 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/admin/bigtable_table_admin_client.h"
#include "google/cloud/bigtable/resource_names.h"
Define aliases
To make the example less verbose we define some aliases:
namespace cbt = ::google::cloud::bigtable;
namespace cbta = ::google::cloud::bigtable_admin;
using ::google::cloud::StatusOr;
Connect to the Cloud Bigtable Table Admin Endpoint.
Use the bigtable_admin::BigtableTableAdminClient
class to obtain information about Cloud Bigtable tables and to modify them:
cbta::BigtableTableAdminClient admin(
cbta::MakeBigtableTableAdminConnection());
See Also
https://cloud.google.com/bigtable/docs/overview for an overview of the Cloud Bigtable storage model, including an introduction to important Cloud Bigtable concepts, such as row keys, column families, columns, and cells.
Creating a Table
Use BigtableTableAdminClient::CreateTable()
to create a new table:
// Define the schema
auto constexpr kSecondsPerDay =
std::chrono::seconds(std::chrono::hours(24)).count();
google::bigtable::admin::v2::Table t;
auto& families = *t.mutable_column_families();
families["fam"].mutable_gc_rule()->set_max_num_versions(10);
families["foo"].mutable_gc_rule()->mutable_max_age()->set_seconds(
3 * kSecondsPerDay);
std::cout << "Creating a table:\n";
std::string instance_name = cbt::InstanceName(project_id, instance_id);
StatusOr<google::bigtable::admin::v2::Table> schema =
admin.CreateTable(instance_name, table_id, std::move(t));
std::cout << "DONE\n";
Note that when you create a table you can define one or more column families for the table, and each column families is configured with a garbage collection rule to automatically delete excess cells.
See Also
Configure garbage collection to learn about the garbage collection rules.
Listing Tables in an Instance
Get all the tables in an instance using BigtableTableAdminClient::ListTables()
:
std::cout << "Listing tables:\n";
google::bigtable::admin::v2::ListTablesRequest list_req;
list_req.set_parent(instance_name);
list_req.set_view(google::bigtable::admin::v2::Table::NAME_ONLY);
for (auto& table : admin.ListTables(std::move(list_req))) {
if (!table) throw std::move(table).status();
std::cout << " " << table->name() << "\n";
}
std::cout << "DONE\n";
Note how this example uses a TableView parameter to query only a subset of the table metadata.
Retrieve Table Metadata
Or retrieve the metadata, including column family definitions, using BigtableTableAdminClient::GetTable()
:
std::cout << "Get table metadata:\n";
google::bigtable::admin::v2::GetTableRequest get_req;
get_req.set_name(schema->name());
get_req.set_view(google::bigtable::admin::v2::Table::FULL);
StatusOr<google::bigtable::admin::v2::Table> table =
admin.GetTable(std::move(get_req));
if (!table) throw std::move(table).status();
std::cout << "Table name : " << table->name() << "\n";
std::cout << "List table families and GC rules:\n";
for (auto const& kv : table->column_families()) {
std::string const& family_name = kv.first;
google::bigtable::admin::v2::ColumnFamily const& metadata = kv.second;
std::cout << "Column Family :" << family_name << "\t"
<< metadata.DebugString() << "\n";
}
std::cout << "DONE\n";
See Also
Configure garbage collection to learn about the garbage collection rules.
Modify a Column Family
You can also add new column families, delete a column family, or update an existing column family:
std::cout << "Update a column family GC rule:\n";
using ::google::bigtable::admin::v2::ModifyColumnFamiliesRequest;
ModifyColumnFamiliesRequest::Modification mod;
mod.set_id("fam");
mod.mutable_update()->mutable_gc_rule()->set_max_num_versions(5);
StatusOr<google::bigtable::admin::v2::Table> updated_schema =
admin.ModifyColumnFamilies(table->name(), {std::move(mod)});
if (!updated_schema) {
throw std::move(updated_schema).status();
}
std::cout << "Schema modified to: " << updated_schema->DebugString() << "\n";
Warning: Note that deleting a column family also deletes all the data in the column family. Cloud Bigtable will delete an existing column family even if you have data in it. For mission critical data you must ensure that the data is backed up dropping any column families. Delete all the Rows in a Table
Use BigtableTableAdminClient::DropRowRange()
to delete all the rows in a table:
std::cout << "Deleting all the rows in " << table_id << "\n";
google::bigtable::admin::v2::DropRowRangeRequest drop_req;
drop_req.set_name(table->name());
drop_req.set_delete_all_data_from_table(true);
google::cloud::Status status = admin.DropRowRange(std::move(drop_req));
if (!status.ok()) throw std::runtime_error(status.message());
std::cout << "DONE\n";
Delete a Table
Finally use BigtableTableAdminClient::DeleteTable()
to delete a a table:
std::cout << "Deleting table:\n";
google::cloud::Status delete_status = admin.DeleteTable(table->name());
if (!delete_status.ok()) throw std::runtime_error(delete_status.message());
std::cout << "DONE\n";
Warning: Note that this function will delete the table even if it contains data, for mission critical data you must ensure that the data is backed up before calling this function. Put it all together
Here is the full example
#include "google/cloud/bigtable/admin/bigtable_table_admin_client.h"
#include "google/cloud/bigtable/resource_names.h"
#include "google/cloud/bigtable/examples/bigtable_examples_common.h"
#include "google/cloud/bigtable/testing/cleanup_stale_resources.h"
#include "google/cloud/bigtable/testing/random_names.h"
#include "google/cloud/internal/getenv.h"
#include "google/cloud/internal/random.h"
#include "google/cloud/log.h"
#include <chrono>
#include <iostream>
namespace {
using ::google::cloud::bigtable::examples::Usage;
void HelloWorldTableAdmin(std::vector<std::string> const& argv) {
if (argv.size() != 3) {
throw Usage{
"hello-world-table-admin <project-id> <instance-id> "
"<table-id>"};
}
std::string const& project_id = argv[0];
std::string const& instance_id = argv[1];
std::string const& table_id = argv[2];
namespace cbt = ::google::cloud::bigtable;
namespace cbta = ::google::cloud::bigtable_admin;
using ::google::cloud::StatusOr;
// Connect to the Cloud Bigtable admin endpoint.
cbta::BigtableTableAdminClient admin(
cbta::MakeBigtableTableAdminConnection());
// Define the schema
auto constexpr kSecondsPerDay =
std::chrono::seconds(std::chrono::hours(24)).count();
google::bigtable::admin::v2::Table t;
auto& families = *t.mutable_column_families();
families["fam"].mutable_gc_rule()->set_max_num_versions(10);
families["foo"].mutable_gc_rule()->mutable_max_age()->set_seconds(
3 * kSecondsPerDay);
std::cout << "Creating a table:\n";
std::string instance_name = cbt::InstanceName(project_id, instance_id);
StatusOr<google::bigtable::admin::v2::Table> schema =
admin.CreateTable(instance_name, table_id, std::move(t));
std::cout << "DONE\n";
std::cout << "Listing tables:\n";
google::bigtable::admin::v2::ListTablesRequest list_req;
list_req.set_parent(instance_name);
list_req.set_view(google::bigtable::admin::v2::Table::NAME_ONLY);
for (auto& table : admin.ListTables(std::move(list_req))) {
if (!table) throw std::move(table).status();
std::cout << " " << table->name() << "\n";
}
std::cout << "DONE\n";
std::cout << "Get table metadata:\n";
google::bigtable::admin::v2::GetTableRequest get_req;
get_req.set_name(schema->name());
get_req.set_view(google::bigtable::admin::v2::Table::FULL);
StatusOr<google::bigtable::admin::v2::Table> table =
admin.GetTable(std::move(get_req));
if (!table) throw std::move(table).status();
std::cout << "Table name : " << table->name() << "\n";
std::cout << "List table families and GC rules:\n";
for (auto const& kv : table->column_families()) {
std::string const& family_name = kv.first;
google::bigtable::admin::v2::ColumnFamily const& metadata = kv.second;
std::cout << "Column Family :" << family_name << "\t"
<< metadata.DebugString() << "\n";
}
std::cout << "DONE\n";
std::cout << "Update a column family GC rule:\n";
using ::google::bigtable::admin::v2::ModifyColumnFamiliesRequest;
ModifyColumnFamiliesRequest::Modification mod;
mod.set_id("fam");
mod.mutable_update()->mutable_gc_rule()->set_max_num_versions(5);
StatusOr<google::bigtable::admin::v2::Table> updated_schema =
admin.ModifyColumnFamilies(table->name(), {std::move(mod)});
if (!updated_schema) {
throw std::move(updated_schema).status();
}
std::cout << "Schema modified to: " << updated_schema->DebugString() << "\n";
std::cout << "Deleting all the rows in " << table_id << "\n";
google::bigtable::admin::v2::DropRowRangeRequest drop_req;
drop_req.set_name(table->name());
drop_req.set_delete_all_data_from_table(true);
google::cloud::Status status = admin.DropRowRange(std::move(drop_req));
if (!status.ok()) throw std::runtime_error(status.message());
std::cout << "DONE\n";
std::cout << "Deleting table:\n";
google::cloud::Status delete_status = admin.DeleteTable(table->name());
if (!delete_status.ok()) throw std::runtime_error(delete_status.message());
std::cout << "DONE\n";
}
void RunAll(std::vector<std::string> const& argv) {
namespace examples = ::google::cloud::bigtable::examples;
namespace cbt = ::google::cloud::bigtable;
namespace cbta = ::google::cloud::bigtable_admin;
if (!argv.empty()) throw examples::Usage{"auto"};
if (!examples::RunAdminIntegrationTests()) return;
examples::CheckEnvironmentVariablesAreSet({
"GOOGLE_CLOUD_PROJECT",
"GOOGLE_CLOUD_CPP_BIGTABLE_TEST_INSTANCE_ID",
});
auto const project_id =
google::cloud::internal::GetEnv("GOOGLE_CLOUD_PROJECT").value();
auto const instance_id = google::cloud::internal::GetEnv(
"GOOGLE_CLOUD_CPP_BIGTABLE_TEST_INSTANCE_ID")
.value();
auto conn = cbta::MakeBigtableTableAdminConnection();
cbt::testing::CleanupStaleTables(conn, project_id, instance_id);
auto generator = google::cloud::internal::DefaultPRNG(std::random_device{}());
auto table_id = cbt::testing::RandomTableId(generator);
std::cout << "\nRunning the HelloWorldTableAdmin() example" << std::endl;
HelloWorldTableAdmin({project_id, instance_id, table_id});
}
} // namespace
int main(int argc, char* argv[]) try {
google::cloud::bigtable::examples::Example example({
{"auto", RunAll},
{"hello-world-table-admin", HelloWorldTableAdmin},
});
return example.Run(argc, argv);
} catch (std::exception const& ex) {
std::cerr << ex.what() << "\n";
::google::cloud::LogSink::Instance().Flush();
return 1;
}
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."],[[["This page provides documentation and examples for using the Cloud Bigtable C++ Client Library to manage Bigtable tables."],["The content covers administrative operations such as creating, listing, retrieving metadata, modifying, and deleting Bigtable tables, including their column families and garbage collection rules."],["The latest version of the Bigtable Table Admin API is 2.37.0-rc, with multiple versions from 2.11.0 to 2.36.0 also being available and documented."],["The `BigtableTableAdminClient` class is central to performing these operations, facilitating interaction with the Bigtable service."],["The example demonstrates how to manage tables and their column families by adding, deleting, and updating them, alongside deleting all the rows in a table, and using the provided code to reproduce the results."]]],[]]
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