Row Set
User-friendly container for Google Cloud Bigtable RowSet
class google.cloud.bigtable.row_set.RowRange(start_key=None, end_key=None, start_inclusive=True, end_inclusive=False)
Bases: object
Convenience wrapper of google.bigtable.v2.RowRange
Parameters
start_key (bytes) – (Optional) Start key of the row range. If left empty, will be interpreted as the empty string.
end_key (bytes) – (Optional) End key of the row range. If left empty, will be interpreted as the empty string and range will be unbounded on the high end.
start_inclusive (bool) – (Optional) Whether the
start_key
should be considered inclusive. The default is True (inclusive).end_inclusive (bool) – (Optional) Whether the
end_key
should be considered inclusive. The default is False (exclusive).
get_range_kwargs()
Convert row range object to dict which can be passed to google.bigtable.v2.RowRange add method.
class google.cloud.bigtable.row_set.RowSet()
Bases: object
Convenience wrapper of google.bigtable.v2.RowSet
Useful for creating a set of row keys and row ranges, which can be passed to yield_rows method of class:.Table.yield_rows.
add_row_key(row_key)
Add row key to row_keys list.
For example:
from google.cloud.bigtable import Client
from google.cloud.bigtable.row_set import RowSet
client = Client(admin=True)
instance = client.instance(INSTANCE_ID)
table = instance.table(TABLE_ID)
row_set = RowSet()
row_set.add_row_key(b"row_key_5")
Parameters
row_key (bytes) – The key of a row to read
add_row_range(row_range)
Add row_range to row_ranges list.
For example:
from google.cloud.bigtable import Client
from google.cloud.bigtable.row_set import RowSet
from google.cloud.bigtable.row_set import RowRange
client = Client(admin=True)
instance = client.instance(INSTANCE_ID)
table = instance.table(TABLE_ID)
row_set = RowSet()
row_set.add_row_range(RowRange(start_key=b"row_key_3", end_key=b"row_key_7"))
Parameters
row_range (class:RowRange) – The row range object having start and end key
add_row_range_from_keys(start_key=None, end_key=None, start_inclusive=True, end_inclusive=False)
Add row range to row_ranges list from the row keys
For example:
from google.cloud.bigtable import Client
from google.cloud.bigtable.row_set import RowSet
client = Client(admin=True)
instance = client.instance(INSTANCE_ID)
table = instance.table(TABLE_ID)
row_set = RowSet()
row_set.add_row_range_from_keys(start_key=b"row_key_3", end_key=b"row_key_7")
Parameters
start_key (bytes) – (Optional) Start key of the row range. If left empty, will be interpreted as the empty string.
end_key (bytes) – (Optional) End key of the row range. If left empty, will be interpreted as the empty string and range will be unbounded on the high end.
start_inclusive (bool) – (Optional) Whether the
start_key
should be considered inclusive. The default is True (inclusive).end_inclusive (bool) – (Optional) Whether the
end_key
should be considered inclusive. The default is False (exclusive).
add_row_range_with_prefix(row_key_prefix)
Add row range to row_ranges list that start with the row_key_prefix from the row keys
For example:
from google.cloud.bigtable import Client
from google.cloud.bigtable.row_set import RowSet
client = Client(admin=True)
instance = client.instance(INSTANCE_ID)
table = instance.table(TABLE_ID)
row_set = RowSet()
row_set.add_row_range_with_prefix("row")
Parameters
row_key_prefix (str) – To retrieve all rows that start with this row key prefix. Prefix cannot be zero length.