Resource: AppProfile
A configuration object describing how Cloud Bigtable should treat traffic from a particular end user application.
JSON representation |
---|
{ "name": string, "etag": string, "description": string, // Union field |
Fields | |
---|---|
name |
The unique name of the app profile. Values are of the form |
etag |
Strongly validated etag for optimistic concurrency control. Preserve the value returned from |
description |
Long form description of the use case for this AppProfile. |
Union field routing_policy . The routing policy for all read/write requests that use this app profile. A value must be explicitly set. routing_policy can be only one of the following: |
|
multi |
Use a multi-cluster routing policy. |
single |
Use a single-cluster routing policy. |
Union field isolation . Options for isolating this app profile's traffic from other use cases. isolation can be only one of the following: |
|
priority |
This field has been deprecated in favor of The priority of requests sent using this app profile. |
standard |
The standard options used for isolating this app profile's traffic from other use cases. |
data |
Specifies that this app profile is intended for read-only usage via the Data Boost feature. |
MultiClusterRoutingUseAny
Read/write requests are routed to the nearest cluster in the instance, and will fail over to the nearest cluster that is available in the event of transient errors or delays. Clusters in a region are considered equidistant. Choosing this option sacrifices read-your-writes consistency to improve availability.
JSON representation |
---|
{ "clusterIds": [ string ], // Union field |
Fields | |
---|---|
cluster |
The set of clusters to route to. The order is ignored; clusters will be tried in order of distance. If left empty, all clusters are eligible. |
Union field This mechanism gives read-your-writes consistency for most requests under most circumstances, without sacrificing availability. Consistency is not guaranteed, as requests might still fail over between clusters in the event of errors or latency. |
|
row |
row affinity sticky routing based on the row key of the request. Requests that span multiple rows are routed non-deterministically. |
RowAffinity
This type has no fields.
If enabled, Bigtable will route the request based on the row key of the request, rather than randomly. Instead, each row key will be assigned to a cluster, and will stick to that cluster. If clusters are added or removed, then this may affect which row keys stick to which clusters. To avoid this, users can use a cluster group to specify which clusters are to be used. In this case, new clusters that are not a part of the cluster group will not be routed to, and routing will be unaffected by the new cluster. Moreover, clusters specified in the cluster group cannot be deleted unless removed from the cluster group.
SingleClusterRouting
Unconditionally routes all read/write requests to a specific cluster. This option preserves read-your-writes consistency but does not improve availability.
JSON representation |
---|
{ "clusterId": string, "allowTransactionalWrites": boolean } |
Fields | |
---|---|
cluster |
The cluster to which read/write requests should be routed. |
allow |
Whether or not |
Priority
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.
Enums | |
---|---|
PRIORITY_UNSPECIFIED |
Default value. Mapped to PRIORITY_HIGH (the legacy behavior) on creation. |
PRIORITY_LOW |
|
PRIORITY_MEDIUM |
|
PRIORITY_HIGH |
StandardIsolation
Standard options for isolating this app profile's traffic from other use cases.
JSON representation |
---|
{
"priority": enum ( |
Fields | |
---|---|
priority |
The priority of requests sent using this app profile. |
DataBoostIsolationReadOnly
Data Boost is a serverless compute capability that lets you run high-throughput read jobs and queries on your Bigtable data, without impacting the performance of the clusters that handle your application traffic. Data Boost supports read-only use cases with single-cluster routing.
JSON representation |
---|
{
"computeBillingOwner": enum ( |
Fields | |
---|---|
compute |
The Compute Billing Owner for this Data Boost App Profile. |
ComputeBillingOwner
Compute Billing Owner specifies how usage should be accounted when using Data Boost. Compute Billing Owner also configures which Cloud Project is charged for relevant quota.
Enums | |
---|---|
COMPUTE_BILLING_OWNER_UNSPECIFIED |
Unspecified value. |
HOST_PAYS |
The host Cloud Project containing the targeted Bigtable Instance / Table pays for compute. |
Methods |
|
---|---|
|
Creates an app profile within an instance. |
|
Deletes an app profile from an instance. |
|
Gets information about an app profile. |
|
Lists information about app profiles in an instance. |
|
Updates an app profile within an instance. |