Class: Google::Cloud::Bigtable::V2::ReadRowsResponse

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

Overview

Response message for Bigtable.ReadRows.

Defined Under Namespace

Classes: CellChunk

Instance Attribute Summary collapse

Instance Attribute Details

#chunks::Array<::Google::Cloud::Bigtable::V2::ReadRowsResponse::CellChunk>

Returns A collection of a row's contents as part of the read request.

Returns:



125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
# File 'proto_docs/google/bigtable/v2/bigtable.rb', line 125

class ReadRowsResponse
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Specifies a piece of a row's contents returned as part of the read
  # response stream.
  # @!attribute [rw] row_key
  #   @return [::String]
  #     The row key for this chunk of data.  If the row key is empty,
  #     this CellChunk is a continuation of the same row as the previous
  #     CellChunk in the response stream, even if that CellChunk was in a
  #     previous ReadRowsResponse message.
  # @!attribute [rw] family_name
  #   @return [::Google::Protobuf::StringValue]
  #     The column family name for this chunk of data.  If this message
  #     is not present this CellChunk is a continuation of the same column
  #     family as the previous CellChunk.  The empty string can occur as a
  #     column family name in a response so clients must check
  #     explicitly for the presence of this message, not just for
  #     `family_name.value` being non-empty.
  # @!attribute [rw] qualifier
  #   @return [::Google::Protobuf::BytesValue]
  #     The column qualifier for this chunk of data.  If this message
  #     is not present, this CellChunk is a continuation of the same column
  #     as the previous CellChunk.  Column qualifiers may be empty so
  #     clients must check for the presence of this message, not just
  #     for `qualifier.value` being non-empty.
  # @!attribute [rw] timestamp_micros
  #   @return [::Integer]
  #     The cell's stored timestamp, which also uniquely identifies it
  #     within its column.  Values are always expressed in
  #     microseconds, but individual tables may set a coarser
  #     granularity to further restrict the allowed values. For
  #     example, a table which specifies millisecond granularity will
  #     only allow values of `timestamp_micros` which are multiples of
  #     1000.  Timestamps are only set in the first CellChunk per cell
  #     (for cells split into multiple chunks).
  # @!attribute [rw] labels
  #   @return [::Array<::String>]
  #     Labels applied to the cell by a
  #     {::Google::Cloud::Bigtable::V2::RowFilter RowFilter}.  Labels are only set
  #     on the first CellChunk per cell.
  # @!attribute [rw] value
  #   @return [::String]
  #     The value stored in the cell.  Cell values can be split across
  #     multiple CellChunks.  In that case only the value field will be
  #     set in CellChunks after the first: the timestamp and labels
  #     will only be present in the first CellChunk, even if the first
  #     CellChunk came in a previous ReadRowsResponse.
  # @!attribute [rw] value_size
  #   @return [::Integer]
  #     If this CellChunk is part of a chunked cell value and this is
  #     not the final chunk of that cell, value_size will be set to the
  #     total length of the cell value.  The client can use this size
  #     to pre-allocate memory to hold the full cell value.
  # @!attribute [rw] reset_row
  #   @return [::Boolean]
  #     Indicates that the client should drop all previous chunks for
  #     `row_key`, as it will be re-read from the beginning.
  # @!attribute [rw] commit_row
  #   @return [::Boolean]
  #     Indicates that the client can safely process all previous chunks for
  #     `row_key`, as its data has been fully read.
  class CellChunk
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#last_scanned_row_key::String

Returns Optionally the server might return the row key of the last row it has scanned. The client can use this to construct a more efficient retry request if needed: any row keys or portions of ranges less than this row key can be dropped from the request. This is primarily useful for cases where the server has read a lot of data that was filtered out since the last committed row key, allowing the client to skip that work on a retry.

