US 12,461,904 B2
Distributed aggregations in bigtable
Steven Niemitz, New York, NY (US); Thomas Robert Magrino, Mamaroneck, NY (US); and Douglas Moore Mcerlean, Brooklyn, NY (US)
Assigned to Google LLC, Mountain View, CA (US)
Filed by Google LLC, Mountain View, CA (US)
Filed on Apr. 4, 2024, as Appl. No. 18/626,721.
Prior Publication US 2025/0315424 A1, Oct. 9, 2025
Int. Cl. G06F 16/00 (2019.01); G06F 16/23 (2019.01); G06F 16/27 (2019.01)
CPC G06F 16/2358 (2019.01) [G06F 16/27 (2019.01)] 20 Claims
OG exemplary drawing
 
1. A computer-implemented method comprising:
receiving, by an aggregation controller and from a first node of a plurality of nodes of a distributed database, an update request for an aggregate value stored at the first node, the update request comprising a first sequencer identifying a point in time when the update request was created;
responsive to receiving the update request for the aggregate value:
causing, by the aggregation controller and based on the update request, the first node to update the aggregate value;
storing, by the aggregation controller, a log record of the update to the aggregate value and the first sequencer to a changelog; and
transmitting, by the aggregation controller and to each other node from the plurality of nodes, the update request;
after the first node updates the aggregate value, receiving, by the aggregation controller and from a second node of the plurality of nodes, a reset request for the aggregate value, the reset request including a second sequencer identifying a point in time when the reset request was created;
determining, by the aggregation controller and using the changelog and the second sequencer, that the reset request predates the update request; and
responsive to determining that the reset request predates the update request, replaying the update request by at least:
causing, by the aggregation controller, the first node to reset the aggregate value stored at the first node; and
after the first node resets the aggregate value, causing, by the aggregation controller, the first node to update the aggregate value based on the update request.