US 12,079,366 B2
Selectively encrypting commit log entries
David Wanyoike Mwaura, San Francisco, CA (US); and Dmitry N. Orlov, Castro Valley, CA (US)
Assigned to Google LLC, Mountain View, CA (US)
Filed by Google LLC, Mountain View, CA (US)
Filed on Mar. 15, 2022, as Appl. No. 17/654,993.
Application 17/654,993 is a continuation of application No. 16/531,498, filed on Aug. 5, 2019, granted, now 11,301,579.
Application 16/531,498 is a continuation of application No. 15/348,254, filed on Nov. 10, 2016, granted, now 10,372,935, issued on Aug. 6, 2019.
Claims priority of provisional application 62/255,322, filed on Nov. 13, 2015.
Prior Publication US 2022/0207173 A1, Jun. 30, 2022
Int. Cl. G06F 21/62 (2013.01); G06F 11/14 (2006.01); G06F 16/23 (2019.01)
CPC G06F 21/6227 (2013.01) [G06F 11/1464 (2013.01); G06F 16/2379 (2019.01); G06F 2201/84 (2013.01); G06F 2221/2107 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A computer-implemented method when executed by data processing hardware causes the data processing hardware to perform operations comprising:
receiving first unencrypted data to write to an encrypted tablet, the encrypted tablet storing encrypted data;
prior to writing the first unencrypted data to the encrypted tablet, generating a first log entry in a commit log for logging the write of the first unencrypted data to the encrypted tablet, the first log entry comprising:
a first unencrypted header; and
an encrypted payload comprising the first unencrypted data encrypted with an encryption key;
receiving second unencrypted data to write to an unencrypted tablet, the unencrypted tablet storing unencrypted data;
prior to writing the second unencrypted data to the unencrypted tablet, generating a second log entry in the commit log for logging the write of the second unencrypted data to the unencrypted tablet, the second log entry comprising:
a second unencrypted header; and
an unencrypted payload comprising the second unencrypted data;
prior to writing the first unencrypted data to the encrypted tablet, identifying a data failure associated with the encrypted tablet; and
based on identifying the data failure associated with the encrypted table, restoring the encrypted tablet using the first log entry and the second log entry of the commit log, the encrypted tablet comprising the first unencrypted data after restoration.