Each write operation creates an immutable snapshot with a timestamp and ID. You can query any snapshot by passing its ID or a timestamp to your engine, and Iceberg resolves the correct metadata automatically. You can only travel as far back as unexpired snapshots allow; once a snapshot expires through the maintenance process, data files referenced only by that snapshot become eligible for deletion.