US 11,941,014 B1
Versioned metadata management for a time-series database
Sudipto Das, Redmond, WA (US); Kanishka Chaturvedi, Seattle, WA (US); Timothy A Rath, Olympia, WA (US); and Avinash Goutham Reddy Aluguvelly, Seattle, WA (US)
Assigned to Amazon Technologies, Inc., Seattle, WA (US)
Filed by Amazon Technologies, Inc., Seattle, WA (US)
Filed on Jun. 16, 2021, as Appl. No. 17/349,786.
Int. Cl. G06F 16/2458 (2019.01); G06F 11/14 (2006.01); G06F 16/22 (2019.01); G06F 16/27 (2019.01)
CPC G06F 16/2477 (2019.01) [G06F 11/1469 (2013.01); G06F 16/2246 (2019.01); G06F 16/2282 (2019.01); G06F 16/27 (2019.01); G06F 2201/84 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A system, comprising:
a distributed time-series database that stores time-series data of a plurality of time series, wherein the distributed time-series database comprises a metadata service that stores metadata descriptive of the plurality of time series, and wherein the distributed time-series database comprises one or more processors and one or more memories to store computer-executable instructions that, when executed, cause the one or more processors to:
store, by the metadata service to one or more metadata storage resources, first metadata descriptive of a table comprising a plurality of data points, wherein the first metadata is associated with a first version number in a logical sequence of metadata versions of the table, wherein individual ones of the metadata versions indicate a schema of the table including columns of the table and data types of the columns;
determine one or more metadata updates for the table;
store, to a write-ahead log of the metadata service, data indicative of the one or more metadata updates, wherein the one or more metadata updates are associated with a second version number higher than the first version number in the logical sequence of metadata versions of the table;
receive, by the metadata service, a read request associated with the table;
determine, by the metadata service responsive to the read request, a most recent version number in the logical sequence that has been stored in the one or more metadata storage resources; and
return, by the metadata service responsive to the read request, the first metadata in response to determining that the most recent version number comprises the first version number; or
return, by the metadata service responsive to the read request, second metadata comprising the one or more metadata updates in response to determining that the most recent version number comprises the second version number.