- 3.51.0 (latest)
- 3.50.1
- 3.46.0
- 3.45.0
- 3.44.0
- 3.43.0
- 3.42.0
- 3.41.0
- 3.40.1
- 3.39.0
- 3.38.0
- 3.37.0
- 3.36.0
- 3.35.1
- 3.34.0
- 3.33.0
- 3.32.0
- 3.31.0
- 3.30.0
- 3.29.0
- 3.28.0
- 3.27.1
- 3.26.0
- 3.25.0
- 3.24.0
- 3.23.0
- 3.22.2
- 3.21.0
- 3.20.0
- 3.19.0
- 3.18.0
- 3.17.0
- 3.16.0
- 3.15.1
- 3.14.1
- 3.13.0
- 3.12.1
- 3.11.1
- 3.10.0
- 3.9.0
- 3.8.0
- 3.7.0
- 3.6.0
- 3.5.0
- 3.4.0
- 3.3.0
- 3.2.0
- 3.1.0
- 3.0.0
- 2.1.1
- 2.0.0
- 1.19.3
- 1.18.0
- 1.17.1
- 1.16.0
- 1.15.1
- 1.14.0
- 1.13.0
- 1.12.0
- 1.11.0
- 1.10.0
Snapshot API
Model a set of read-only queries to a database as a snapshot.
class google.cloud.spanner_v1.snapshot.Snapshot(session, read_timestamp=None, min_read_timestamp=None, max_staleness=None, exact_staleness=None, multi_use=False)
Allow a set of reads / SQL statements with shared staleness.
If no options are passed, reads will use the strong
model, reading
at a timestamp where all previously committed transactions are visible.
Parameters
session (
Session
) – the session used to perform the commit.read_timestamp (
datetime.datetime
) – Execute all reads at the given timestamp.min_read_timestamp (
datetime.datetime
) – Execute all reads at a timestamp >=min_read_timestamp
.max_staleness (
datetime.timedelta
) – Read data at a timestamp >= NOW -max_staleness
seconds.exact_staleness (
datetime.timedelta
) – Execute all reads at a timestamp that isexact_staleness
old.multi_use (
bool
) – If true, multiplread()
/execute_sql()
calls can be performed with the snapshot in the context of a read-only transaction, used to ensure isolation / consistency. Incompatible withmax_staleness
andmin_read_timestamp
.
begin()
Begin a read-only transaction on the database.
Return type
Returns
the ID for the newly-begun transaction.
Raises
ValueError – if the transaction is already begun, committed, or rolled back.
execute_sql(sql, params=None, param_types=None, query_mode=None, query_options=None, partition=None, retry=<_MethodDefault._DEFAULT_VALUE:
Perform an ExecuteStreamingSql
API request.
Parameters
sql (str) – SQL query statement
params (dict, **{str -> column value}) – values for parameter replacement. Keys must match the names used in
sql
.param_types (dict[str -> Union[dict, *[types.Type](gapic/v1/types.md#google.cloud.spanner_v1.types.Type)]*]) – (Optional) maps explicit types for one or more param values; required if parameters are passed.
query_mode (
google.cloud.spanner_v1.proto.ExecuteSqlRequest.QueryMode
) – Mode governing return of results / query plan. See https://cloud.google.com/spanner/reference/rpc/google.spanner.v1#google.spanner.v1.ExecuteSqlRequest.QueryMode1query_options – (Optional) Query optimizer configuration to use for the given query. If a dict is provided, it must be of the same form as the protobuf message
QueryOptions
partition (bytes) – (Optional) one of the partition tokens returned from
partition_query()
.
Return type
Returns
a result set instance which can be used to consume rows.
Raises
ValueError – for reuse of single-use snapshots, or if a transaction ID is already pending for multiple-use snapshots.
partition_query(sql, params=None, param_types=None, partition_size_bytes=None, max_partitions=None)
Perform a ParitionQuery
API request.
Parameters
sql (str) – SQL query statement
params (dict, **{str -> column value}) – values for parameter replacement. Keys must match the names used in
sql
.param_types (dict[str -> Union[dict, *[types.Type](gapic/v1/types.md#google.cloud.spanner_v1.types.Type)]*]) – (Optional) maps explicit types for one or more param values; required if parameters are passed.
partition_size_bytes (int) – (Optional) desired size for each partition generated. The service uses this as a hint, the actual partition size may differ.
max_partitions (int) – (Optional) desired maximum number of partitions generated. The service uses this as a hint, the actual number of partitions may differ.
Return type
iterable of bytes
Returns
a sequence of partition tokens
Raises
ValueError – for single-use snapshots, or if a transaction ID is already associtated with the snapshot.
partition_read(table, columns, keyset, index='', partition_size_bytes=None, max_partitions=None)
Perform a ParitionRead
API request for rows in a table.
Parameters
table (str) – name of the table from which to fetch data
columns (list of str) – names of columns to be retrieved
keyset (
KeySet
) – keys / ranges identifying rows to be retrievedindex (str) – (Optional) name of index to use, rather than the table’s primary key
partition_size_bytes (int) – (Optional) desired size for each partition generated. The service uses this as a hint, the actual partition size may differ.
max_partitions (int) – (Optional) desired maximum number of partitions generated. The service uses this as a hint, the actual number of partitions may differ.
Return type
iterable of bytes
Returns
a sequence of partition tokens
Raises
ValueError – for single-use snapshots, or if a transaction ID is already associtated with the snapshot.
read(table, columns, keyset, index='', limit=0, partition=None)
Perform a StreamingRead
API request for rows in a table.
Parameters
table (str) – name of the table from which to fetch data
columns (list of str) – names of columns to be retrieved
keyset (
KeySet
) – keys / ranges identifying rows to be retrievedindex (str) – (Optional) name of index to use, rather than the table’s primary key
limit (int) – (Optional) maximum number of rows to return. Incompatible with
partition
.partition (bytes) – (Optional) one of the partition tokens returned from
partition_read()
. Incompatible withlimit
.
Return type
Returns
a result set instance which can be used to consume rows.
Raises
ValueError – for reuse of single-use snapshots, or if a transaction ID is already pending for multiple-use snapshots.