Package com.google.cloud.bigtable.admin.v2.models (2.37.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.

AuthorizedView

A class that wraps the com.google.bigtable.admin.v2.AuthorizedView protocol buffer object.

An AuthorizedView represents subsets of a particular table based on rules. The access to each AuthorizedView can be configured separately from the Table.

Users can perform read/write operation on an AuthorizedView by providing an authorizedView id besides a table id, in which case the semantics remain identical as reading/writing on a Table except that visibility is restricted to the subset of the Table that the AuthorizedView represents.

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

CreateAuthorizedViewRequest

Parameters for creating a new Cloud Bigtable AuthorizedView, which represents subsets of a particular table.

Sample code:


 CreateAuthorizedViewRequest request =
     CreateAuthorizedViewRequest.of("my-table", "my-new-authorized-view")
         .setAuthorizedViewType(
             SubsetView.create()
                 .addRowPrefix("row#")
                 .addFamilySubsets(
                     "my-family", FamilySubsets.create().addQualifier("column")));
 

See Also: AuthorizedViewfor 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.

FamilySubsets

Represents subsets of a particular column family that are included in this authorized view.

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

SubsetView

Defines a simple authorized view that is a subset of the underlying Table.

Users can specify the rows in the form of row key prefixes, and specify the column families by adding the family id along with its familySubsets rule to the family subsets map. The subset is defined by the intersection of the specified row key prefixes and column family subsets.

Table

Wrapper for Table protocol buffer object

Type

Wrapper class for the com.google.bigtable.admin.v2.Type protobuf message. See Also: com.google.bigtable.admin.v2.Type

Type.Aggregate

A value that combines incremental updates into a summarized value.

Data is never directly written or read using type Aggregate. Writes will provide either the input_type or state_type, and reads will always return the state_type .

Type.Aggregate.Aggregator

Type.Aggregate.Aggregator.Sum

Type.Bytes

Represents a string of bytes with a specific encoding.

Type.Bytes.Encoding

Type.Bytes.Encoding.Raw

Type.Int64

Represents a 64-bit integer with a specific encoding.

Type.Int64.Encoding

Type.Int64.Encoding.BigEndianBytes

Type.Raw

Type.SumAggregateInput

This type is a marker type that allows types to be used as the input to the SUM aggregate function.

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

UpdateAuthorizedViewRequest

Parameters for updating an existing Cloud Bigtable AuthorizedView.

Sample code:


 AuthorizedView existingAuthorizedView = client.getAuthorizedView("my-table", "my-authorized-view");
 UpdateAuthorizedViewRequest request =
     UpdateAuthorizedViewRequest.of(existingAuthorizedView).setDeletionProtection(true);
 

See Also: AuthorizedViewfor 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.

AuthorizedView.AuthorizedViewType

Represents a subset of a Table. 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.