|
|
|
@ -41,6 +41,8 @@ message Instance { |
|
|
|
|
option (google.api.resource) = { |
|
|
|
|
type: "bigtableadmin.googleapis.com/Instance" |
|
|
|
|
pattern: "projects/{project}/instances/{instance}" |
|
|
|
|
plural: "instances" |
|
|
|
|
singular: "instance" |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
// Possible states of an instance. |
|
|
|
@ -82,9 +84,8 @@ message Instance { |
|
|
|
|
// to avoid confusion. |
|
|
|
|
string display_name = 2 [(google.api.field_behavior) = REQUIRED]; |
|
|
|
|
|
|
|
|
|
// (`OutputOnly`) |
|
|
|
|
// The current state of the instance. |
|
|
|
|
State state = 3; |
|
|
|
|
// Output only. The current state of the instance. |
|
|
|
|
State state = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; |
|
|
|
|
|
|
|
|
|
// The type of the instance. Defaults to `PRODUCTION`. |
|
|
|
|
Type type = 4; |
|
|
|
@ -102,14 +103,17 @@ message Instance { |
|
|
|
|
// * Keys and values must both be under 128 bytes. |
|
|
|
|
map<string, string> labels = 5; |
|
|
|
|
|
|
|
|
|
// Output only. A server-assigned timestamp representing when this Instance |
|
|
|
|
// was created. For instances created before this field was added (August |
|
|
|
|
// 2021), this value is `seconds: 0, nanos: 1`. |
|
|
|
|
// Output only. A commit timestamp representing when this Instance was |
|
|
|
|
// created. For instances created before this field was added (August 2021), |
|
|
|
|
// this value is `seconds: 0, nanos: 1`. |
|
|
|
|
google.protobuf.Timestamp create_time = 7 |
|
|
|
|
[(google.api.field_behavior) = OUTPUT_ONLY]; |
|
|
|
|
|
|
|
|
|
// Output only. Reserved for future use. |
|
|
|
|
optional bool satisfies_pzs = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; |
|
|
|
|
|
|
|
|
|
// Output only. Reserved for future use. |
|
|
|
|
optional bool satisfies_pzi = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// The Autoscaling targets for a Cluster. These determine the recommended nodes. |
|
|
|
@ -145,6 +149,8 @@ message Cluster { |
|
|
|
|
option (google.api.resource) = { |
|
|
|
|
type: "bigtableadmin.googleapis.com/Cluster" |
|
|
|
|
pattern: "projects/{project}/instances/{instance}/clusters/{cluster}" |
|
|
|
|
plural: "clusters" |
|
|
|
|
singular: "cluster" |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
// Possible states of a cluster. |
|
|
|
@ -214,7 +220,6 @@ message Cluster { |
|
|
|
|
// `cloudkms.cryptoKeyEncrypterDecrypter` role on the CMEK key. |
|
|
|
|
// 2) Only regional keys can be used and the region of the CMEK key must |
|
|
|
|
// match the region of the cluster. |
|
|
|
|
// 3) All clusters within an instance must use the same CMEK key. |
|
|
|
|
// Values are of the form |
|
|
|
|
// `projects/{project}/locations/{location}/keyRings/{keyring}/cryptoKeys/{key}` |
|
|
|
|
string kms_key_name = 1 [(google.api.resource_reference) = { |
|
|
|
@ -240,8 +245,9 @@ message Cluster { |
|
|
|
|
// Output only. The current state of the cluster. |
|
|
|
|
State state = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; |
|
|
|
|
|
|
|
|
|
// The number of nodes allocated to this cluster. More nodes enable higher |
|
|
|
|
// throughput and more consistent performance. |
|
|
|
|
// The number of nodes in the cluster. If no value is set, |
|
|
|
|
// Cloud Bigtable automatically allocates nodes based on your data footprint |
|
|
|
|
// and optimized for 50% storage utilization. |
|
|
|
|
int32 serve_nodes = 4; |
|
|
|
|
|
|
|
|
|
// Immutable. The node scaling factor of this cluster. |
|
|
|
@ -269,6 +275,8 @@ message AppProfile { |
|
|
|
|
option (google.api.resource) = { |
|
|
|
|
type: "bigtableadmin.googleapis.com/AppProfile" |
|
|
|
|
pattern: "projects/{project}/instances/{instance}/appProfiles/{app_profile}" |
|
|
|
|
plural: "appProfiles" |
|
|
|
|
singular: "appProfile" |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
// Read/write requests are routed to the nearest cluster in the instance, and |
|
|
|
@ -342,17 +350,10 @@ message AppProfile { |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// Data Boost is a serverless compute capability that lets you run |
|
|
|
|
// high-throughput read jobs on your Bigtable data, without impacting the |
|
|
|
|
// performance of the clusters that handle your application traffic. |
|
|
|
|
// Currently, Data Boost exclusively supports read-only use-cases with |
|
|
|
|
// single-cluster routing. |
|
|
|
|
// |
|
|
|
|
// Data Boost reads are only guaranteed to see the results of writes that |
|
|
|
|
// were written at least 30 minutes ago. This means newly written values may |
|
|
|
|
// not become visible for up to 30m, and also means that old values may |
|
|
|
|
// remain visible for up to 30m after being deleted or overwritten. To |
|
|
|
|
// mitigate the staleness of the data, users may either wait 30m, or use |
|
|
|
|
// CheckConsistency. |
|
|
|
|
// 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. |
|
|
|
|
message DataBoostIsolationReadOnly { |
|
|
|
|
// Compute Billing Owner specifies how usage should be accounted when using |
|
|
|
|
// Data Boost. Compute Billing Owner also configures which Cloud Project is |
|
|
|
@ -424,6 +425,8 @@ message HotTablet { |
|
|
|
|
option (google.api.resource) = { |
|
|
|
|
type: "bigtableadmin.googleapis.com/HotTablet" |
|
|
|
|
pattern: "projects/{project}/instances/{instance}/clusters/{cluster}/hotTablets/{hot_tablet}" |
|
|
|
|
plural: "hotTablets" |
|
|
|
|
singular: "hotTablet" |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
// The unique name of the hot tablet. Values are of the form |
|
|
|
@ -456,3 +459,57 @@ message HotTablet { |
|
|
|
|
// to 100% (the node spent all cycles serving the hot tablet). |
|
|
|
|
float node_cpu_usage_percent = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// A SQL logical view object that can be referenced in SQL queries. |
|
|
|
|
message LogicalView { |
|
|
|
|
option (google.api.resource) = { |
|
|
|
|
type: "bigtableadmin.googleapis.com/LogicalView" |
|
|
|
|
pattern: "projects/{project}/instances/{instance}/logicalViews/{logical_view}" |
|
|
|
|
plural: "logicalViews" |
|
|
|
|
singular: "logicalView" |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
// Identifier. The unique name of the logical view. |
|
|
|
|
// Format: |
|
|
|
|
// `projects/{project}/instances/{instance}/logicalViews/{logical_view} |
|
|
|
|
string name = 1 [(google.api.field_behavior) = IDENTIFIER]; |
|
|
|
|
|
|
|
|
|
// Required. The logical view's select query. |
|
|
|
|
string query = 2 [(google.api.field_behavior) = REQUIRED]; |
|
|
|
|
|
|
|
|
|
// Optional. The etag for this logical view. |
|
|
|
|
// This may be sent on update requests to ensure that the client has an |
|
|
|
|
// up-to-date value before proceeding. The server returns an ABORTED error on |
|
|
|
|
// a mismatched etag. |
|
|
|
|
string etag = 3 [(google.api.field_behavior) = OPTIONAL]; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// A materialized view object that can be referenced in SQL queries. |
|
|
|
|
message MaterializedView { |
|
|
|
|
option (google.api.resource) = { |
|
|
|
|
type: "bigtableadmin.googleapis.com/MaterializedView" |
|
|
|
|
pattern: "projects/{project}/instances/{instance}/materializedViews/{materialized_view}" |
|
|
|
|
plural: "materializedViews" |
|
|
|
|
singular: "materializedView" |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
// Identifier. The unique name of the materialized view. |
|
|
|
|
// Format: |
|
|
|
|
// `projects/{project}/instances/{instance}/materializedViews/{materialized_view} |
|
|
|
|
string name = 1 [(google.api.field_behavior) = IDENTIFIER]; |
|
|
|
|
|
|
|
|
|
// Required. Immutable. The materialized view's select query. |
|
|
|
|
string query = 2 [ |
|
|
|
|
(google.api.field_behavior) = REQUIRED, |
|
|
|
|
(google.api.field_behavior) = IMMUTABLE |
|
|
|
|
]; |
|
|
|
|
|
|
|
|
|
// Optional. The etag for this materialized view. |
|
|
|
|
// This may be sent on update requests to ensure that the client has an |
|
|
|
|
// up-to-date value before proceeding. The server returns an ABORTED error on |
|
|
|
|
// a mismatched etag. |
|
|
|
|
string etag = 3 [(google.api.field_behavior) = OPTIONAL]; |
|
|
|
|
|
|
|
|
|
// Set to true to make the MaterializedView protected against deletion. |
|
|
|
|
bool deletion_protection = 6; |
|
|
|
|
} |
|
|
|
|