google-cloud-bigtable 0.1.3 → 0.2.0
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/.yardopts +1 -0
- data/CHANGELOG.md +8 -0
- data/EMULATOR.md +30 -0
- data/OVERVIEW.md +2 -1
- data/lib/google-cloud-bigtable.rb +28 -22
- data/lib/google/cloud/bigtable.rb +25 -13
- data/lib/google/cloud/bigtable/admin/v2/bigtable_instance_admin_client_config.json +14 -14
- data/lib/google/cloud/bigtable/admin/v2/bigtable_table_admin_client_config.json +5 -5
- data/lib/google/cloud/bigtable/app_profile.rb +14 -14
- data/lib/google/cloud/bigtable/app_profile/list.rb +9 -9
- data/lib/google/cloud/bigtable/chunk_processor.rb +6 -6
- data/lib/google/cloud/bigtable/cluster.rb +5 -5
- data/lib/google/cloud/bigtable/cluster/job.rb +1 -1
- data/lib/google/cloud/bigtable/cluster/list.rb +6 -6
- data/lib/google/cloud/bigtable/column_family.rb +12 -12
- data/lib/google/cloud/bigtable/column_range.rb +8 -8
- data/lib/google/cloud/bigtable/gc_rule.rb +2 -2
- data/lib/google/cloud/bigtable/instance.rb +34 -36
- data/lib/google/cloud/bigtable/instance/cluster_map.rb +5 -5
- data/lib/google/cloud/bigtable/instance/list.rb +9 -9
- data/lib/google/cloud/bigtable/longrunning_job.rb +1 -1
- data/lib/google/cloud/bigtable/mutation_entry.rb +18 -18
- data/lib/google/cloud/bigtable/mutation_operations.rb +25 -23
- data/lib/google/cloud/bigtable/policy.rb +13 -13
- data/lib/google/cloud/bigtable/project.rb +27 -27
- data/lib/google/cloud/bigtable/read_modify_write_rule.rb +6 -6
- data/lib/google/cloud/bigtable/read_operations.rb +13 -13
- data/lib/google/cloud/bigtable/row.rb +7 -7
- data/lib/google/cloud/bigtable/row_filter.rb +58 -58
- data/lib/google/cloud/bigtable/row_filter/chain_filter.rb +40 -41
- data/lib/google/cloud/bigtable/row_filter/condition_filter.rb +6 -6
- data/lib/google/cloud/bigtable/row_filter/interleave_filter.rb +46 -47
- data/lib/google/cloud/bigtable/row_filter/simple_filter.rb +14 -15
- data/lib/google/cloud/bigtable/row_range.rb +16 -16
- data/lib/google/cloud/bigtable/rows_mutator.rb +5 -5
- data/lib/google/cloud/bigtable/rows_reader.rb +8 -9
- data/lib/google/cloud/bigtable/service.rb +153 -141
- data/lib/google/cloud/bigtable/table.rb +23 -23
- data/lib/google/cloud/bigtable/table/cluster_state.rb +2 -2
- data/lib/google/cloud/bigtable/table/column_family_map.rb +5 -5
- data/lib/google/cloud/bigtable/table/list.rb +8 -8
- data/lib/google/cloud/bigtable/value_range.rb +7 -7
- data/lib/google/cloud/bigtable/version.rb +1 -1
- metadata +5 -4
@@ -21,7 +21,7 @@ module Google
|
|
21
21
|
module RowFilter
|
22
22
|
# # ChainFilter
|
23
23
|
#
|
24
|
-
# A RowFilter
|
24
|
+
# A RowFilter that sends rows through several RowFilters in sequence.
|
25
25
|
#
|
26
26
|
# The elements of "filters" are chained together to process the input row:
|
27
27
|
# in row -> f(0) -> intermediate row -> f(1) -> ... -> f(N) -> out row
|
@@ -35,14 +35,14 @@ module Google
|
|
35
35
|
#
|
36
36
|
class ChainFilter
|
37
37
|
# @private
|
38
|
-
#
|
38
|
+
# Creates an instance of a chain filter.
|
39
39
|
def initialize
|
40
40
|
@grpc = Google::Bigtable::V2::RowFilter::Chain.new
|
41
41
|
end
|
42
42
|
|
43
|
-
#
|
43
|
+
# Adds a chain filter instance.
|
44
44
|
#
|
45
|
-
# A Chain RowFilter
|
45
|
+
# A Chain RowFilter that sends rows through several RowFilters in sequence.
|
46
46
|
#
|
47
47
|
# The elements of "filters" are chained together to process the input row:
|
48
48
|
# in row -> f(0) -> intermediate row -> f(1) -> ... -> f(N) -> out row
|
@@ -52,7 +52,7 @@ module Google
|
|
52
52
|
# @return [Google::Cloud::Bigtable::RowFilter::ChainFilter]
|
53
53
|
# `self` instance of chain filter.
|
54
54
|
#
|
55
|
-
# @example Create chain filter and add chain filter.
|
55
|
+
# @example Create a chain filter and add a chain filter.
|
56
56
|
#
|
57
57
|
# chain_1 = Google::Cloud::Bigtable::RowFilter.chain
|
58
58
|
#
|
@@ -74,7 +74,7 @@ module Google
|
|
74
74
|
|
75
75
|
# Add interleave filter.
|
76
76
|
#
|
77
|
-
# A RowFilter
|
77
|
+
# A RowFilter that sends each row to each of several component
|
78
78
|
# RowFilters and interleaves the results.
|
79
79
|
#
|
80
80
|
# The elements of "filters" all process a copy of the input row, and the
|
@@ -125,17 +125,17 @@ module Google
|
|
125
125
|
add(filter)
|
126
126
|
end
|
127
127
|
|
128
|
-
#
|
128
|
+
# Adds a condition filter instance.
|
129
129
|
#
|
130
|
-
# A RowFilter
|
130
|
+
# A RowFilter that evaluates one of two possible RowFilters, depending on
|
131
131
|
# whether or not a predicate RowFilter outputs any cells from the input row.
|
132
132
|
#
|
133
133
|
# IMPORTANT NOTE: The predicate filter does not execute atomically with the
|
134
134
|
# true and false filters, which may lead to inconsistent or unexpected
|
135
|
-
# results. Additionally,
|
135
|
+
# results. Additionally, condition filters have poor performance, especially
|
136
136
|
# when filters are set for the false condition.
|
137
137
|
#
|
138
|
-
# Cannot be used within the `predicate_filter`, `true_filter`, or `false_filter
|
138
|
+
# Cannot be used within the `predicate_filter`, `true_filter`, or `false_filter`.
|
139
139
|
#
|
140
140
|
# @param filter [Google::Cloud::Bigtable::RowFilter::ConditionFilter]
|
141
141
|
# @return [Google::Cloud::Bigtable::RowFilter::ChainFilter]
|
@@ -159,7 +159,7 @@ module Google
|
|
159
159
|
add(filter)
|
160
160
|
end
|
161
161
|
|
162
|
-
#
|
162
|
+
# Adds a pass filter instance.
|
163
163
|
#
|
164
164
|
# Matches all cells, regardless of input. Functionally equivalent to
|
165
165
|
# leaving `filter` unset, but included for completeness.
|
@@ -175,7 +175,7 @@ module Google
|
|
175
175
|
add(RowFilter.pass)
|
176
176
|
end
|
177
177
|
|
178
|
-
#
|
178
|
+
# Adds a block-all filter instance.
|
179
179
|
#
|
180
180
|
# Does not match any cells, regardless of input. Useful for temporarily
|
181
181
|
# disabling just part of a filter.
|
@@ -191,9 +191,9 @@ module Google
|
|
191
191
|
add(RowFilter.block)
|
192
192
|
end
|
193
193
|
|
194
|
-
#
|
194
|
+
# Adds a sink filter instance.
|
195
195
|
#
|
196
|
-
# Outputs all cells directly to the output of the read rather than to any parent filter
|
196
|
+
# Outputs all cells directly to the output of the read rather than to any parent filter.
|
197
197
|
#
|
198
198
|
# @return [Google::Cloud::Bigtable::RowFilter::ChainFilter]
|
199
199
|
# `self` instance of chain filter.
|
@@ -206,9 +206,9 @@ module Google
|
|
206
206
|
add(RowFilter.sink)
|
207
207
|
end
|
208
208
|
|
209
|
-
#
|
209
|
+
# Adds a strip-value filter instance.
|
210
210
|
#
|
211
|
-
# Replaces each cell's value with
|
211
|
+
# Replaces each cell's value with an empty string.
|
212
212
|
#
|
213
213
|
# @return [Google::Cloud::Bigtable::RowFilter::ChainFilter]
|
214
214
|
# `self` instance of chain filter.
|
@@ -221,7 +221,7 @@ module Google
|
|
221
221
|
add(RowFilter.strip_value)
|
222
222
|
end
|
223
223
|
|
224
|
-
#
|
224
|
+
# Adds a key-filter instance to match keys using a regular expression.
|
225
225
|
#
|
226
226
|
# Matches only cells from rows whose keys satisfy the given RE2 regex. In
|
227
227
|
# other words, passes through the entire row when the key matches, and
|
@@ -246,13 +246,13 @@ module Google
|
|
246
246
|
add(RowFilter.key(regex))
|
247
247
|
end
|
248
248
|
|
249
|
-
#
|
249
|
+
# Adds a sample-probability filter instance.
|
250
250
|
#
|
251
251
|
# Matches all cells from a row with probability p, and matches no cells
|
252
252
|
# from the row with probability 1-p.
|
253
253
|
#
|
254
254
|
# @param probability [Float] Probability value
|
255
|
-
# Probability must be greather then 0 and less then 1.0
|
255
|
+
# Probability must be greather then 0 and less then 1.0.
|
256
256
|
# @return [Google::Cloud::Bigtable::RowFilter::ChainFilter]
|
257
257
|
# `self` instance of chain filter.
|
258
258
|
#
|
@@ -264,7 +264,7 @@ module Google
|
|
264
264
|
add(RowFilter.sample(probability))
|
265
265
|
end
|
266
266
|
|
267
|
-
#
|
267
|
+
# Adds a family-name-match filter using a regular expression.
|
268
268
|
#
|
269
269
|
# Matches only cells from columns whose families satisfy the given RE2
|
270
270
|
# regex. For technical reasons, the regex must not contain the `:`
|
@@ -288,7 +288,7 @@ module Google
|
|
288
288
|
add(RowFilter.family(regex))
|
289
289
|
end
|
290
290
|
|
291
|
-
# Add column
|
291
|
+
# Add a column-qualifier-match filter using a regular expression.
|
292
292
|
#
|
293
293
|
# Matches only cells from columns whose qualifiers satisfy the given RE2
|
294
294
|
# regex.
|
@@ -312,7 +312,7 @@ module Google
|
|
312
312
|
add(RowFilter.qualifier(regex))
|
313
313
|
end
|
314
314
|
|
315
|
-
#
|
315
|
+
# Adds a value-match filter using a regular expression.
|
316
316
|
#
|
317
317
|
# Matches only cells with values that satisfy the given regular expression.
|
318
318
|
# Note that, since cell values can contain arbitrary bytes, the `\C` escape
|
@@ -335,21 +335,20 @@ module Google
|
|
335
335
|
add(RowFilter.value(regex))
|
336
336
|
end
|
337
337
|
|
338
|
-
#
|
338
|
+
# Adds a label filter instance to apply a label based on the result of read rows.
|
339
339
|
#
|
340
340
|
# Applies the given label to all cells in the output row. This allows
|
341
341
|
# the client to determine which results were produced from which part of
|
342
342
|
# the filter.
|
343
343
|
#
|
344
|
-
# Values must be at most 15 characters
|
344
|
+
# Values must be at most 15 characters and match the RE2
|
345
345
|
# pattern `[a-z0-9\\-]+`
|
346
346
|
#
|
347
|
-
# Due to a technical limitation, it is not
|
348
|
-
# multiple labels to a cell. As a result, a
|
349
|
-
# one sub-filter
|
347
|
+
# Due to a technical limitation, it is not possible to apply
|
348
|
+
# multiple labels to a cell. As a result, a chain may have no more than
|
349
|
+
# one sub-filter that contains an `apply_label_transformer`. It is okay for
|
350
350
|
# an Interleave to contain multiple `apply_label_transformers`, as they
|
351
|
-
# will be applied to separate copies of the input.
|
352
|
-
# the future.
|
351
|
+
# will be applied to separate copies of the input.
|
353
352
|
#
|
354
353
|
# @param value [String] Label name
|
355
354
|
# @return [Google::Cloud::Bigtable::RowFilter::ChainFilter]
|
@@ -363,7 +362,7 @@ module Google
|
|
363
362
|
add(RowFilter.label(value))
|
364
363
|
end
|
365
364
|
|
366
|
-
#
|
365
|
+
# Adds a cell-per-row-offset filter instance to skip the first N cells.
|
367
366
|
#
|
368
367
|
# Skips the first N cells of each row, matching all subsequent cells.
|
369
368
|
# If duplicate cells are present, as is possible when using an Interleave,
|
@@ -381,7 +380,7 @@ module Google
|
|
381
380
|
add(RowFilter.cells_per_row_offset(offset))
|
382
381
|
end
|
383
382
|
|
384
|
-
#
|
383
|
+
# Adds a cells-per-row-limit filter instance.
|
385
384
|
#
|
386
385
|
# Matches only the first N cells of each row.
|
387
386
|
# If duplicate cells are present, as is possible when using an Interleave,
|
@@ -399,7 +398,7 @@ module Google
|
|
399
398
|
add(RowFilter.cells_per_row(limit))
|
400
399
|
end
|
401
400
|
|
402
|
-
#
|
401
|
+
# Adds a cells-per-column filter instance.
|
403
402
|
#
|
404
403
|
# Matches only the most recent N cells within each column. For example,
|
405
404
|
# if N=2, this filter would match column `foo:bar` at timestamps 10 and 9,
|
@@ -420,10 +419,10 @@ module Google
|
|
420
419
|
add(RowFilter.cells_per_column(limit))
|
421
420
|
end
|
422
421
|
|
423
|
-
#
|
422
|
+
# Adds a timestamp-range filter instance.
|
424
423
|
#
|
425
424
|
# Matches only cells with timestamps within the given range.
|
426
|
-
#
|
425
|
+
# Specifies a contiguous range of timestamps.
|
427
426
|
#
|
428
427
|
# @param from [Integer] Inclusive lower bound.
|
429
428
|
# If left empty, interpreted as 0.
|
@@ -443,14 +442,14 @@ module Google
|
|
443
442
|
add(RowFilter.timestamp_range(from: from, to: to))
|
444
443
|
end
|
445
444
|
|
446
|
-
#
|
445
|
+
# Adds a value-range filter instance.
|
447
446
|
#
|
448
447
|
# Matches only cells with values that fall within the given range.
|
449
448
|
#
|
450
449
|
# See {Google::Cloud::Bigtable::ValueRange#from} and { Google::Cloud::Bigtable::ValueRange#to} for range
|
451
450
|
# option inclusive/exclusive options
|
452
451
|
#
|
453
|
-
# * The value at which to start the range.If neither field is set, interpreted as
|
452
|
+
# * The value at which to start the range. If neither field is set, interpreted as an empty string, inclusive.
|
454
453
|
# * The value at which to end the range. If neither field is set, interpreted as the infinite string, exclusive.
|
455
454
|
#
|
456
455
|
# @param range [Google::Cloud::Bigtable::ValueRange]
|
@@ -471,7 +470,7 @@ module Google
|
|
471
470
|
add(RowFilter.value_range(range))
|
472
471
|
end
|
473
472
|
|
474
|
-
#
|
473
|
+
# Adds a column-range filter instance.
|
475
474
|
#
|
476
475
|
# Matches only cells from columns within the given range.
|
477
476
|
#
|
@@ -489,7 +488,7 @@ module Google
|
|
489
488
|
add(RowFilter.column_range(range))
|
490
489
|
end
|
491
490
|
|
492
|
-
#
|
491
|
+
# Gets the number of filters in the chain filter.
|
493
492
|
#
|
494
493
|
# @return [Integer]
|
495
494
|
#
|
@@ -502,7 +501,7 @@ module Google
|
|
502
501
|
@grpc.filters.length
|
503
502
|
end
|
504
503
|
|
505
|
-
#
|
504
|
+
# Gets the list of filters.
|
506
505
|
#
|
507
506
|
# @return [Array<Google::Bigtable::V2::RowFilter>]
|
508
507
|
#
|
@@ -512,7 +511,7 @@ module Google
|
|
512
511
|
|
513
512
|
# @private
|
514
513
|
#
|
515
|
-
#
|
514
|
+
# Gets a gRPC object of RowFilter with a chain filter.
|
516
515
|
#
|
517
516
|
# @return [Google::Bigtable::V2::RowFilter]
|
518
517
|
#
|
@@ -524,7 +523,7 @@ module Google
|
|
524
523
|
private
|
525
524
|
|
526
525
|
# @private
|
527
|
-
#
|
526
|
+
# Adds a filter to a chain.
|
528
527
|
#
|
529
528
|
# @param filter [SimpleFilter, ChainFilter, InterleaveFilter, ConditionFilter]
|
530
529
|
#
|
@@ -21,15 +21,15 @@ module Google
|
|
21
21
|
module RowFilter
|
22
22
|
# # ConditionFilter
|
23
23
|
#
|
24
|
-
# A RowFilter
|
24
|
+
# A RowFilter that evaluates one of two possible RowFilters, depending on
|
25
25
|
# whether or not a predicate RowFilter outputs any cells from the input row.
|
26
26
|
#
|
27
27
|
# IMPORTANT NOTE: The predicate filter does not execute atomically with the
|
28
28
|
# true and false filters, which may lead to inconsistent or unexpected
|
29
|
-
# results. Additionally,
|
29
|
+
# results. Additionally, condition filters have poor performance, especially
|
30
30
|
# when filters are set for the false condition.
|
31
31
|
#
|
32
|
-
#
|
32
|
+
# If `predicate_filter` outputs any cells, then `true_filter` will be
|
33
33
|
# evaluated on the input row. Otherwise, `false_filter` will be evaluated.
|
34
34
|
#
|
35
35
|
# @example
|
@@ -42,7 +42,7 @@ module Google
|
|
42
42
|
#
|
43
43
|
class ConditionFilter
|
44
44
|
# @private
|
45
|
-
#
|
45
|
+
# Creates a condition filter instance.
|
46
46
|
#
|
47
47
|
# @param predicate [SimpleFilter, ChainFilter, InterleaveFilter, ConditionFilter]
|
48
48
|
#
|
@@ -51,7 +51,7 @@ module Google
|
|
51
51
|
@grpc.predicate_filter = predicate.to_grpc
|
52
52
|
end
|
53
53
|
|
54
|
-
# Set true filter on predicate
|
54
|
+
# Set a true filter on predicate-filter match.
|
55
55
|
#
|
56
56
|
# The filter to apply to the input row if `predicate_filter` returns any
|
57
57
|
# results. If not provided, no results will be returned in the true case.
|
@@ -95,7 +95,7 @@ module Google
|
|
95
95
|
end
|
96
96
|
|
97
97
|
# @private
|
98
|
-
#
|
98
|
+
# Gets the row-filter gRPC instance.
|
99
99
|
# @return [Google::Bigtable::V2::RowFilter]
|
100
100
|
#
|
101
101
|
def to_grpc
|
@@ -21,7 +21,7 @@ module Google
|
|
21
21
|
module RowFilter
|
22
22
|
# # InterleaveFilter
|
23
23
|
#
|
24
|
-
# A RowFilter
|
24
|
+
# A RowFilter that sends each row to each of several component
|
25
25
|
# RowFilters and interleaves the results.
|
26
26
|
#
|
27
27
|
# The elements of "filters" all process a copy of the input row, and the
|
@@ -50,7 +50,7 @@ module Google
|
|
50
50
|
#
|
51
51
|
# All interleaved filters are executed atomically.
|
52
52
|
#
|
53
|
-
# @example Create interleave filter with simple filter.
|
53
|
+
# @example Create an interleave filter with a simple filter.
|
54
54
|
#
|
55
55
|
# interleave = Google::Cloud::Bigtable::RowFilter.interleave
|
56
56
|
#
|
@@ -61,7 +61,7 @@ module Google
|
|
61
61
|
# # OR
|
62
62
|
# interleave.key("user-*).sink
|
63
63
|
#
|
64
|
-
# @example Create complex interleave filter.
|
64
|
+
# @example Create a complex interleave filter.
|
65
65
|
#
|
66
66
|
# interleave = Google::Cloud::Bigtable::RowFilter.interleave
|
67
67
|
#
|
@@ -76,11 +76,11 @@ module Google
|
|
76
76
|
@grpc = Google::Bigtable::V2::RowFilter::Interleave.new
|
77
77
|
end
|
78
78
|
|
79
|
-
#
|
79
|
+
# Adds a chain filter instance.
|
80
80
|
#
|
81
|
-
# A Chain RowFilter
|
81
|
+
# A Chain RowFilter that sends rows through several RowFilters in sequence.
|
82
82
|
#
|
83
|
-
# See {Google::Cloud::Bigtable::RowFilter::InterleaveFilter}
|
83
|
+
# See {Google::Cloud::Bigtable::RowFilter::InterleaveFilter}.
|
84
84
|
#
|
85
85
|
# The elements of "filters" are chained together to process the input row:
|
86
86
|
# in row -> f(0) -> intermediate row -> f(1) -> ... -> f(N) -> out row
|
@@ -90,7 +90,7 @@ module Google
|
|
90
90
|
# @return [Google::Cloud::Bigtable::RowFilter::InterleaveFilter]
|
91
91
|
# `self` instance of interleave filter.
|
92
92
|
#
|
93
|
-
# @example Create chain filter and add interleave filter.
|
93
|
+
# @example Create a chain filter and add an interleave filter.
|
94
94
|
#
|
95
95
|
# chain = Google::Cloud::Bigtable::RowFilter.chain
|
96
96
|
#
|
@@ -106,9 +106,9 @@ module Google
|
|
106
106
|
add(filter)
|
107
107
|
end
|
108
108
|
|
109
|
-
#
|
109
|
+
# Adds an interleave filter.
|
110
110
|
#
|
111
|
-
# A RowFilter
|
111
|
+
# A RowFilter that sends each row to each of several component
|
112
112
|
# RowFilters and interleaves the results.
|
113
113
|
#
|
114
114
|
# The elements of "filters" all process a copy of the input row, and the
|
@@ -141,11 +141,11 @@ module Google
|
|
141
141
|
# @return [Google::Cloud::Bigtable::RowFilter::InterleaveFilter]
|
142
142
|
# `self` instance of interleave filter.
|
143
143
|
#
|
144
|
-
# @example Add interleave filter to chain filter
|
144
|
+
# @example Add an interleave filter to a chain filter.
|
145
145
|
#
|
146
146
|
# interleave = Google::Cloud::Bigtable::RowFilter.interleave
|
147
147
|
#
|
148
|
-
# # Add filters to interleave filter
|
148
|
+
# # Add filters to an interleave filter.
|
149
149
|
# interleave.key("user-*").cells_per_column(3)
|
150
150
|
#
|
151
151
|
# filter = Google::Cloud::Bigtable::RowFilter.interleave.interleave(interleave)
|
@@ -157,17 +157,17 @@ module Google
|
|
157
157
|
add(filter)
|
158
158
|
end
|
159
159
|
|
160
|
-
#
|
160
|
+
# Adds a condition filter instance.
|
161
161
|
#
|
162
|
-
# A RowFilter
|
162
|
+
# A RowFilter that evaluates one of two possible RowFilters, depending on
|
163
163
|
# whether or not a predicate RowFilter outputs any cells from the input row.
|
164
164
|
#
|
165
165
|
# IMPORTANT NOTE: The predicate filter does not execute atomically with the
|
166
166
|
# true and false filters, which may lead to inconsistent or unexpected
|
167
|
-
# results. Additionally,
|
167
|
+
# results. Additionally, condition filters have poor performance, especially
|
168
168
|
# when filters are set for the false condition.
|
169
169
|
#
|
170
|
-
# Cannot be used within the `predicate_filter`, `true_filter`, or `false_filter
|
170
|
+
# Cannot be used within the `predicate_filter`, `true_filter`, or `false_filter`.
|
171
171
|
#
|
172
172
|
# @param filter [Google::Cloud::Bigtable::RowFilter::ConditionFilter]
|
173
173
|
# @return [Google::Cloud::Bigtable::RowFilter::InterleaveFilter]
|
@@ -191,7 +191,7 @@ module Google
|
|
191
191
|
add(filter)
|
192
192
|
end
|
193
193
|
|
194
|
-
#
|
194
|
+
# Adds a pass filter instance.
|
195
195
|
#
|
196
196
|
# Matches all cells, regardless of input. Functionally equivalent to
|
197
197
|
# leaving `filter` unset, but included for completeness.
|
@@ -207,7 +207,7 @@ module Google
|
|
207
207
|
add(RowFilter.pass)
|
208
208
|
end
|
209
209
|
|
210
|
-
#
|
210
|
+
# Adds a block-all filter instance.
|
211
211
|
#
|
212
212
|
# Does not match any cells, regardless of input. Useful for temporarily
|
213
213
|
# disabling just part of a filter.
|
@@ -223,9 +223,9 @@ module Google
|
|
223
223
|
add(RowFilter.block)
|
224
224
|
end
|
225
225
|
|
226
|
-
#
|
226
|
+
# Adds a sink filter instance.
|
227
227
|
#
|
228
|
-
# Outputs all cells directly to the output of the read rather than to any parent filter
|
228
|
+
# Outputs all cells directly to the output of the read rather than to any parent filter.
|
229
229
|
#
|
230
230
|
# @return [Google::Cloud::Bigtable::RowFilter::InterleaveFilter]
|
231
231
|
# `self` instance of interleave filter.
|
@@ -238,9 +238,9 @@ module Google
|
|
238
238
|
add(RowFilter.sink)
|
239
239
|
end
|
240
240
|
|
241
|
-
#
|
241
|
+
# Adds a strip-value filter instance.
|
242
242
|
#
|
243
|
-
# Replaces each cell's value with
|
243
|
+
# Replaces each cell's value with an empty string.
|
244
244
|
#
|
245
245
|
# @return [Google::Cloud::Bigtable::RowFilter::InterleaveFilter]
|
246
246
|
# `self` instance of interleave filter.
|
@@ -253,7 +253,7 @@ module Google
|
|
253
253
|
add(RowFilter.strip_value)
|
254
254
|
end
|
255
255
|
|
256
|
-
#
|
256
|
+
# Adds a row-key filter instance to match key using a regular expression.
|
257
257
|
#
|
258
258
|
# Matches only cells from rows whose keys satisfy the given RE2 regex. In
|
259
259
|
# other words, passes through the entire row when the key matches, and
|
@@ -278,7 +278,7 @@ module Google
|
|
278
278
|
add(RowFilter.key(regex))
|
279
279
|
end
|
280
280
|
|
281
|
-
#
|
281
|
+
# Adds a sample-probability filter instance.
|
282
282
|
#
|
283
283
|
# Matches all cells from a row with probability p, and matches no cells
|
284
284
|
# from the row with probability 1-p.
|
@@ -296,7 +296,7 @@ module Google
|
|
296
296
|
add(RowFilter.sample(probability))
|
297
297
|
end
|
298
298
|
|
299
|
-
#
|
299
|
+
# Adds a family-name-match filter using a regular expression.
|
300
300
|
#
|
301
301
|
# Matches only cells from columns whose families satisfy the given RE2
|
302
302
|
# regex. For technical reasons, the regex must not contain the `:`
|
@@ -320,7 +320,7 @@ module Google
|
|
320
320
|
add(RowFilter.family(regex))
|
321
321
|
end
|
322
322
|
|
323
|
-
#
|
323
|
+
# Adds a column-qualifier-match filter using a regular expression.
|
324
324
|
#
|
325
325
|
# Matches only cells from columns whose qualifiers satisfy the given RE2
|
326
326
|
# regex.
|
@@ -344,7 +344,7 @@ module Google
|
|
344
344
|
add(RowFilter.qualifier(regex))
|
345
345
|
end
|
346
346
|
|
347
|
-
#
|
347
|
+
# Adds a value-match filter using a regular expression.
|
348
348
|
#
|
349
349
|
# Matches only cells with values that satisfy the given regular expression.
|
350
350
|
# Note that, since cell values can contain arbitrary bytes, the `\C` escape
|
@@ -367,7 +367,7 @@ module Google
|
|
367
367
|
add(RowFilter.value(regex))
|
368
368
|
end
|
369
369
|
|
370
|
-
#
|
370
|
+
# Adds a label filter instance to apply a label based on the result of read rows.
|
371
371
|
#
|
372
372
|
# Applies the given label to all cells in the output row. This allows
|
373
373
|
# the client to determine which results were produced from which part of
|
@@ -376,12 +376,11 @@ module Google
|
|
376
376
|
# Values must be at most 15 characters in length, and match the RE2
|
377
377
|
# pattern `[a-z0-9\\-]+`
|
378
378
|
#
|
379
|
-
# Due to a technical limitation, it is not
|
379
|
+
# Due to a technical limitation, it is not possible to apply
|
380
380
|
# multiple labels to a cell. As a result, a Chain may have no more than
|
381
381
|
# one sub-filter which contains a `apply_label_transformer`. It is okay for
|
382
382
|
# an Interleave to contain multiple `apply_label_transformers`, as they
|
383
|
-
# will be applied to separate copies of the input.
|
384
|
-
# the future.
|
383
|
+
# will be applied to separate copies of the input.
|
385
384
|
#
|
386
385
|
# @param value [String] Label name
|
387
386
|
# @return [Google::Cloud::Bigtable::RowFilter::InterleaveFilter]
|
@@ -395,10 +394,10 @@ module Google
|
|
395
394
|
add(RowFilter.label(value))
|
396
395
|
end
|
397
396
|
|
398
|
-
#
|
397
|
+
# Adds a cell-per-row-offset filter instance to skip the first N cells.
|
399
398
|
#
|
400
399
|
# Skips the first N cells of each row, matching all subsequent cells.
|
401
|
-
# If duplicate cells are present, as is possible when using an
|
400
|
+
# If duplicate cells are present, as is possible when using an interleave,
|
402
401
|
# each copy of the cell is counted separately.
|
403
402
|
#
|
404
403
|
# @param offset [Integer] Offset value.
|
@@ -413,10 +412,10 @@ module Google
|
|
413
412
|
add(RowFilter.cells_per_row_offset(offset))
|
414
413
|
end
|
415
414
|
|
416
|
-
#
|
415
|
+
# Adds a cells-per-row-limit filter instance.
|
417
416
|
#
|
418
417
|
# Matches only the first N cells of each row.
|
419
|
-
# If duplicate cells are present, as is possible when using an
|
418
|
+
# If duplicate cells are present, as is possible when using an interleave,
|
420
419
|
# each copy of the cell is counted separately.
|
421
420
|
#
|
422
421
|
# @param limit [String] Max cell match per row limit
|
@@ -431,13 +430,13 @@ module Google
|
|
431
430
|
add(RowFilter.cells_per_row(limit))
|
432
431
|
end
|
433
432
|
|
434
|
-
#
|
433
|
+
# Adds a cells-per-column filter instance.
|
435
434
|
#
|
436
435
|
# Matches only the most recent N cells within each column. For example,
|
437
436
|
# if N=2, this filter would match column `foo:bar` at timestamps 10 and 9,
|
438
437
|
# skip all earlier cells in `foo:bar`, and then begin matching again in
|
439
438
|
# column `foo:bar2`.
|
440
|
-
# If duplicate cells are present, as is possible when using an
|
439
|
+
# If duplicate cells are present, as is possible when using an interleave,
|
441
440
|
# each copy of the cell is counted separately.
|
442
441
|
#
|
443
442
|
# @param limit [String] Max cell match per column limit
|
@@ -452,10 +451,10 @@ module Google
|
|
452
451
|
add(RowFilter.cells_per_column(limit))
|
453
452
|
end
|
454
453
|
|
455
|
-
#
|
454
|
+
# Adds a timestamp-range filter instance.
|
456
455
|
#
|
457
456
|
# Matches only cells with timestamps within the given range.
|
458
|
-
#
|
457
|
+
# Specifies a contiguous range of timestamps.
|
459
458
|
#
|
460
459
|
# @param from [Integer] Inclusive lower bound.
|
461
460
|
# If left empty, interpreted as 0.
|
@@ -475,15 +474,15 @@ module Google
|
|
475
474
|
add(RowFilter.timestamp_range(from: from, to: to))
|
476
475
|
end
|
477
476
|
|
478
|
-
#
|
477
|
+
# Adds a value-range filter instance.
|
479
478
|
#
|
480
479
|
# Matches only cells with values that fall within the given range.
|
481
480
|
#
|
482
481
|
# See {Google::Cloud::Bigtable::ValueRange#from} and { Google::Cloud::Bigtable::ValueRange#to} for range
|
483
|
-
# option inclusive/exclusive options
|
482
|
+
# option inclusive/exclusive options.
|
484
483
|
#
|
485
|
-
# * The value at which to start the range.If neither field is set, interpreted as
|
486
|
-
# * The value at which to end the range. If neither field is set, interpreted as
|
484
|
+
# * The value at which to start the range. If neither field is set, interpreted as an empty string, inclusive.
|
485
|
+
# * The value at which to end the range. If neither field is set, interpreted as an infinite string, exclusive.
|
487
486
|
#
|
488
487
|
# @param range [Google::Cloud::Bigtable::ValueRange]
|
489
488
|
# @return [Google::Cloud::Bigtable::RowFilter::InterleaveFilter]
|
@@ -503,7 +502,7 @@ module Google
|
|
503
502
|
add(RowFilter.value_range(range))
|
504
503
|
end
|
505
504
|
|
506
|
-
#
|
505
|
+
# Adds a column-range filter instance.
|
507
506
|
#
|
508
507
|
# Matches only cells from columns within the given range.
|
509
508
|
#
|
@@ -521,7 +520,7 @@ module Google
|
|
521
520
|
add(RowFilter.column_range(range))
|
522
521
|
end
|
523
522
|
|
524
|
-
#
|
523
|
+
# Gets the number of filters in chain filters.
|
525
524
|
#
|
526
525
|
# @return [Integer]
|
527
526
|
#
|
@@ -534,7 +533,7 @@ module Google
|
|
534
533
|
@grpc.filters.length
|
535
534
|
end
|
536
535
|
|
537
|
-
#
|
536
|
+
# Gets a list of filters.
|
538
537
|
#
|
539
538
|
# @return [Array<Google::Bigtable::V2::RowFilter>]
|
540
539
|
#
|
@@ -544,7 +543,7 @@ module Google
|
|
544
543
|
|
545
544
|
# @private
|
546
545
|
#
|
547
|
-
#
|
546
|
+
# Gets a gRPC object of RowFilter with interleave filter.
|
548
547
|
#
|
549
548
|
# @return [Google::Bigtable::V2::RowFilter]
|
550
549
|
#
|
@@ -555,7 +554,7 @@ module Google
|
|
555
554
|
private
|
556
555
|
|
557
556
|
# @private
|
558
|
-
#
|
557
|
+
# Adds a filter to an interleave filter.
|
559
558
|
#
|
560
559
|
# @param filter [SimpleFilter, ChainFilter, InterleaveFilter, ConditionFilter]
|
561
560
|
#
|