Class: Google::Cloud::Bigtable::V2::RowFilter::Interleave

Inherits:
Object
  • Object
show all
Extended by:
Protobuf::MessageExts::ClassMethods
Includes:
Protobuf::MessageExts
Defined in:
proto_docs/google/bigtable/v2/data.rb

Overview

A RowFilter which sends each row to each of several component RowFilters and interleaves the results.

Instance Attribute Summary collapse

Instance Attribute Details

#filters::Array<::Google::Cloud::Bigtable::V2::RowFilter>

Returns The elements of "filters" all process a copy of the input row, and the results are pooled, sorted, and combined into a single output row. If multiple cells are produced with the same column and timestamp, they will all appear in the output row in an unspecified mutual order. Consider the following example, with three filters:

                             input row
                                 |
       -----------------------------------------------------
       |                         |                         |
      f(0)                      f(1)                      f(2)
       |                         |                         |
1: foo,bar,10,x             foo,bar,10,z              far,bar,7,a
2: foo,blah,11,z            far,blah,5,x              far,blah,5,x
       |                         |                         |
       -----------------------------------------------------
                                 |
1:                      foo,bar,10,z   // could have switched with #2
2:                      foo,bar,10,x   // could have switched with #1
3:                      foo,blah,11,z
4:                      far,bar,7,a
5:                      far,blah,5,x   // identical to #6
6:                      far,blah,5,x   // identical to #5

All interleaved filters are executed atomically.

Returns:

  • (::Array<::Google::Cloud::Bigtable::V2::RowFilter>)

    The elements of "filters" all process a copy of the input row, and the results are pooled, sorted, and combined into a single output row. If multiple cells are produced with the same column and timestamp, they will all appear in the output row in an unspecified mutual order. Consider the following example, with three filters:

                                 input row
                                     |
           -----------------------------------------------------
           |                         |                         |
          f(0)                      f(1)                      f(2)
           |                         |                         |
    1: foo,bar,10,x             foo,bar,10,z              far,bar,7,a
    2: foo,blah,11,z            far,blah,5,x              far,blah,5,x
           |                         |                         |
           -----------------------------------------------------
                                     |
    1:                      foo,bar,10,z   // could have switched with #2
    2:                      foo,bar,10,x   // could have switched with #1
    3:                      foo,blah,11,z
    4:                      far,bar,7,a
    5:                      far,blah,5,x   // identical to #6
    6:                      far,blah,5,x   // identical to #5
    

    All interleaved filters are executed atomically.



489
490
491
492
# File 'proto_docs/google/bigtable/v2/data.rb', line 489

class Interleave
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods
end