Returns:

  • (::String)

    Optionally the server might return the row key of the last row it has scanned. The client can use this to construct a more efficient retry request if needed: any row keys or portions of ranges less than this row key can be dropped from the request. This is primarily useful for cases where the server has read a lot of data that was filtered out since the last committed row key, allowing the client to skip that work on a retry.



125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
# File 'proto_docs/google/bigtable/v2/bigtable.rb', line 125

class ReadRowsResponse
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Specifies a piece of a row's contents returned as part of the read
  # response stream.
  # @!attribute [rw] row_key
  #   @return [::String]
  #     The row key for this chunk of data.  If the row key is empty,
  #     this CellChunk is a continuation of the same row as the previous
  #     CellChunk in the response stream, even if that CellChunk was in a
  #     previous ReadRowsResponse message.
  # @!attribute [rw] family_name
  #   @return [::Google::Protobuf::StringValue]
  #     The column family name for this chunk of data.  If this message
  #     is not present this CellChunk is a continuation of the same column
  #     family as the previous CellChunk.  The empty string can occur as a
  #     column family name in a response so clients must check
  #     explicitly for the presence of this message, not just for
  #     `family_name.value` being non-empty.
  # @!attribute [rw] qualifier
  #   @return [::Google::Protobuf::BytesValue]
  #     The column qualifier for this chunk of data.  If this message
  #     is not present, this CellChunk is a continuation of the same column
  #     as the previous CellChunk.  Column qualifiers may be empty so
  #     clients must check for the presence of this message, not just
  #     for `qualifier.value` being non-empty.
  # @!attribute [rw] timestamp_micros
  #   @return [::Integer]
  #     The cell's stored timestamp, which also uniquely identifies it
  #     within its column.  Values are always expressed in
  #     microseconds, but individual tables may set a coarser
  #     granularity to further restrict the allowed values. For
  #     example, a table which specifies millisecond granularity will
  #     only allow values of `timestamp_micros` which are multiples of
  #     1000.  Timestamps are only set in the first CellChunk per cell
  #     (for cells split into multiple chunks).
  # @!attribute [rw] labels
  #   @return [::Array<::String>]
  #     Labels applied to the cell by a
  #     {::Google::Cloud::Bigtable::V2::RowFilter RowFilter}.  Labels are only set
  #     on the first CellChunk per cell.
  # @!attribute [rw] value
  #   @return [::String]
  #     The value stored in the cell.  Cell values can be split across
  #     multiple CellChunks.  In that case only the value field will be
  #     set in CellChunks after the first: the timestamp and labels
  #     will only be present in the first CellChunk, even if the first
  #     CellChunk came in a previous ReadRowsResponse.
  # @!attribute [rw] value_size
  #   @return [::Integer]
  #     If this CellChunk is part of a chunked cell value and this is
  #     not the final chunk of that cell, value_size will be set to the
  #     total length of the cell value.  The client can use this size
  #     to pre-allocate memory to hold the full cell value.
  # @!attribute [rw] reset_row
  #   @return [::Boolean]
  #     Indicates that the client should drop all previous chunks for
  #     `row_key`, as it will be re-read from the beginning.
  # @!attribute [rw] commit_row
  #   @return [::Boolean]
  #     Indicates that the client can safely process all previous chunks for
  #     `row_key`, as its data has been fully read.
  class CellChunk
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#request_stats::Google::Cloud::Bigtable::V2::RequestStats

Returns If requested, provide enhanced query performance statistics. The semantics dictate:

  • request_stats is empty on every (streamed) response, except
  • request_stats has non-empty information after all chunks have been streamed, where the ReadRowsResponse message only contains request_stats.
    • For example, if a read request would have returned an empty response instead a single ReadRowsResponse is streamed with empty chunks and request_stats filled.

Visually, response messages will stream as follows: ... -> {chunks: [...]} -> {chunks: [], request_stats: \{...}} ___________________/ _____________________________/ Primary response Trailer of RequestStats info

