Package com.google.cloud.bigtable.admin.v2.models (2.34.0)

Classes

AppProfile

An application profile, or app profile, stores settings that tell your Cloud Bigtable instance how to handle incoming requests from an application. When one of your applications connects to a Cloud Bigtable instance, it can specify an app profile, and Cloud Bigtable uses that app profile for any requests that the application sends over that connection.

App profiles affect how your applications communicate with an instance that uses replication. As a result, app profiles are especially useful for instances that have 2 clusters. Even if your instance has only 1 cluster, you can use a unique app profile for each application that you run, or for different components within a single application. See Also: For more details.

AppProfile.MultiClusterRoutingPolicy

A RoutingPolicy that tells Cloud Bigtable that it can route each request to any available cluster.

AppProfile.SingleClusterRoutingPolicy

A RoutingPolicy that routes all requests to a specific cluster.

AppProfile.StandardIsolationPolicy

A standard IsolationPolicy for isolating this app profile's traffic from other use cases. This accomplished by assigning different priorities to app profiles. A request that uses an app profile with a StandardIsolationPolicy with a HIGH priority will likely run before a request with a LOW priority.

Backup

A backup lets you save a copy of a table's schema and data and restore the backup to a new table at a later time.

Cluster

A cluster represents the actual Cloud Bigtable service. Each cluster belongs to a single Cloud Bigtable instance, and an instance can have up to 2 clusters. When your application sends requests to a Cloud Bigtable instance, those requests are actually handled by one of the clusters in the instance.

ClusterAutoscalingConfig

Model class to create an autoscaling config for creating or updating a cluster. When creating this config, min nodes, max nodes, and CPU utilization must all be set.

ColumnFamily

Wrapper for ColumnFamily protocol buffer object

CopyBackupRequest

Build CopyBackupRequest for com.google.bigtable.admin.v2.CopyBackupRequest.

CreateAppProfileRequest

Parameters for creating a new Cloud Bigtable app profile.

An application profile, or app profile, stores settings that tell your Cloud Bigtable instance how to handle incoming requests from an application. When one of your applications connects to a Cloud Bigtable instance, it can specify an app profile, and Cloud Bigtable uses that app profile for any requests that the application sends over that connection.

Sample code:


 AppProfile existingAppProfile = ...;
 CreateAppProfileRequest appProfileRequest = CreateAppProfileRequest.of("my-instance", "my-new-app-profile")
   .setRoutingPolicy(SingleClusterRoutingPolicy.of("my-cluster"));
 

See Also: AppProfilefor more details

CreateBackupRequest

Fluent wrapper for com.google.bigtable.admin.v2.CreateBackupRequest

CreateClusterRequest

Parameters for creating a new Bigtable cluster.

A cluster represents the actual Cloud Bigtable service. Each cluster belongs to a single Cloud Bigtable instance. When your application sends requests to a Cloud Bigtable instance, those requests are actually handled by one of the clusters in the instance.

Each cluster is located in a single zone. An instance's clusters must be in unique zones that are within the same region. For example, if the first cluster is in us-east1-b, then us-east1-c is a valid zone for the second cluster. For a list of zones and regions where Cloud Bigtable is available, see Cloud Bigtable Locations.

Examples:


 // Small production instance:
 CreateClusterRequest clusterRequest = CreateClusterRequest.of("my-existing-instance", "my-cluster")
   .setZone("us-east1-c")
   .setServeNodes(3)
   .setStorageType(StorageType.SSD);
 

See Also: For more details

CreateInstanceRequest

Parameters for creating a new Bigtable Instance.

A Cloud Bigtable instance is mostly just a container for your clusters and nodes, which do all of the real work. Instances come in 2 flavors:

Production
A standard instance with either 1 or 2 clusters, as well as 3 or more nodes in each cluster. You cannot downgrade a production instance to a development instance.
Development
A low-cost instance for development and testing, with performance limited to the equivalent of a 1-node cluster. Development instances only support a single 1 node cluster. At any point this can be upgraded to a production instance.

When creating an Instance, you must create at least one cluster in it.

