US 12,147,317 B1
Backup and restore of client-managed and system-managed database tables
Saleem Mohideen, Saratoga, CA (US); Shanpei Zhou, Seattle, WA (US); Li-Che Hsiao, Seattle, WA (US); Benjamin S Ellis, Seattle, WA (US); Raman Mittal, Kirkland, WA (US); and Peng Gu, Seattle, WA (US)
Assigned to Amazon Technologies, Inc., Seattle, WA (US)
Filed by Amazon Technologies, Inc., Seattle, WA (US)
Filed on Sep. 30, 2022, as Appl. No. 17/937,434.
Int. Cl. G06F 7/00 (2006.01); G06F 11/14 (2006.01)
CPC G06F 11/1471 (2013.01) [G06F 11/1469 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A system, comprising:
at least one processor; and
a memory, storing program instructions that when executed by the at least one processor, cause the at least one processor to implement a database service, configured to:
receive a request to perform a restore operation to a specified point in time for a database comprising a client-managed table and a system-managed table;
restore, from a backup copy, a metadata volume that identifies respective storage volumes for the client-managed table and a plurality of shards of the system-managed table;
identifying respective log sequence numbers for respective redo logs for the storage volumes according to mappings that provide respective consistency points based on the mappings to and timestamps synchronized according to a time synchronization service;
based on the identified respective log sequence numbers for the respective redo logs, determine portions of the respective redo logs to be applied to generate restored versions of the respective storage volumes for the client-managed table and the plurality of shards of the system-managed table;
apply the determined portions of the respective redo logs to backup copies of the respective storage volumes identified from the metadata volume to generate the restored versions of the respective storage volumes for the client-managed table and the plurality of shards of the system-managed table at a consistent view for the specified point in time; and
make the restored versions of the respective storage volumes for the client-managed table and the plurality of shards of the system-managed table available to enable access to the database restored to the consistent view for the specified point in time.