B1.3 · dive 3 of 4 — the candidate table
Every column filled.
Against the BCS requirements — discriminant in the value and the type, lexicographic mint order, in-contract placement, fixed printable width, cross-runtime canon — seven candidates enter the table. One row has every column filled.
The storage column is the measured table's; the remaining columns are the contract's properties. Nothing in this table is taste.
The requirements
content/bcs1.3.md · The chooserFive columns. Valkey B/key — the measured table's verdict at rest. Time-ordered — string order as mint order, the order theorem's demand. Type tag — the namespace discriminant, carried in the value. Placement fn — in-contract placement arithmetic any holder of the id may run. Coordination — what the scheme asks of the fleet to mint safely.
The candidates
content/bcs1.3.md · verbatim| Candidate | Valkey B/key | Time-ordered | Type tag | Placement fn | Coordination |
|---|---|---|---|---|---|
| serial integer | ~57–65 | insertion only | none | none | central sequence |
| UUIDv4 (hex 36) | 97 | no | none | none | none |
| UUIDv7 (hex 36) | 97 | yes | none | none | none |
| UUID (binary 16) | 65 | v7 only | none | none | none |
| ULID (26) | 81 | yes | none | none | none |
| snowflake, decimal | 73 | yes | none | by convention | node id |
| branded snowflake (14) | 65 | yes, lexicographic | 3-byte namespace | hash32, in-contract | node id |
The storage column is not opinion — it is the measured table's, row for row:
fmt keylen redis7 valkey81 saved
brd14 14 88 65 23
u64dec 19 104 73 31
uuid36 36 120 97 23
uuid16 16 104 65 39
ulid26 26 104 81 23
The strongest outsider, and the verdict
content/bcs1.3.md · The chooserUUIDv7 is the strongest outsider — ordered without coordination — but pays two classes as text, surrenders readability as binary, and carries no namespace and no placement contract in either form. The branded snowflake is the only row with every column filled, and the table removed the last argument against it: the contract's wire form is also the cheapest printable one.
The verdict stands as the contract states it, and re-validation when the engine bumps re-checks the directional invariants on a dated new output — it does not reopen the chooser.
References
sources · relatedSources
- Söderqvist — A new hash tablethe table behind the storage column
- Valkey 8.1.0 GAthe release the measured engine was built from
- Snowflake IDthe layout family both snowflake rows descend from
Related
- B1.3 — the module hubthe chooser, settled by measurement
- B1 — Ideas Behindthe chapter landing
- BCS — the course homethe law, the id anatomy, the chapter map
- Redis Patterns Appliedthe key patterns the chosen form feeds