google-cloud-bigtable 2.4.1 → 2.6.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/AUTHENTICATION.md +2 -1
- data/CHANGELOG.md +32 -0
- data/CONTRIBUTING.md +2 -3
- data/OVERVIEW.md +1 -1
- data/lib/google/cloud/bigtable/app_profile.rb +20 -21
- data/lib/google/cloud/bigtable/app_profile/job.rb +4 -4
- data/lib/google/cloud/bigtable/app_profile/list.rb +5 -7
- data/lib/google/cloud/bigtable/backup.rb +83 -32
- data/lib/google/cloud/bigtable/backup/job.rb +8 -8
- data/lib/google/cloud/bigtable/backup/list.rb +9 -11
- data/lib/google/cloud/bigtable/cluster.rb +37 -17
- data/lib/google/cloud/bigtable/cluster/job.rb +2 -2
- data/lib/google/cloud/bigtable/column_family.rb +2 -2
- data/lib/google/cloud/bigtable/column_family_map.rb +14 -14
- data/lib/google/cloud/bigtable/column_range.rb +7 -7
- data/lib/google/cloud/bigtable/encryption_info.rb +118 -0
- data/lib/google/cloud/bigtable/gc_rule.rb +20 -20
- data/lib/google/cloud/bigtable/instance.rb +40 -40
- data/lib/google/cloud/bigtable/instance/cluster_map.rb +61 -21
- data/lib/google/cloud/bigtable/instance/job.rb +4 -4
- data/lib/google/cloud/bigtable/mutation_entry.rb +21 -21
- data/lib/google/cloud/bigtable/mutation_operations.rb +34 -34
- data/lib/google/cloud/bigtable/policy.rb +4 -4
- data/lib/google/cloud/bigtable/project.rb +15 -15
- data/lib/google/cloud/bigtable/read_operations.rb +31 -31
- data/lib/google/cloud/bigtable/routing_policy.rb +6 -6
- data/lib/google/cloud/bigtable/row_filter.rb +28 -28
- data/lib/google/cloud/bigtable/row_filter/chain_filter.rb +30 -29
- data/lib/google/cloud/bigtable/row_filter/condition_filter.rb +6 -6
- data/lib/google/cloud/bigtable/row_filter/interleave_filter.rb +27 -26
- data/lib/google/cloud/bigtable/row_range.rb +18 -18
- data/lib/google/cloud/bigtable/sample_row_key.rb +1 -1
- data/lib/google/cloud/bigtable/service.rb +6 -3
- data/lib/google/cloud/bigtable/status.rb +2 -2
- data/lib/google/cloud/bigtable/table.rb +66 -43
- data/lib/google/cloud/bigtable/table/cluster_state.rb +43 -9
- data/lib/google/cloud/bigtable/table/list.rb +2 -2
- data/lib/google/cloud/bigtable/table/restore_job.rb +12 -12
- data/lib/google/cloud/bigtable/value_range.rb +18 -18
- data/lib/google/cloud/bigtable/version.rb +1 -1
- metadata +4 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 81a641fcf7c94e068213a96b5ebc6c9694cf87367ca83c9672a70a08620fcfae
|
4
|
+
data.tar.gz: 76079a26712e7c3854cd1b21d519948964465154f7f4fcc779700924e1eb3e3d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6daa16efede84fa797bd7d7b440e3a0cd36eb886611a73e68d2fb6c488a1db1ac81ddad61f8261fcc7e6fb2111a4bcc5e0f5a3d54004cd75f2c46e8e65aa53da
|
7
|
+
data.tar.gz: 0e86c2513212dde4e9732b4437a89af59d75068e954c52c7b821a2e9527fee8429cb1e4ebec422f33f496fb2bebe7eacbd1a0dc919542deb105cd67948f57315
|
data/AUTHENTICATION.md
CHANGED
@@ -95,7 +95,8 @@ client = Google::Cloud::Bigtable.new
|
|
95
95
|
|
96
96
|
### Configuration
|
97
97
|
|
98
|
-
The **Project ID** and **Credentials JSON** can be configured
|
98
|
+
The **Project ID** and the path to the **Credentials JSON** file can be configured
|
99
|
+
instead of placing them in environment variables or providing them as arguments.
|
99
100
|
|
100
101
|
```ruby
|
101
102
|
require "google/cloud/bigtable"
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,37 @@
|
|
1
1
|
# Release History
|
2
2
|
|
3
|
+
### 2.6.2 / 2021-08-02
|
4
|
+
|
5
|
+
#### Documentation
|
6
|
+
|
7
|
+
* Update inline doc samples to match library code style
|
8
|
+
|
9
|
+
### 2.6.1 / 2021-07-08
|
10
|
+
|
11
|
+
#### Documentation
|
12
|
+
|
13
|
+
* Update AUTHENTICATION.md in handwritten packages
|
14
|
+
|
15
|
+
### 2.6.0 / 2021-05-03
|
16
|
+
|
17
|
+
#### Features
|
18
|
+
|
19
|
+
* Add support for Backup restore to different Instance
|
20
|
+
* Add instance to Backup#restore
|
21
|
+
|
22
|
+
### 2.5.0 / 2021-04-20
|
23
|
+
|
24
|
+
#### Features
|
25
|
+
|
26
|
+
* Add CMEK support
|
27
|
+
* Add kms_key to ClusterMap#add
|
28
|
+
* Add Cluster#kms_key
|
29
|
+
* Add EncryptionInfo
|
30
|
+
* Add ClusterState#encryption_infos
|
31
|
+
* Add ENCRYPTION_VIEW support to Table
|
32
|
+
* Update docs in Table::ClusterState
|
33
|
+
* Add Backup#encryption_info
|
34
|
+
|
3
35
|
### 2.4.1 / 2021-04-01
|
4
36
|
|
5
37
|
#### Bug Fixes
|
data/CONTRIBUTING.md
CHANGED
@@ -119,15 +119,14 @@ If you alter an example's title, you may encounter breaking tests.
|
|
119
119
|
### Bigtable Acceptance Tests
|
120
120
|
|
121
121
|
The Bigtable acceptance tests interact with the live service API. Follow the
|
122
|
-
instructions in the {file:AUTHENTICATION.md Authentication
|
122
|
+
instructions in the {file:AUTHENTICATION.md Authentication Guide} for enabling
|
123
123
|
the Bigtable API. Occasionally, some API features may not yet be generally
|
124
124
|
available, making it difficult for some contributors to successfully run the
|
125
125
|
entire acceptance test suite. However, please ensure that you do successfully
|
126
126
|
run acceptance tests for any code areas covered by your pull request.
|
127
127
|
|
128
128
|
To run the acceptance tests, first create and configure a project in the Google
|
129
|
-
Developers Console, as described in the {file:AUTHENTICATION.md Authentication
|
130
|
-
guide}. Be sure to download the JSON KEY file. Make note of the PROJECT_ID and
|
129
|
+
Developers Console, as described in the {file:AUTHENTICATION.md Authentication Guide}. Be sure to download the JSON KEY file. Make note of the PROJECT_ID and
|
131
130
|
the KEYFILE location on your system.
|
132
131
|
|
133
132
|
Before you can run the Bigtable acceptance tests, you must first create indexes
|
data/OVERVIEW.md
CHANGED
@@ -396,5 +396,5 @@ instance.delete
|
|
396
396
|
## Additional information
|
397
397
|
|
398
398
|
Google Bigtable can be configured to use an emulator or to enable gRPC's
|
399
|
-
logging. To learn more, see the {file:EMULATOR.md Emulator guide} and
|
399
|
+
logging. To learn more, see the {file:EMULATOR.md Emulator guide}} and
|
400
400
|
{file:LOGGING.md Logging guide}.
|
@@ -33,9 +33,9 @@ module Google
|
|
33
33
|
#
|
34
34
|
# bigtable = Google::Cloud::Bigtable.new
|
35
35
|
#
|
36
|
-
# instance = bigtable.instance
|
36
|
+
# instance = bigtable.instance "my-instance"
|
37
37
|
#
|
38
|
-
# app_profile = instance.app_profile
|
38
|
+
# app_profile = instance.app_profile "my-app-profile"
|
39
39
|
#
|
40
40
|
# # Update
|
41
41
|
# app_profile.description = "User data instance app profile"
|
@@ -172,8 +172,8 @@ module Google
|
|
172
172
|
# require "google/cloud/bigtable"
|
173
173
|
#
|
174
174
|
# bigtable = Google::Cloud::Bigtable.new
|
175
|
-
# instance = bigtable.instance
|
176
|
-
# app_profile = instance.app_profile
|
175
|
+
# instance = bigtable.instance "my-instance"
|
176
|
+
# app_profile = instance.app_profile "my-app-profile"
|
177
177
|
#
|
178
178
|
# routing_policy = Google::Cloud::Bigtable::AppProfile.multi_cluster_routing
|
179
179
|
# app_profile.routing_policy = routing_policy
|
@@ -182,11 +182,11 @@ module Google
|
|
182
182
|
# require "google/cloud/bigtable"
|
183
183
|
#
|
184
184
|
# bigtable = Google::Cloud::Bigtable.new
|
185
|
-
# instance = bigtable.instance
|
186
|
-
# app_profile = instance.app_profile
|
185
|
+
# instance = bigtable.instance "my-instance"
|
186
|
+
# app_profile = instance.app_profile "my-app-profile"
|
187
187
|
#
|
188
188
|
# routing_policy = Google::Cloud::Bigtable::AppProfile.single_cluster_routing(
|
189
|
-
# "my-
|
189
|
+
# "my-cluster",
|
190
190
|
# allow_transactional_writes: true
|
191
191
|
# )
|
192
192
|
# app_profile.routing_policy = routing_policy
|
@@ -225,7 +225,7 @@ module Google
|
|
225
225
|
#
|
226
226
|
# bigtable = Google::Cloud::Bigtable.new
|
227
227
|
#
|
228
|
-
# instance = bigtable.instance
|
228
|
+
# instance = bigtable.instance "my-instance"
|
229
229
|
#
|
230
230
|
# routing_policy = Google::Cloud::Bigtable::AppProfile.multi_cluster_routing
|
231
231
|
#
|
@@ -253,11 +253,11 @@ module Google
|
|
253
253
|
#
|
254
254
|
# bigtable = Google::Cloud::Bigtable.new
|
255
255
|
#
|
256
|
-
# instance = bigtable.instance
|
256
|
+
# instance = bigtable.instance "my-instance"
|
257
257
|
#
|
258
|
-
# app_profile = instance.app_profile
|
258
|
+
# app_profile = instance.app_profile "my-app-profile"
|
259
259
|
#
|
260
|
-
# app_profile.delete
|
260
|
+
# app_profile.delete ignore_warnings: true # Ignore warnings.
|
261
261
|
#
|
262
262
|
# # OR : Not ignoring warnings
|
263
263
|
# app_profile.delete
|
@@ -281,20 +281,19 @@ module Google
|
|
281
281
|
#
|
282
282
|
# bigtable = Google::Cloud::Bigtable.new
|
283
283
|
#
|
284
|
-
# instance = bigtable.instance
|
284
|
+
# instance = bigtable.instance "my-instance"
|
285
285
|
#
|
286
|
-
# app_profile = instance.app_profile
|
286
|
+
# app_profile = instance.app_profile "my-app-profile"
|
287
287
|
#
|
288
288
|
# app_profile.description = "User data instance app profile"
|
289
|
-
# app_profile.routing_policy =
|
290
|
-
# Google::Cloud::Bigtable::AppProfile.multi_cluster_routing
|
289
|
+
# app_profile.routing_policy = Google::Cloud::Bigtable::AppProfile.multi_cluster_routing
|
291
290
|
#
|
292
291
|
# job = app_profile.save
|
293
292
|
# job.wait_until_done!
|
294
293
|
# if job.error?
|
295
294
|
# puts job.error
|
296
295
|
# else
|
297
|
-
# puts "App profile successfully
|
296
|
+
# puts "App profile successfully updated."
|
298
297
|
# app_profile = job.app_profile
|
299
298
|
# end
|
300
299
|
#
|
@@ -303,8 +302,8 @@ module Google
|
|
303
302
|
#
|
304
303
|
# bigtable = Google::Cloud::Bigtable.new
|
305
304
|
#
|
306
|
-
# instance = bigtable.instance
|
307
|
-
# app_profile = instance.app_profile
|
305
|
+
# instance = bigtable.instance "my-instance"
|
306
|
+
# app_profile = instance.app_profile "my-app-profile"
|
308
307
|
#
|
309
308
|
# app_profile.description = "User data instance app profile"
|
310
309
|
# routing_policy = Google::Cloud::Bigtable::AppProfile.single_cluster_routing(
|
@@ -360,7 +359,7 @@ module Google
|
|
360
359
|
#
|
361
360
|
# bigtable = Google::Cloud::Bigtable.new
|
362
361
|
#
|
363
|
-
# instance = bigtable.instance
|
362
|
+
# instance = bigtable.instance "my-instance"
|
364
363
|
#
|
365
364
|
# routing_policy = Google::Cloud::Bigtable::AppProfile.multi_cluster_routing
|
366
365
|
#
|
@@ -396,10 +395,10 @@ module Google
|
|
396
395
|
#
|
397
396
|
# bigtable = Google::Cloud::Bigtable.new
|
398
397
|
#
|
399
|
-
# instance = bigtable.instance
|
398
|
+
# instance = bigtable.instance "my-instance"
|
400
399
|
#
|
401
400
|
# routing_policy = Google::Cloud::Bigtable::AppProfile.single_cluster_routing(
|
402
|
-
# "my-
|
401
|
+
# "my-cluster",
|
403
402
|
# allow_transactional_writes: true
|
404
403
|
# )
|
405
404
|
#
|
@@ -34,8 +34,8 @@ module Google
|
|
34
34
|
#
|
35
35
|
# bigtable = Google::Cloud::Bigtable.new
|
36
36
|
#
|
37
|
-
# instance = bigtable.instance
|
38
|
-
# app_profile = instance.app_profile
|
37
|
+
# instance = bigtable.instance "my-instance"
|
38
|
+
# app_profile = instance.app_profile "my-app-profile"
|
39
39
|
#
|
40
40
|
# app_profile.description = "User data instance app profile"
|
41
41
|
# routing_policy = Google::Cloud::Bigtable::AppProfile.single_cluster_routing(
|
@@ -71,8 +71,8 @@ module Google
|
|
71
71
|
#
|
72
72
|
# bigtable = Google::Cloud::Bigtable.new
|
73
73
|
#
|
74
|
-
# instance = bigtable.instance
|
75
|
-
# app_profile = instance.app_profile
|
74
|
+
# instance = bigtable.instance "my-instance"
|
75
|
+
# app_profile = instance.app_profile "my-app-profile"
|
76
76
|
#
|
77
77
|
# app_profile.description = "User data instance app profile"
|
78
78
|
# routing_policy = Google::Cloud::Bigtable::AppProfile.single_cluster_routing(
|
@@ -47,7 +47,7 @@ module Google
|
|
47
47
|
#
|
48
48
|
# bigtable = Google::Cloud::Bigtable.new
|
49
49
|
#
|
50
|
-
# instance = bigtable.instance
|
50
|
+
# instance = bigtable.instance "my-instance"
|
51
51
|
# app_profiles = instance.app_profiles
|
52
52
|
#
|
53
53
|
# if app_profiles.next?
|
@@ -68,7 +68,7 @@ module Google
|
|
68
68
|
#
|
69
69
|
# bigtable = Google::Cloud::Bigtable.new
|
70
70
|
#
|
71
|
-
# instance = bigtable.instance
|
71
|
+
# instance = bigtable.instance "my-instance"
|
72
72
|
# app_profiles = instance.app_profiles
|
73
73
|
#
|
74
74
|
# if app_profiles.next?
|
@@ -104,7 +104,7 @@ module Google
|
|
104
104
|
#
|
105
105
|
# bigtable = Google::Cloud::Bigtable.new
|
106
106
|
#
|
107
|
-
# instance = bigtable.instance
|
107
|
+
# instance = bigtable.instance "my-instance"
|
108
108
|
# app_profiles = instance.app_profiles
|
109
109
|
#
|
110
110
|
# instance.app_profiles.all do |app_profile|
|
@@ -116,11 +116,9 @@ module Google
|
|
116
116
|
#
|
117
117
|
# bigtable = Google::Cloud::Bigtable.new
|
118
118
|
#
|
119
|
-
# instance = bigtable.instance
|
119
|
+
# instance = bigtable.instance "my-instance"
|
120
120
|
#
|
121
|
-
# all_app_profile_ids = instance.app_profiles.all.map
|
122
|
-
# app_profile.name
|
123
|
-
# end
|
121
|
+
# all_app_profile_ids = instance.app_profiles.all.map(&:name)
|
124
122
|
#
|
125
123
|
def all &block
|
126
124
|
return enum_for :all unless block_given?
|
@@ -18,10 +18,10 @@
|
|
18
18
|
require "google/cloud/bigtable/backup/job"
|
19
19
|
require "google/cloud/bigtable/backup/list"
|
20
20
|
require "google/cloud/bigtable/convert"
|
21
|
+
require "google/cloud/bigtable/encryption_info"
|
21
22
|
require "google/cloud/bigtable/policy"
|
22
23
|
require "google/cloud/bigtable/table/restore_job"
|
23
24
|
|
24
|
-
|
25
25
|
module Google
|
26
26
|
module Cloud
|
27
27
|
module Bigtable
|
@@ -34,10 +34,10 @@ module Google
|
|
34
34
|
# require "google/cloud/bigtable"
|
35
35
|
#
|
36
36
|
# bigtable = Google::Cloud::Bigtable.new
|
37
|
-
# instance = bigtable.instance
|
38
|
-
# cluster = instance.cluster
|
37
|
+
# instance = bigtable.instance "my-instance"
|
38
|
+
# cluster = instance.cluster "my-cluster"
|
39
39
|
#
|
40
|
-
# backup = cluster.backup
|
40
|
+
# backup = cluster.backup "my-backup"
|
41
41
|
#
|
42
42
|
# # Update
|
43
43
|
# backup.expire_time = Time.now + 60 * 60 * 7
|
@@ -207,6 +207,27 @@ module Google
|
|
207
207
|
state == :READY
|
208
208
|
end
|
209
209
|
|
210
|
+
##
|
211
|
+
# The encryption information for the backup. See also {Instance::ClusterMap#add}.
|
212
|
+
#
|
213
|
+
# @return [Google::Cloud::Bigtable::EncryptionInfo] The encryption information for the backup.
|
214
|
+
#
|
215
|
+
# @example
|
216
|
+
# require "google/cloud/bigtable"
|
217
|
+
#
|
218
|
+
# bigtable = Google::Cloud::Bigtable.new
|
219
|
+
# instance = bigtable.instance "my-instance"
|
220
|
+
# cluster = instance.cluster "my-cluster"
|
221
|
+
#
|
222
|
+
# backup = cluster.backup "my-backup"
|
223
|
+
#
|
224
|
+
# encryption_info = backup.encryption_info
|
225
|
+
# encryption_info.encryption_type #=> :GOOGLE_DEFAULT_ENCRYPTION
|
226
|
+
#
|
227
|
+
def encryption_info
|
228
|
+
EncryptionInfo.from_grpc @grpc.encryption_info
|
229
|
+
end
|
230
|
+
|
210
231
|
##
|
211
232
|
# Gets the [Cloud IAM](https://cloud.google.com/iam/) access control
|
212
233
|
# policy for the backup.
|
@@ -226,10 +247,10 @@ module Google
|
|
226
247
|
# require "google/cloud/bigtable"
|
227
248
|
#
|
228
249
|
# bigtable = Google::Cloud::Bigtable.new
|
229
|
-
# instance = bigtable.instance
|
230
|
-
# cluster = instance.cluster
|
250
|
+
# instance = bigtable.instance "my-instance"
|
251
|
+
# cluster = instance.cluster "my-cluster"
|
231
252
|
#
|
232
|
-
# backup = cluster.backup
|
253
|
+
# backup = cluster.backup "my-backup"
|
233
254
|
#
|
234
255
|
# policy = backup.policy
|
235
256
|
#
|
@@ -237,13 +258,13 @@ module Google
|
|
237
258
|
# require "google/cloud/bigtable"
|
238
259
|
#
|
239
260
|
# bigtable = Google::Cloud::Bigtable.new
|
240
|
-
# instance = bigtable.instance
|
241
|
-
# cluster = instance.cluster
|
261
|
+
# instance = bigtable.instance "my-instance"
|
262
|
+
# cluster = instance.cluster "my-cluster"
|
242
263
|
#
|
243
|
-
# backup = cluster.backup
|
264
|
+
# backup = cluster.backup "my-backup"
|
244
265
|
#
|
245
266
|
# backup.policy do |p|
|
246
|
-
# p.add
|
267
|
+
# p.add "roles/owner", "user:owner@example.com"
|
247
268
|
# end # 2 API calls
|
248
269
|
#
|
249
270
|
def policy
|
@@ -273,14 +294,14 @@ module Google
|
|
273
294
|
# require "google/cloud/bigtable"
|
274
295
|
#
|
275
296
|
# bigtable = Google::Cloud::Bigtable.new
|
276
|
-
# instance = bigtable.instance
|
277
|
-
# cluster = instance.cluster
|
297
|
+
# instance = bigtable.instance "my-instance"
|
298
|
+
# cluster = instance.cluster "my-cluster"
|
278
299
|
#
|
279
|
-
# backup = cluster.backup
|
300
|
+
# backup = cluster.backup "my-backup"
|
280
301
|
#
|
281
302
|
# policy = backup.policy
|
282
|
-
# policy.add
|
283
|
-
# updated_policy = backup.update_policy
|
303
|
+
# policy.add "roles/owner", "user:owner@example.com"
|
304
|
+
# updated_policy = backup.update_policy policy
|
284
305
|
#
|
285
306
|
# puts updated_policy.roles
|
286
307
|
#
|
@@ -309,10 +330,10 @@ module Google
|
|
309
330
|
# require "google/cloud/bigtable"
|
310
331
|
#
|
311
332
|
# bigtable = Google::Cloud::Bigtable.new
|
312
|
-
# instance = bigtable.instance
|
313
|
-
# cluster = instance.cluster
|
333
|
+
# instance = bigtable.instance "my-instance"
|
334
|
+
# cluster = instance.cluster "my-cluster"
|
314
335
|
#
|
315
|
-
# backup = cluster.backup
|
336
|
+
# backup = cluster.backup "my-backup"
|
316
337
|
#
|
317
338
|
# permissions = backup.test_iam_permissions(
|
318
339
|
# "bigtable.backups.delete",
|
@@ -328,9 +349,12 @@ module Google
|
|
328
349
|
end
|
329
350
|
|
330
351
|
##
|
331
|
-
# Creates a new table by restoring from a completed backup.
|
352
|
+
# Creates a new table by restoring data from a completed backup. The new table may be created in an instance
|
353
|
+
# different than that of the backup.
|
332
354
|
#
|
333
355
|
# @param table_id [String] The table ID for the new table. This table must not yet exist. Required.
|
356
|
+
# @param instance [Instance, String] The instance or the ID of the instance for the new table, if different from
|
357
|
+
# the instance of the backup. Optional.
|
334
358
|
#
|
335
359
|
# @return [Google::Cloud::Bigtable::Table::RestoreJob] The job representing the long-running, asynchronous
|
336
360
|
# processing of a backup restore table operation.
|
@@ -339,12 +363,34 @@ module Google
|
|
339
363
|
# require "google/cloud/bigtable"
|
340
364
|
#
|
341
365
|
# bigtable = Google::Cloud::Bigtable.new
|
342
|
-
# instance = bigtable.instance
|
343
|
-
# cluster = instance.cluster
|
366
|
+
# instance = bigtable.instance "my-instance"
|
367
|
+
# cluster = instance.cluster "my-cluster"
|
368
|
+
#
|
369
|
+
# backup = cluster.backup "my-backup"
|
370
|
+
#
|
371
|
+
# job = backup.restore "my-new-table"
|
372
|
+
#
|
373
|
+
# job.wait_until_done!
|
374
|
+
# job.done? #=> true
|
375
|
+
#
|
376
|
+
# if job.error?
|
377
|
+
# status = job.error
|
378
|
+
# else
|
379
|
+
# table = job.table
|
380
|
+
# optimized = job.optimize_table_operation_name
|
381
|
+
# end
|
382
|
+
#
|
383
|
+
# @example Create the table in a different instance.
|
384
|
+
# require "google/cloud/bigtable"
|
385
|
+
#
|
386
|
+
# bigtable = Google::Cloud::Bigtable.new
|
387
|
+
# instance = bigtable.instance "my-instance"
|
388
|
+
# cluster = instance.cluster "my-cluster"
|
344
389
|
#
|
345
|
-
# backup = cluster.backup
|
390
|
+
# backup = cluster.backup "my-backup"
|
346
391
|
#
|
347
|
-
#
|
392
|
+
# table_instance = bigtable.instance "my-other-instance"
|
393
|
+
# job = backup.restore "my-new-table", instance: table_instance
|
348
394
|
#
|
349
395
|
# job.wait_until_done!
|
350
396
|
# job.done? #=> true
|
@@ -356,8 +402,13 @@ module Google
|
|
356
402
|
# optimized = job.optimize_table_operation_name
|
357
403
|
# end
|
358
404
|
#
|
359
|
-
def restore table_id
|
360
|
-
|
405
|
+
def restore table_id, instance: nil
|
406
|
+
table_instance_id = instance.respond_to?(:instance_id) ? instance.instance_id : instance
|
407
|
+
grpc = service.restore_table table_id,
|
408
|
+
instance_id,
|
409
|
+
cluster_id,
|
410
|
+
backup_id,
|
411
|
+
table_instance_id: table_instance_id
|
361
412
|
Table::RestoreJob.from_grpc grpc, service
|
362
413
|
end
|
363
414
|
|
@@ -372,10 +423,10 @@ module Google
|
|
372
423
|
# require "google/cloud/bigtable"
|
373
424
|
#
|
374
425
|
# bigtable = Google::Cloud::Bigtable.new
|
375
|
-
# instance = bigtable.instance
|
376
|
-
# cluster = instance.cluster
|
426
|
+
# instance = bigtable.instance "my-instance"
|
427
|
+
# cluster = instance.cluster "my-cluster"
|
377
428
|
#
|
378
|
-
# backup = cluster.backup
|
429
|
+
# backup = cluster.backup "my-backup"
|
379
430
|
#
|
380
431
|
# # Update
|
381
432
|
# backup.expire_time = Time.now + 60 * 60 * 7
|
@@ -407,10 +458,10 @@ module Google
|
|
407
458
|
# require "google/cloud/bigtable"
|
408
459
|
#
|
409
460
|
# bigtable = Google::Cloud::Bigtable.new
|
410
|
-
# instance = bigtable.instance
|
411
|
-
# cluster = instance.cluster
|
461
|
+
# instance = bigtable.instance "my-instance"
|
462
|
+
# cluster = instance.cluster "my-cluster"
|
412
463
|
#
|
413
|
-
# backup = cluster.backup
|
464
|
+
# backup = cluster.backup "my-backup"
|
414
465
|
#
|
415
466
|
# backup.delete
|
416
467
|
#
|