Read Rows Query
class google.cloud.bigtable.data.read_rows_query.ReadRowsQuery(row_keys: Optional[Union[list[str | bytes], str, bytes]] = None, row_ranges: Optional[Union[list[google.cloud.bigtable.data.read_rows_query.RowRange], google.cloud.bigtable.data.read_rows_query.RowRange]] = None, limit: Optional[int] = None, row_filter: Optional[google.cloud.bigtable.data.row_filters.RowFilter] = None)
Bases: object
Class to encapsulate details of a read row request
Parameters
row_keys – row keys to include in the query a query can contain multiple keys, but ranges should be preferred
row_ranges – ranges of rows to include in the query
limit – the maximum number of rows to return. None or 0 means no limit default: None (no limit)
row_filter – a RowFilter to apply to the query
_eq_(other)
RowRanges are equal if they have the same row keys, row ranges, filter and limit, or if they both represent a full scan with the same filter and limit
Parameters
other – the object to compare to
Returns
True if the objects are equal, False otherwise
Return type
add_key(row_key: str | bytes)
Add a row key to this query
A query can contain multiple keys, but ranges should be preferred
Parameters
row_key – a key to add to this query
Raises
ValueError – if an input is not a string or bytes
add_range(row_range: google.cloud.bigtable.data.read_rows_query.RowRange)
Add a range of row keys to this query.
Parameters
row_range – a range of row keys to add to this query
property filter(: google.cloud.bigtable.data.row_filters.RowFilter | [None](https://python.readthedocs.io/en/latest/library/constants.html#None )
Return the RowFilter applied to this query
Returns
the RowFilter applied to this query
Return type
RowFilter | None
property limit(: int | [None](https://python.readthedocs.io/en/latest/library/constants.html#None )
Return the maximum number of rows to return by this query
None or 0 means no limit
Returns
the maximum number of rows to return by this query
Return type
int | None
property row_keys(: list[bytes )
Return the row keys in this query
property row_ranges(: list[google.cloud.bigtable.data.read_rows_query.RowRange )
Return the row ranges in this query
Returns
the row ranges in this query
Return type
list[RowRange]
shard(shard_keys: RowKeySamples)
Split this query into multiple queries that can be evenly distributed across nodes and run in parallel
Parameters
shard_keys – a list of row keys that define the boundaries of segments.
Returns
a ShardedQuery that can be used in sharded_read_rows calls
Return type
ShardedQuery
Raises
AttributeError – if the query contains a limit
class google.cloud.bigtable.data.read_rows_query.RowRange(start_key: Optional[Union[str, bytes]] = None, end_key: Optional[Union[str, bytes]] = None, start_is_inclusive: Optional[bool] = None, end_is_inclusive: Optional[bool] = None)
Bases: object
Represents a range of keys in a ReadRowsQuery
Parameters
start_key – The start key of the range. If empty, the range is unbounded on the left.
end_key – The end key of the range. If empty, the range is unbounded on the right.
start_is_inclusive – Whether the start key is inclusive. If None, the start key is inclusive.
end_is_inclusive – Whether the end key is inclusive. If None, the end key is not inclusive.
Raises
ValueError – if start_key is greater than end_key, or start_is_inclusive
ValueError – if end_is_inclusive is set when the corresponding key is None
ValueError – if start_key or end_key is not a string or bytes.
_bool_()
Empty RowRanges (representing a full table scan) are falsy, because they can be substituted with None. Non-empty RowRanges are truthy.
Returns
True if the RowRange is not empty, False otherwise
Return type
_str_()
Represent range as a string, e.g. “[b’a’, b’z)”
Unbounded start or end keys are represented as “-inf” or “+inf”
Returns
The string representation of the range
Return type
property end_is_inclusive(: [bool](https://python.readthedocs.io/en/latest/library/functions.html#bool )
Indicates if the range is inclusive of the end key.
If the range is unbounded on the right, this will return True.
Returns
Whether the range is inclusive of the end key.
Return type
property end_key(: bytes | [None](https://python.readthedocs.io/en/latest/library/constants.html#None )
Returns the end key of the range. If None, the range is unbounded on the right.
Returns
The end key of the range, or None if the range is unbounded on the right.
Return type
bytes | None
property start_is_inclusive(: [bool](https://python.readthedocs.io/en/latest/library/functions.html#bool )
Indicates if the range is inclusive of the start key.
If the range is unbounded on the left, this will return True.
Returns
Whether the range is inclusive of the start key.
Return type
property start_key(: bytes | [None](https://python.readthedocs.io/en/latest/library/constants.html#None )
Returns the start key of the range. If None, the range is unbounded on the left.