API documentation for spanner_v1 package.
Classes
AbstractSessionPool
Specifies required API for concrete session pool implementations.
BurstyPool
Concrete session pool implementation:
"Pings" existing sessions via
session.existsbefore returning them.Creates a new session, rather than blocking, when
getis called on an empty pool.Discards the returned session, rather than blocking, when
putis called on a full pool.
Client
Client for interacting with Cloud Spanner API.
FixedSizePool
Concrete session pool implementation:
Pre-allocates / creates a fixed number of sessions.
"Pings" existing sessions via
session.existsbefore returning them, and replaces expired sessions.Blocks, with a timeout, when
getis called on an empty pool. Raises after timing out.Raises when
putis called on a full pool. That error is never expected in normal practice, as users should be callinggetfollowed byputwhenever in need of a session.
KeyRange
Identify range of table rows via start / end points.
Specify either a start_open or start_closed key, or defaults to
start_closed = []. Specify either an end_open or end_closed key,
or defaults to end_closed = []. However, at least one key has to be
specified. If no keys are specified, ValueError is raised.
KeySet
Identify table rows via keys / ranges.
PingingPool
Concrete session pool implementation:
Pre-allocates / creates a fixed number of sessions.
Sessions are used in "round-robin" order (LRU first).
"Pings" existing sessions in the background after a specified interval via an API call (
session.exists()).Blocks, with a timeout, when
getis called on an empty pool. Raises after timing out.Raises when
putis called on a full pool. That error is never expected in normal practice, as users should be callinggetfollowed byputwhenever in need of a session.
The application is responsible for calling ping at appropriate
times, e.g. from a background thread.
TransactionPingingPool
Concrete session pool implementation:
In addition to the features of PingingPool, this class
creates and begins a transaction for each of its sessions at startup.
When a session is returned to the pool, if its transaction has been
committed or rolled back, the pool creates a new transaction for the
session and pushes the transaction onto a separate queue of "transactions
to begin." The application is responsible for flushing this queue
as appropriate via the pool's begin_pending_transactions method.
Modules
types
API documentation for spanner_v1.types module.
instance
User friendly container for Cloud Spanner Instance.
keyset
Wrap representation of Spanner keys / ranges.
session
Wrapper for Cloud Spanner Session objects.
pool
Pools managing shared Session objects.
snapshot
Model a set of read-only queries to a database as a snapshot.
streamed
Wrapper for streaming results.
transaction
Spanner read-write transaction support.