google-cloud-bigtable 1.2.1 → 2.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (87) hide show
  1. checksums.yaml +4 -4
  2. data/AUTHENTICATION.md +1 -1
  3. data/CHANGELOG.md +57 -0
  4. data/TROUBLESHOOTING.md +2 -8
  5. data/lib/google-cloud-bigtable.rb +30 -27
  6. data/lib/google/cloud/bigtable.rb +18 -26
  7. data/lib/google/cloud/bigtable/app_profile.rb +3 -3
  8. data/lib/google/cloud/bigtable/app_profile/list.rb +6 -4
  9. data/lib/google/cloud/bigtable/backup.rb +445 -0
  10. data/lib/google/cloud/bigtable/backup/job.rb +87 -0
  11. data/lib/google/cloud/bigtable/backup/list.rb +167 -0
  12. data/lib/google/cloud/bigtable/chunk_processor.rb +1 -1
  13. data/lib/google/cloud/bigtable/cluster.rb +101 -2
  14. data/lib/google/cloud/bigtable/cluster/list.rb +2 -2
  15. data/lib/google/cloud/bigtable/column_family.rb +2 -2
  16. data/lib/google/cloud/bigtable/column_family_map.rb +11 -11
  17. data/lib/google/cloud/bigtable/column_range.rb +2 -2
  18. data/lib/google/cloud/bigtable/credentials.rb +36 -2
  19. data/lib/google/cloud/bigtable/gc_rule.rb +7 -7
  20. data/lib/google/cloud/bigtable/instance.rb +6 -6
  21. data/lib/google/cloud/bigtable/instance/cluster_map.rb +1 -1
  22. data/lib/google/cloud/bigtable/instance/list.rb +2 -2
  23. data/lib/google/cloud/bigtable/longrunning_job.rb +13 -2
  24. data/lib/google/cloud/bigtable/mutation_entry.rb +10 -9
  25. data/lib/google/cloud/bigtable/mutation_operations.rb +2 -2
  26. data/lib/google/cloud/bigtable/project.rb +1 -1
  27. data/lib/google/cloud/bigtable/read_modify_write_rule.rb +2 -2
  28. data/lib/google/cloud/bigtable/read_operations.rb +2 -2
  29. data/lib/google/cloud/bigtable/routing_policy.rb +2 -2
  30. data/lib/google/cloud/bigtable/row_filter/chain_filter.rb +3 -3
  31. data/lib/google/cloud/bigtable/row_filter/condition_filter.rb +3 -3
  32. data/lib/google/cloud/bigtable/row_filter/interleave_filter.rb +3 -3
  33. data/lib/google/cloud/bigtable/row_filter/simple_filter.rb +3 -3
  34. data/lib/google/cloud/bigtable/row_range.rb +2 -2
  35. data/lib/google/cloud/bigtable/rows_mutator.rb +3 -3
  36. data/lib/google/cloud/bigtable/rows_reader.rb +10 -10
  37. data/lib/google/cloud/bigtable/sample_row_key.rb +2 -2
  38. data/lib/google/cloud/bigtable/service.rb +282 -245
  39. data/lib/google/cloud/bigtable/table.rb +5 -4
  40. data/lib/google/cloud/bigtable/table/cluster_state.rb +27 -6
  41. data/lib/google/cloud/bigtable/table/list.rb +2 -2
  42. data/lib/google/cloud/bigtable/table/restore_job.rb +117 -0
  43. data/lib/google/cloud/bigtable/value_range.rb +2 -2
  44. data/lib/google/cloud/bigtable/version.rb +1 -1
  45. metadata +16 -94
  46. data/lib/google/bigtable/admin/v2/bigtable_instance_admin_pb.rb +0 -145
  47. data/lib/google/bigtable/admin/v2/bigtable_instance_admin_services_pb.rb +0 -90
  48. data/lib/google/bigtable/admin/v2/bigtable_table_admin_pb.rb +0 -208
  49. data/lib/google/bigtable/admin/v2/bigtable_table_admin_services_pb.rb +0 -154
  50. data/lib/google/bigtable/admin/v2/common_pb.rb +0 -30
  51. data/lib/google/bigtable/admin/v2/instance_pb.rb +0 -74
  52. data/lib/google/bigtable/admin/v2/table_pb.rb +0 -127
  53. data/lib/google/bigtable/v2/bigtable_pb.rb +0 -113
  54. data/lib/google/bigtable/v2/bigtable_services_pb.rb +0 -68
  55. data/lib/google/bigtable/v2/data_pb.rb +0 -156
  56. data/lib/google/cloud/bigtable/admin.rb +0 -202
  57. data/lib/google/cloud/bigtable/admin/credentials.rb +0 -27
  58. data/lib/google/cloud/bigtable/admin/v2.rb +0 -223
  59. data/lib/google/cloud/bigtable/admin/v2/bigtable_instance_admin_client.rb +0 -1451
  60. data/lib/google/cloud/bigtable/admin/v2/bigtable_instance_admin_client_config.json +0 -139
  61. data/lib/google/cloud/bigtable/admin/v2/bigtable_table_admin_client.rb +0 -1734
  62. data/lib/google/cloud/bigtable/admin/v2/bigtable_table_admin_client_config.json +0 -163
  63. data/lib/google/cloud/bigtable/admin/v2/credentials.rb +0 -51
  64. data/lib/google/cloud/bigtable/admin/v2/doc/google/bigtable/admin/v2/bigtable_instance_admin.rb +0 -297
  65. data/lib/google/cloud/bigtable/admin/v2/doc/google/bigtable/admin/v2/bigtable_table_admin.rb +0 -587
  66. data/lib/google/cloud/bigtable/admin/v2/doc/google/bigtable/admin/v2/instance.rb +0 -193
  67. data/lib/google/cloud/bigtable/admin/v2/doc/google/bigtable/admin/v2/table.rb +0 -303
  68. data/lib/google/cloud/bigtable/admin/v2/doc/google/iam/v1/iam_policy.rb +0 -64
  69. data/lib/google/cloud/bigtable/admin/v2/doc/google/iam/v1/options.rb +0 -33
  70. data/lib/google/cloud/bigtable/admin/v2/doc/google/iam/v1/policy.rb +0 -151
  71. data/lib/google/cloud/bigtable/admin/v2/doc/google/longrunning/operations.rb +0 -51
  72. data/lib/google/cloud/bigtable/admin/v2/doc/google/protobuf/any.rb +0 -131
  73. data/lib/google/cloud/bigtable/admin/v2/doc/google/protobuf/duration.rb +0 -91
  74. data/lib/google/cloud/bigtable/admin/v2/doc/google/protobuf/empty.rb +0 -29
  75. data/lib/google/cloud/bigtable/admin/v2/doc/google/protobuf/field_mask.rb +0 -222
  76. data/lib/google/cloud/bigtable/admin/v2/doc/google/protobuf/timestamp.rb +0 -113
  77. data/lib/google/cloud/bigtable/admin/v2/doc/google/rpc/status.rb +0 -39
  78. data/lib/google/cloud/bigtable/admin/v2/doc/google/type/expr.rb +0 -45
  79. data/lib/google/cloud/bigtable/v2.rb +0 -146
  80. data/lib/google/cloud/bigtable/v2/bigtable_client.rb +0 -591
  81. data/lib/google/cloud/bigtable/v2/bigtable_client_config.json +0 -83
  82. data/lib/google/cloud/bigtable/v2/credentials.rb +0 -46
  83. data/lib/google/cloud/bigtable/v2/doc/google/bigtable/v2/bigtable.rb +0 -290
  84. data/lib/google/cloud/bigtable/v2/doc/google/bigtable/v2/data.rb +0 -493
  85. data/lib/google/cloud/bigtable/v2/doc/google/protobuf/any.rb +0 -131
  86. data/lib/google/cloud/bigtable/v2/doc/google/protobuf/wrappers.rb +0 -34
  87. data/lib/google/cloud/bigtable/v2/doc/google/rpc/status.rb +0 -39
