-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
BigTable: On read_row(), provide default to retrieve only most recent cell values #4468
Comments
Thanks for filing @zakons!
/cc @garye |
@dhermes, @garye is less work on the client-side these days. I am working with other developers across all languages for Cloud Bigtable. |
Thanks.
Appreciate the quick feedback. |
Note that the cell_value(column_family_id, column, index=0) method returns an immutable value, so the underlying Cell's, which are mutable, are not exposed to the user. Also, add a cell_values(column_family_id, column) iterator or generator method to row_data (PartialRowData) which will provide an iteration over all the cell values, returning index, timestamp, value for each iteration - each of which are immutable. The first index in the iteration would be 0, or most recent value. |
Sure. Go ahead and discuss? I am 100% for dropping the |
@zakons: can this be closed? |
The current signature on the Bigtable
Table
read_row()
method has a default offilter_=None
:In cases where a cell value may have been updated multiple times, the default will be to return the full time series with timestamps for each value which can slow down read performance in a non-obvious way.
In the current Python API the
cells()
method onrow_data
(PartialRowData
) makes a deep copy of the cells, which compounds the performance issue.Consider:
read_row()
to retrieve only the most recent value of any cell unless the full or partial time series is requested.ColumnFamily
to implicitly or explicitly limit cells to only one value (no timeseries).cell_value(column_family_id, column, index=0)
method torow_data
(PartialRowData
) to allow more efficient retrieval of a single cell value.The text was updated successfully, but these errors were encountered: