Moves cold rows to object storage on a 90-day rule and keeps an index of what went where.
Moves rows older than 90 days to object storage and keeps an index of what went where, so a lookup does not require scanning the archive.
Ninety days is measured from the row's own timestamp, not from when it was written. Late-arriving data is therefore sometimes archived almost immediately, which is intended.
A restore reads from the index, pulls the object, and writes the rows back to a scratch table — never to the original table. Merging back is a decision, not a side effect.