Or if the read did not return any values: {chunks: [], request_stats: \{...}} ________________________________/ Trailer of RequestStats info.

Returns:

  • (::Google::Cloud::Bigtable::V2::RequestStats)

    If requested, provide enhanced query performance statistics. The semantics dictate:

    • request_stats is empty on every (streamed) response, except
    • request_stats has non-empty information after all chunks have been streamed, where the ReadRowsResponse message only contains request_stats.
      • For example, if a read request would have returned an empty response instead a single ReadRowsResponse is streamed with empty chunks and request_stats filled.

    Visually, response messages will stream as follows: ... -> {chunks: [...]} -> {chunks: [], request_stats: \{...}} ___________________/ _____________________________/ Primary response Trailer of RequestStats info

    Or if the read did not return any values: {chunks: [], request_stats: \{...}} ________________________________/ Trailer of RequestStats info



125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
# File 'proto_docs/google/bigtable/v2/bigtable.rb', line 125

class ReadRowsResponse
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Specifies a piece of a row's contents returned as part of the read
  # response stream.
  # @!attribute [rw] row_key
  #   @return [::String]
  #     The row key for this chunk of data.  If the row key is empty,
  #     this CellChunk is a continuation of the same row as the previous
  #     CellChunk in the response stream, even if that CellChunk was in a
  #     previous ReadRowsResponse message.
  # @!attribute [rw] family_name
  #   @return [::Google::Protobuf::StringValue]
  #     The column family name for this chunk of data.  If this message
  #     is not present this CellChunk is a continuation of the same column
  #     family as the previous CellChunk.  The empty string can occur as a
  #     column family name in a response so clients must check
  #     explicitly for the presence of this message, not just for
  #     `family_name.value` being non-empty.
  # @!attribute [rw] qualifier
  #   @return [::Google::Protobuf::BytesValue]
  #     The column qualifier for this chunk of data.  If this message
  #     is not present, this CellChunk is a continuation of the same column
  #     as the previous CellChunk.  Column qualifiers may be empty so
  #     clients must check for the presence of this message, not just
  #     for `qualifier.value` being non-empty.
  # @!attribute [rw] timestamp_micros
  #   @return [::Integer]
  #     The cell's stored timestamp, which also uniquely identifies it
  #     within its column.  Values are always expressed in
  #     microseconds, but individual tables may set a coarser
  #     granularity to further restrict the allowed values. For
  #     example, a table which specifies millisecond granularity will
  #     only allow values of `timestamp_micros` which are multiples of
  #     1000.  Timestamps are only set in the first CellChunk per cell
  #     (for cells split into multiple chunks).
  # @!attribute [rw] labels
  #   @return [::Array<::String>]
  #     Labels applied to the cell by a
  #     {::Google::Cloud::Bigtable::V2::RowFilter RowFilter}.  Labels are only set
  #     on the first CellChunk per cell.
  # @!attribute [rw] value
  #   @return [::String]
  #     The value stored in the cell.  Cell values can be split across
  #     multiple CellChunks.  In that case only the value field will be
  #     set in CellChunks after the first: the timestamp and labels
  #     will only be present in the first CellChunk, even if the first
  #     CellChunk came in a previous ReadRowsResponse.
  # @!attribute [rw] value_size
  #   @return [::Integer]
  #     If this CellChunk is part of a chunked cell value and this is
  #     not the final chunk of that cell, value_size will be set to the
  #     total length of the cell value.  The client can use this size
  #     to pre-allocate memory to hold the full cell value.
  # @!attribute [rw] reset_row
  #   @return [::Boolean]
  #     Indicates that the client should drop all previous chunks for
  #     `row_key`, as it will be re-read from the beginning.
  # @!attribute [rw] commit_row
  #   @return [::Boolean]
  #     Indicates that the client can safely process all previous chunks for
  #     `row_key`, as its data has been fully read.
  class CellChunk
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end