- Universe
- One Spanner deployment. Because Spanner manages data globally there are only a handful; Google ran a test/playground universe, a development/production universe, and a production-only universe.
- Zone
- The unit of administrative deployment and physical isolation within a universe, roughly the analog of one Bigtable deployment, and the granularity at which data can be replicated. A zone contains one zonemaster and between one hundred and several thousand spanservers, and zones can be added or removed from a running system.
- Spanserver
- The server process that serves data to clients. Each spanserver is responsible for 100 to 1000 tablets, runs a Paxos state machine over each one, and on the tablets where it is leader also runs a lock table and a transaction manager.
- Tablet
- Spanner's storage container, implementing a bag of mappings from (key, timestamp) pairs to strings, backed by B-tree-like files and a write-ahead log on Colossus. Unlike a Bigtable tablet it need not be a single lexicographically contiguous partition of the row space, since it may hold several directories.
- Directory
- A set of contiguous keys sharing a common prefix, formed by a directory-table row plus all interleaved descendant rows under that key. It is the unit of data placement, of replication configuration, and of movement between Paxos groups; oversized directories are split into fragments.
- TTinterval and epsilon
- TT.now() returns a TTinterval, an interval [earliest, latest] guaranteed to contain the absolute time of the invocation. Epsilon is half the interval's width, the instantaneous error bound, typically a 1 to 7 ms sawtooth in Google's production environment with a mean near 4 ms.
- Commit wait
- The rule that a coordinator leader must not let any replica reveal data committed by a transaction until TT.after(s) holds for its commit timestamp s. It guarantees s lies in the absolute past by the time the commit becomes visible, at an expected cost of at least 2 epsilon.
- External consistency
- The guarantee, equivalent to linearizability, that if a transaction T1 commits before another transaction T2 starts then T1's commit timestamp is smaller than T2's. Spanner was the first system to provide it at global scale.
- Safe time
- The maximum timestamp at which a replica is up-to-date, and therefore the newest timestamp at which it may serve a read. It is the minimum of the Paxos safe time, the timestamp of the highest applied Paxos write, and the transaction-manager safe time, one below the smallest prepare timestamp of any prepared transaction in the group.