@@ -1,587 +0,0 @@
1
- # Copyright 2020 Google LLC
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # https://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
-
15
-
16
- module Google
17
- module Bigtable
18
- module Admin
19
- module V2
20
- # Request message for
21
- # {Google::Bigtable::Admin::V2::BigtableTableAdmin::CreateTable}
22
- # @!attribute [rw] parent
23
- # @return [String]
24
- # Required. The unique name of the instance in which to create the table.
25
- # Values are of the form `projects/{project}/instances/{instance}`.
26
- # @!attribute [rw] table_id
27
- # @return [String]
28
- # Required. The name by which the new table should be referred to within the
29
- # parent instance, e.g., `foobar` rather than `{parent}/tables/foobar`.
30
- # Maximum 50 characters.
31
- # @!attribute [rw] table
32
- # @return [Google::Bigtable::Admin::V2::Table]
33
- # Required. The Table to create.
34
- # @!attribute [rw] initial_splits
35
- # @return [Array<Google::Bigtable::Admin::V2::CreateTableRequest::Split>]
36
- # The optional list of row keys that will be used to initially split the
37
- # table into several tablets (tablets are similar to HBase regions).
38
- # Given two split keys, `s1` and `s2`, three tablets will be created,
39
- # spanning the key ranges: `[, s1), [s1, s2), [s2, )`.
40
- #
41
- # Example:
42
- #
43
- # * Row keys := `["a", "apple", "custom", "customer_1", "customer_2",`
44
- # `"other", "zz"]`
45
- # * initial_split_keys := `["apple", "customer_1", "customer_2", "other"]`
46
- # * Key assignment:
47
- # * Tablet 1 `[, apple) => {"a"}.`
48
- # * Tablet 2 `[apple, customer_1) => {"apple", "custom"}.`
49
- # * Tablet 3 `[customer_1, customer_2) => {"customer_1"}.`
50
- # * Tablet 4 `[customer_2, other) => {"customer_2"}.`
51
- # * Tablet 5 `[other, ) => {"other", "zz"}.`
52
- class CreateTableRequest
53
- # An initial split point for a newly created table.
54
- # @!attribute [rw] key
55
- # @return [String]
56
- # Row key to use as an initial tablet boundary.
57
- class Split; end
58
- end
59
-
60
- # Request message for
61
- # {Google::Bigtable::Admin::V2::BigtableTableAdmin::CreateTableFromSnapshot}
62
- #
63
- # Note: This is a private alpha release of Cloud Bigtable snapshots. This
64
- # feature is not currently available to most Cloud Bigtable customers. This
65
- # feature might be changed in backward-incompatible ways and is not recommended
66
- # for production use. It is not subject to any SLA or deprecation policy.
67
- # @!attribute [rw] parent
68
- # @return [String]
69
- # Required. The unique name of the instance in which to create the table.
70
- # Values are of the form `projects/{project}/instances/{instance}`.
71
- # @!attribute [rw] table_id
72
- # @return [String]
73
- # Required. The name by which the new table should be referred to within the
74
- # parent instance, e.g., `foobar` rather than `{parent}/tables/foobar`.
75
- # @!attribute [rw] source_snapshot
76
- # @return [String]
77
- # Required. The unique name of the snapshot from which to restore the table.
78
- # The snapshot and the table must be in the same instance. Values are of the
79
- # form
80
- # `projects/{project}/instances/{instance}/clusters/{cluster}/snapshots/{snapshot}`.
81
- class CreateTableFromSnapshotRequest; end
82
-
83
- # Request message for
84
- # {Google::Bigtable::Admin::V2::BigtableTableAdmin::DropRowRange}
85
- # @!attribute [rw] name
86
- # @return [String]
87
- # Required. The unique name of the table on which to drop a range of rows.
88
- # Values are of the form
89
- # `projects/{project}/instances/{instance}/tables/{table}`.
90
- # @!attribute [rw] row_key_prefix
91
- # @return [String]
92
- # Delete all rows that start with this row key prefix. Prefix cannot be
93
- # zero length.
94
- # @!attribute [rw] delete_all_data_from_table
95
- # @return [true, false]
96
- # Delete all rows in the table. Setting this to false is a no-op.
97
- class DropRowRangeRequest; end
98
-
99
- # Request message for
100
- # {Google::Bigtable::Admin::V2::BigtableTableAdmin::ListTables}
101
- # @!attribute [rw] parent
102
- # @return [String]
103
- # Required. The unique name of the instance for which tables should be
104
- # listed. Values are of the form `projects/{project}/instances/{instance}`.
105
- # @!attribute [rw] view
106
- # @return [Google::Bigtable::Admin::V2::Table::View]
107
- # The view to be applied to the returned tables' fields.
108
- # Only NAME_ONLY view (default) and REPLICATION_VIEW are supported.
109
- # @!attribute [rw] page_size
110
- # @return [Integer]
111
- # Maximum number of results per page.
112
- #
113
- # A page_size of zero lets the server choose the number of items to return.
114
- # A page_size which is strictly positive will return at most that many items.
115
- # A negative page_size will cause an error.
116
- #
117
- # Following the first request, subsequent paginated calls are not required
118
- # to pass a page_size. If a page_size is set in subsequent calls, it must
119
- # match the page_size given in the first request.
120
- # @!attribute [rw] page_token
121
- # @return [String]
122
- # The value of `next_page_token` returned by a previous call.
123
- class ListTablesRequest; end
124
-
125
- # Response message for
126
- # {Google::Bigtable::Admin::V2::BigtableTableAdmin::ListTables}
127
- # @!attribute [rw] tables
128
- # @return [Array<Google::Bigtable::Admin::V2::Table>]
129
- # The tables present in the requested instance.
130
- # @!attribute [rw] next_page_token
131
- # @return [String]
132
- # Set if not all tables could be returned in a single response.
133
- # Pass this value to `page_token` in another request to get the next
134
- # page of results.
135
- class ListTablesResponse; end
136
-
137
- # Request message for
138
- # {Google::Bigtable::Admin::V2::BigtableTableAdmin::GetTable}
139
- # @!attribute [rw] name
140
- # @return [String]
141
- # Required. The unique name of the requested table.
142
- # Values are of the form
143
- # `projects/{project}/instances/{instance}/tables/{table}`.
144
- # @!attribute [rw] view
145
- # @return [Google::Bigtable::Admin::V2::Table::View]
146
- # The view to be applied to the returned table's fields.
147
- # Defaults to `SCHEMA_VIEW` if unspecified.
148
- class GetTableRequest; end
149
-
150
- # Request message for
151
- # {Google::Bigtable::Admin::V2::BigtableTableAdmin::DeleteTable}
152
- # @!attribute [rw] name
153
- # @return [String]
154
- # Required. The unique name of the table to be deleted.
155
- # Values are of the form
156
- # `projects/{project}/instances/{instance}/tables/{table}`.
157
- class DeleteTableRequest; end
158
-
159
- # Request message for
160
- # {Google::Bigtable::Admin::V2::BigtableTableAdmin::ModifyColumnFamilies}
161
- # @!attribute [rw] name
162
- # @return [String]
163
- # Required. The unique name of the table whose families should be modified.
164
- # Values are of the form
165
- # `projects/{project}/instances/{instance}/tables/{table}`.
166
- # @!attribute [rw] modifications
167
- # @return [Array<Google::Bigtable::Admin::V2::ModifyColumnFamiliesRequest::Modification>]
168
- # Required. Modifications to be atomically applied to the specified table's
169
- # families. Entries are applied in order, meaning that earlier modifications
170
- # can be masked by later ones (in the case of repeated updates to the same
171
- # family, for example).
172
- class ModifyColumnFamiliesRequest
173
- # A create, update, or delete of a particular column family.
174
- # @!attribute [rw] id
175
- # @return [String]
176
- # The ID of the column family to be modified.
177
- # @!attribute [rw] create
178
- # @return [Google::Bigtable::Admin::V2::ColumnFamily]
179
- # Create a new column family with the specified schema, or fail if
180
- # one already exists with the given ID.
181
- # @!attribute [rw] update
182
- # @return [Google::Bigtable::Admin::V2::ColumnFamily]
183
- # Update an existing column family to the specified schema, or fail
184
- # if no column family exists with the given ID.
185
- # @!attribute [rw] drop
186
- # @return [true, false]
187
- # Drop (delete) the column family with the given ID, or fail if no such
188
- # family exists.
189
- class Modification; end
190
- end
191
-
192
- # Request message for
193
- # {Google::Bigtable::Admin::V2::BigtableTableAdmin::GenerateConsistencyToken}
194
- # @!attribute [rw] name
195
- # @return [String]
196
- # Required. The unique name of the Table for which to create a consistency
197
- # token. Values are of the form
198
- # `projects/{project}/instances/{instance}/tables/{table}`.
199
- class GenerateConsistencyTokenRequest; end
200
-
201
- # Response message for
202
- # {Google::Bigtable::Admin::V2::BigtableTableAdmin::GenerateConsistencyToken}
203
- # @!attribute [rw] consistency_token
204
- # @return [String]
205
- # The generated consistency token.
206
- class GenerateConsistencyTokenResponse; end
207
-
208
- # Request message for
209
- # {Google::Bigtable::Admin::V2::BigtableTableAdmin::CheckConsistency}
210
- # @!attribute [rw] name
211
- # @return [String]
212
- # Required. The unique name of the Table for which to check replication
213
- # consistency. Values are of the form
214
- # `projects/{project}/instances/{instance}/tables/{table}`.
215
- # @!attribute [rw] consistency_token
216
- # @return [String]
217
- # Required. The token created using GenerateConsistencyToken for the Table.
218
- class CheckConsistencyRequest; end
219
-
220
- # Response message for
221
- # {Google::Bigtable::Admin::V2::BigtableTableAdmin::CheckConsistency}
222
- # @!attribute [rw] consistent
223
- # @return [true, false]
224
- # True only if the token is consistent. A token is consistent if replication
225
- # has caught up with the restrictions specified in the request.
226
- class CheckConsistencyResponse; end
227
-
228
- # Request message for
229
- # {Google::Bigtable::Admin::V2::BigtableTableAdmin::SnapshotTable}
230
- #
231
- # Note: This is a private alpha release of Cloud Bigtable snapshots. This
232
- # feature is not currently available to most Cloud Bigtable customers. This
233
- # feature might be changed in backward-incompatible ways and is not recommended
234
- # for production use. It is not subject to any SLA or deprecation policy.
235
- # @!attribute [rw] name
236
- # @return [String]
237
- # Required. The unique name of the table to have the snapshot taken.
238
- # Values are of the form
239
- # `projects/{project}/instances/{instance}/tables/{table}`.
240
- # @!attribute [rw] cluster
241
- # @return [String]
242
- # Required. The name of the cluster where the snapshot will be created in.
243
- # Values are of the form
244
- # `projects/{project}/instances/{instance}/clusters/{cluster}`.
245
- # @!attribute [rw] snapshot_id
246
- # @return [String]
247
- # Required. The ID by which the new snapshot should be referred to within the
248
- # parent cluster, e.g., `mysnapshot` of the form:
249
- # `[_a-zA-Z0-9][-_.a-zA-Z0-9]*` rather than
250
- # `projects/{project}/instances/{instance}/clusters/{cluster}/snapshots/mysnapshot`.
251
- # @!attribute [rw] ttl
252
- # @return [Google::Protobuf::Duration]
253
- # The amount of time that the new snapshot can stay active after it is
254
- # created. Once 'ttl' expires, the snapshot will get deleted. The maximum
255
- # amount of time a snapshot can stay active is 7 days. If 'ttl' is not
256
- # specified, the default value of 24 hours will be used.
257
- # @!attribute [rw] description
258
- # @return [String]
259
- # Description of the snapshot.
260
- class SnapshotTableRequest; end
261
-
262
- # Request message for
263
- # {Google::Bigtable::Admin::V2::BigtableTableAdmin::GetSnapshot}
264
- #
265
- # Note: This is a private alpha release of Cloud Bigtable snapshots. This
266
- # feature is not currently available to most Cloud Bigtable customers. This
267
- # feature might be changed in backward-incompatible ways and is not recommended
268
- # for production use. It is not subject to any SLA or deprecation policy.
269
- # @!attribute [rw] name
270
- # @return [String]
271
- # Required. The unique name of the requested snapshot.
272
- # Values are of the form
273
- # `projects/{project}/instances/{instance}/clusters/{cluster}/snapshots/{snapshot}`.
274
- class GetSnapshotRequest; end
275
-
276
- # Request message for
277
- # {Google::Bigtable::Admin::V2::BigtableTableAdmin::ListSnapshots}
278
- #
279
- # Note: This is a private alpha release of Cloud Bigtable snapshots. This
280
- # feature is not currently available to most Cloud Bigtable customers. This
281
- # feature might be changed in backward-incompatible ways and is not recommended
282
- # for production use. It is not subject to any SLA or deprecation policy.
283
- # @!attribute [rw] parent
284
- # @return [String]
285
- # Required. The unique name of the cluster for which snapshots should be
286
- # listed. Values are of the form
287
- # `projects/{project}/instances/{instance}/clusters/{cluster}`.
288
- # Use `{cluster} = '-'` to list snapshots for all clusters in an instance,
289
- # e.g., `projects/{project}/instances/{instance}/clusters/-`.
290
- # @!attribute [rw] page_size
291
- # @return [Integer]
292
- # The maximum number of snapshots to return per page.
293
- # CURRENTLY UNIMPLEMENTED AND IGNORED.
294
- # @!attribute [rw] page_token
295
- # @return [String]
296
- # The value of `next_page_token` returned by a previous call.
297
- class ListSnapshotsRequest; end
298
-
299
- # Response message for
300
- # {Google::Bigtable::Admin::V2::BigtableTableAdmin::ListSnapshots}
301
- #
302
- # Note: This is a private alpha release of Cloud Bigtable snapshots. This
303
- # feature is not currently available to most Cloud Bigtable customers. This
304
- # feature might be changed in backward-incompatible ways and is not recommended
305
- # for production use. It is not subject to any SLA or deprecation policy.
306
- # @!attribute [rw] snapshots
307
- # @return [Array<Google::Bigtable::Admin::V2::Snapshot>]
308
- # The snapshots present in the requested cluster.
309
- # @!attribute [rw] next_page_token
310
- # @return [String]
311
- # Set if not all snapshots could be returned in a single response.
312
- # Pass this value to `page_token` in another request to get the next
313
- # page of results.
314
- class ListSnapshotsResponse; end
315
-
316
- # Request message for
317
- # {Google::Bigtable::Admin::V2::BigtableTableAdmin::DeleteSnapshot}
318
- #
319
- # Note: This is a private alpha release of Cloud Bigtable snapshots. This
320
- # feature is not currently available to most Cloud Bigtable customers. This
321
- # feature might be changed in backward-incompatible ways and is not recommended
322
- # for production use. It is not subject to any SLA or deprecation policy.
323
- # @!attribute [rw] name
324
- # @return [String]
325
- # Required. The unique name of the snapshot to be deleted.
326
- # Values are of the form
327
- # `projects/{project}/instances/{instance}/clusters/{cluster}/snapshots/{snapshot}`.
328
- class DeleteSnapshotRequest; end
329
-
330
- # The metadata for the Operation returned by SnapshotTable.
331
- #
332
- # Note: This is a private alpha release of Cloud Bigtable snapshots. This
333
- # feature is not currently available to most Cloud Bigtable customers. This
334
- # feature might be changed in backward-incompatible ways and is not recommended
335
- # for production use. It is not subject to any SLA or deprecation policy.
336
- # @!attribute [rw] original_request
337
- # @return [Google::Bigtable::Admin::V2::SnapshotTableRequest]
338
- # The request that prompted the initiation of this SnapshotTable operation.
339
- # @!attribute [rw] request_time
340
- # @return [Google::Protobuf::Timestamp]
341
- # The time at which the original request was received.
342
- # @!attribute [rw] finish_time
343
- # @return [Google::Protobuf::Timestamp]
344
- # The time at which the operation failed or was completed successfully.
345
- class SnapshotTableMetadata; end
346
-
347
- # The metadata for the Operation returned by CreateTableFromSnapshot.
348
- #
349
- # Note: This is a private alpha release of Cloud Bigtable snapshots. This
350
- # feature is not currently available to most Cloud Bigtable customers. This
351
- # feature might be changed in backward-incompatible ways and is not recommended
352
- # for production use. It is not subject to any SLA or deprecation policy.
353
- # @!attribute [rw] original_request
354
- # @return [Google::Bigtable::Admin::V2::CreateTableFromSnapshotRequest]
355
- # The request that prompted the initiation of this CreateTableFromSnapshot
356
- # operation.
357
- # @!attribute [rw] request_time
358
- # @return [Google::Protobuf::Timestamp]
359
- # The time at which the original request was received.
360
- # @!attribute [rw] finish_time
361
- # @return [Google::Protobuf::Timestamp]
362
- # The time at which the operation failed or was completed successfully.
363
- class CreateTableFromSnapshotMetadata; end
364
-
365
- # The request for
366
- # {Google::Bigtable::Admin::V2::BigtableTableAdmin::CreateBackup CreateBackup}.
367
- # @!attribute [rw] parent
368
- # @return [String]
369
- # Required. This must be one of the clusters in the instance in which this
370
- # table is located. The backup will be stored in this cluster. Values are
371
- # of the form `projects/{project}/instances/{instance}/clusters/{cluster}`.
372
- # @!attribute [rw] backup_id
373
- # @return [String]
374
- # Required. The id of the backup to be created. The `backup_id` along with
375
- # the parent `parent` are combined as \\{parent}/backups/\\{backup_id} to create
376
- # the full backup name, of the form:
377
- # `projects/{project}/instances/{instance}/clusters/{cluster}/backups/{backup_id}`.
378
- # This string must be between 1 and 50 characters in length and match the
379
- # regex [_a-zA-Z0-9][-_.a-zA-Z0-9]*.
380
- # @!attribute [rw] backup
381
- # @return [Google::Bigtable::Admin::V2::Backup]
382
- # Required. The backup to create.
383
- class CreateBackupRequest; end
384
-
385
- # Metadata type for the operation returned by
386
- # {Google::Bigtable::Admin::V2::BigtableTableAdmin::CreateBackup CreateBackup}.
387
- # @!attribute [rw] name
388
- # @return [String]
389
- # The name of the backup being created.
390
- # @!attribute [rw] source_table
391
- # @return [String]
392
- # The name of the table the backup is created from.
393
- # @!attribute [rw] start_time
394
- # @return [Google::Protobuf::Timestamp]
395
- # The time at which this operation started.
396
- # @!attribute [rw] end_time
397
- # @return [Google::Protobuf::Timestamp]
398
- # If set, the time at which this operation finished or was cancelled.
399
- class CreateBackupMetadata; end
400
-
401
- # The request for
402
- # {Google::Bigtable::Admin::V2::BigtableTableAdmin::GetBackup GetBackup}.
403
- # @!attribute [rw] name
404
- # @return [String]
405
- # Required. Name of the backup.
406
- # Values are of the form
407
- # `projects/{project}/instances/{instance}/clusters/{cluster}/backups/{backup}`.
408
- class GetBackupRequest; end
409
-
410
- # The request for
411
- # {Google::Bigtable::Admin::V2::BigtableTableAdmin::UpdateBackup UpdateBackup}.
412
- # @!attribute [rw] backup
413
- # @return [Google::Bigtable::Admin::V2::Backup]
414
- # Required. The backup to update. `backup.name`, and the fields to be updated
415
- # as specified by `update_mask` are required. Other fields are ignored.
416
- # Update is only supported for the following fields:
417
- # * `backup.expire_time`.
418
- # @!attribute [rw] update_mask
419
- # @return [Google::Protobuf::FieldMask]
420
- # Required. A mask specifying which fields (e.g. `expire_time`) in the
421
- # Backup resource should be updated. This mask is relative to the Backup
422
- # resource, not to the request message. The field mask must always be
423
- # specified; this prevents any future fields from being erased accidentally
424
- # by clients that do not know about them.
425
- class UpdateBackupRequest; end
426
-
427
- # The request for
428
- # {Google::Bigtable::Admin::V2::BigtableTableAdmin::DeleteBackup DeleteBackup}.
429
- # @!attribute [rw] name
430
- # @return [String]
431
- # Required. Name of the backup to delete.
432
- # Values are of the form
433
- # `projects/{project}/instances/{instance}/clusters/{cluster}/backups/{backup}`.
434
- class DeleteBackupRequest; end
435
-
436
- # The request for
437
- # {Google::Bigtable::Admin::V2::BigtableTableAdmin::ListBackups ListBackups}.
438
- # @!attribute [rw] parent
439
- # @return [String]
440
- # Required. The cluster to list backups from. Values are of the
441
- # form `projects/{project}/instances/{instance}/clusters/{cluster}`.
442
- # Use `{cluster} = '-'` to list backups for all clusters in an instance,
443
- # e.g., `projects/{project}/instances/{instance}/clusters/-`.
444
- # @!attribute [rw] filter
445
- # @return [String]
446
- # A filter expression that filters backups listed in the response.
447
- # The expression must specify the field name, a comparison operator,
448
- # and the value that you want to use for filtering. The value must be a
449
- # string, a number, or a boolean. The comparison operator must be
450
- # <, >, <=, >=, !=, =, or :. Colon ‘:’ represents a HAS operator which is
451
- # roughly synonymous with equality. Filter rules are case insensitive.
452
- #
453
- # The fields eligible for filtering are:
454
- # * `name`
455
- # * `source_table`
456
- # * `state`
457
- # * `start_time` (and values are of the format YYYY-MM-DDTHH:MM:SSZ)
458
- # * `end_time` (and values are of the format YYYY-MM-DDTHH:MM:SSZ)
459
- # * `expire_time` (and values are of the format YYYY-MM-DDTHH:MM:SSZ)
460
- # * `size_bytes`
461
- #
462
- # To filter on multiple expressions, provide each separate expression within
463
- # parentheses. By default, each expression is an AND expression. However,
464
- # you can include AND, OR, and NOT expressions explicitly.
465
- #
466
- # Some examples of using filters are:
467
- #
468
- # * `name:"exact"` --> The backup's name is the string "exact".
469
- # * `name:howl` --> The backup's name contains the string "howl".
470
- # * `source_table:prod`
471
- # --> The source_table's name contains the string "prod".
472
- # * `state:CREATING` --> The backup is pending creation.
473
- # * `state:READY` --> The backup is fully created and ready for use.
474
- # * `(name:howl) AND (start_time < \"2018-03-28T14:50:00Z\")`
475
- # --> The backup name contains the string "howl" and start_time
476
- # of the backup is before 2018-03-28T14:50:00Z.
477
- # * `size_bytes > 10000000000` --> The backup's size is greater than 10GB
478
- # @!attribute [rw] order_by
479
- # @return [String]
480
- # An expression for specifying the sort order of the results of the request.
481
- # The string value should specify one or more fields in
482
- # {Google::Bigtable::Admin::V2::Backup Backup}. The full syntax is described at
483
- # https://aip.dev/132#ordering.
484
- #
485
- # Fields supported are:
486
- # * name
487
- # * source_table
488
- # * expire_time
489
- # * start_time
490
- # * end_time
491
- # * size_bytes
492
- # * state
493
- #
494
- # For example, "start_time". The default sorting order is ascending.
495
- # To specify descending order for the field, a suffix " desc" should
496
- # be appended to the field name. For example, "start_time desc".
497
- # Redundant space characters in the syntax are insigificant.
498
- #
499
- # If order_by is empty, results will be sorted by `start_time` in descending
500
- # order starting from the most recently created backup.
501
- # @!attribute [rw] page_size
502
- # @return [Integer]
503
- # Number of backups to be returned in the response. If 0 or
504
- # less, defaults to the server's maximum allowed page size.
505
- # @!attribute [rw] page_token
506
- # @return [String]
507
- # If non-empty, `page_token` should contain a
508
- # {Google::Bigtable::Admin::V2::ListBackupsResponse#next_page_token next_page_token}
509
- # from a previous
510
- # {Google::Bigtable::Admin::V2::ListBackupsResponse ListBackupsResponse} to the
511
- # same `parent` and with the same `filter`.
512
- class ListBackupsRequest; end
513
-
514
- # The response for
515
- # {Google::Bigtable::Admin::V2::BigtableTableAdmin::ListBackups ListBackups}.
516
- # @!attribute [rw] backups
517
- # @return [Array<Google::Bigtable::Admin::V2::Backup>]
518
- # The list of matching backups.
519
- # @!attribute [rw] next_page_token
520
- # @return [String]
521
- # `next_page_token` can be sent in a subsequent
522
- # {Google::Bigtable::Admin::V2::BigtableTableAdmin::ListBackups ListBackups} call
523
- # to fetch more of the matching backups.
524
- class ListBackupsResponse; end
525
-
526
- # The request for
527
- # {Google::Bigtable::Admin::V2::BigtableTableAdmin::RestoreTable RestoreTable}.
528
- # @!attribute [rw] parent
529
- # @return [String]
530
- # Required. The name of the instance in which to create the restored
531
- # table. This instance must be the parent of the source backup. Values are
532
- # of the form `projects/<project>/instances/<instance>`.
533
- # @!attribute [rw] table_id
534
- # @return [String]
535
- # Required. The id of the table to create and restore to. This
536
- # table must not already exist. The `table_id` appended to
537
- # `parent` forms the full table name of the form
538
- # `projects/<project>/instances/<instance>/tables/<table_id>`.
539
- # @!attribute [rw] backup
540
- # @return [String]
541
- # Name of the backup from which to restore. Values are of the form
542
- # `projects/<project>/instances/<instance>/clusters/<cluster>/backups/<backup>`.
543
- class RestoreTableRequest; end
544
-
545
- # Metadata type for the long-running operation returned by
546
- # {Google::Bigtable::Admin::V2::BigtableTableAdmin::RestoreTable RestoreTable}.
547
- # @!attribute [rw] name
548
- # @return [String]
549
- # Name of the table being created and restored to.
550
- # @!attribute [rw] source_type
551
- # @return [Google::Bigtable::Admin::V2::RestoreSourceType]
552
- # The type of the restore source.
553
- # @!attribute [rw] backup_info
554
- # @return [Google::Bigtable::Admin::V2::BackupInfo]
555
- # @!attribute [rw] optimize_table_operation_name
556
- # @return [String]
557
- # If exists, the name of the long-running operation that will be used to
558
- # track the post-restore optimization process to optimize the performance of
559
- # the restored table. The metadata type of the long-running operation is
560
- # \\{OptimizeRestoreTableMetadata}. The response type is
561
- # {Google::Protobuf::Empty Empty}. This long-running operation may be
562
- # automatically created by the system if applicable after the
563
- # RestoreTable long-running operation completes successfully. This operation
564
- # may not be created if the table is already optimized or the restore was
565
- # not successful.
566
- # @!attribute [rw] progress
567
- # @return [Google::Bigtable::Admin::V2::OperationProgress]
568
- # The progress of the
569
- # {Google::Bigtable::Admin::V2::BigtableTableAdmin::RestoreTable RestoreTable}
570
- # operation.
571
- class RestoreTableMetadata; end
572
-
573
- # Metadata type for the long-running operation used to track the progress
574
- # of optimizations performed on a newly restored table. This long-running
575
- # operation is automatically created by the system after the successful
576
- # completion of a table restore, and cannot be cancelled.
577
- # @!attribute [rw] name
578
- # @return [String]
579
- # Name of the restored table being optimized.
580
- # @!attribute [rw] progress
581
- # @return [Google::Bigtable::Admin::V2::OperationProgress]
582
- # The progress of the post-restore optimizations.
583
- class OptimizeRestoredTableMetadata; end
584
- end
585
- end
586
- end
587
- end