Examples:


 // Small production instance:
 CreateInstanceRequest smallProdInstanceRequest = CreateInstanceRequest.of("my-small-instance")
   .addCluster("cluster1", "us-east1-c", 3, StorageType.SSD);

 // Development instance:
 CreateInstanceRequest smallProdInstanceRequest = CreateInstanceRequest.of("my-dev-instance")
   .setType(Type.DEVELOPMENT)
   .addDevelopmentCluster("cluster1", "us-east1-c", StorageType.SSD);

 

See Also: For more details

CreateTableRequest

Fluent wrapper for com.google.bigtable.admin.v2.CreateTableRequest

Allows for creating table with:

  • optional columnFamilies, including optional GCRule
  • optional granularity
  • and optional split points

EncryptionInfo

Encryption information for a given resource.

If this resource is protected with customer managed encryption, the in-use Google Cloud Key Management Service (KMS) key versions will be specified along with their status.

GCRules

Wraps GcRule protocol buffer object and exposes a friendly API.

Note: Garbage collection executes opportunistically in the background, and so it's possible for reads to return a cell even if it matches the active GC expression for its family. Please use appropriate filters in your reads to exclude cells which are eligible for garbage collection.

GCRules.DefaultRule

Wrapper for building a empty rule

GCRules.DurationRule

Wrapper for building max duration rule

GCRules.IntersectionRule

Fluent wrapper for Intersection rule. Allows far adding an hierarchy of rules with intersection as the root

GCRules.UnionRule

Fluent wrapper for Union rule. Allows far adding an hierarchy of rules with union as the root

GCRules.VersionRule

Wrapper for building max versions rule

Instance

Represents an existing Cloud Bigtable instance.

A Cloud Bigtable instance is mostly just a container for your clusters and nodes, which do all of the real work.

ModifyColumnFamiliesRequest

Fluent wrapper for com.google.bigtable.admin.v2.ModifyColumnFamiliesRequest

Allows for the following ColumnFamily modifications:

  • create family, optionally with GCRule
  • update existing family GCRule
  • drop an existing family

OptimizeRestoredTableOperationToken

OptimizeRestoredTableOperationToken is a wrapper for the name of OptimizeRestoredTable operation.

RestoreTableRequest

Fluent wrapper for com.google.bigtable.admin.v2.RestoreTableRequest

RestoredTableResult

A RestoredTableResult holds the restored table object and the OptimizeRestoredTableOperationToken object (if any).

StaticClusterSize

Table

Wrapper for Table protocol buffer object

UpdateAppProfileRequest

Parameters for updating an existing Cloud Bigtable app profile.

Examples


 AppProfile existingAppProfile = ...;
 UpdateAppProfileRequest appProfileRequest = UpdateAppProfileRequest.of(existingAppProfile)
   .setRoutingPolicy(SingleClusterRoutingPolicy.of("my-cluster"));
 

See Also: AppProfilefor more details

UpdateBackupRequest

Fluent wrapper for com.google.bigtable.admin.v2.UpdateBackupRequest

UpdateInstanceRequest

Parameters for updating an existing Bigtable instance.

Existing instances maybe updated to change their superficial appearance (ie. display name) and can also be upgraded from a DEVELOPMENT instance to a PRODUCTION instance. Please note that upgrading to a PRODUCTION instance cannot be undone.

UpdateTableRequest

Wrapper for com.google.bigtable.admin.v2.UpdateTableRequest

Allows for updating table:

  • Change stream retention period.

Interfaces

AppProfile.IsolationPolicy

Represents the options for isolating this app profile's traffic from other use cases.

AppProfile.RoutingPolicy

Represents the routing for read/write requests. Please check the implementations of this interface for more details.

GCRules.GCRule

interface for fluent GcRule wrappers

Enums

AppProfile.Priority

The possible priorities for an app profile. Note that higher priority writes can sometimes queue behind lower priority writes to the same tablet, as writes must be strictly sequenced in the durability log.

Backup.State

Cluster.State

EncryptionInfo.Type

Instance.State

Instance.Type

StorageType

Storage media types for persisting Bigtable data.

Table.ReplicationState

Exceptions

PartialListClustersException

Exception thrown when some zones are unavailable and listClusters is unable to return a full cluster list. This exception can be inspected to get a partial list.

PartialListInstancesException

Exception thrown when some zones are unavailable and listInstances is unable to return a full instance list. This exception can be inspected to get a partial list.