US 12,450,256 B2
Replicating data in a versioned database
Marin Creanga, Ottawa (CA); and Dylan Ellicott, Ottawa (CA)
Assigned to Kinaxis Inc., Ottawa (CA)
Filed by Kinaxis Inc., Ottawa (CA)
Filed on Dec. 21, 2023, as Appl. No. 18/392,237.
Application 18/392,237 is a continuation in part of application No. 18/345,420, filed on Jun. 30, 2023.
Claims priority of provisional application 63/435,082, filed on Dec. 23, 2022.
Claims priority of provisional application 63/357,287, filed on Jun. 30, 2022.
Prior Publication US 2024/0338383 A1, Oct. 10, 2024
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 16/27 (2019.01); G06F 16/17 (2019.01); G06F 16/21 (2019.01)
CPC G06F 16/27 (2019.01) [G06F 16/1727 (2019.01); G06F 16/219 (2019.01)] 15 Claims
OG exemplary drawing
 
1. A computer-implemented method for replicating data in a versioned database, the method comprising:
for the versioned database comprising versions, wherein each version is generated as data changes across the versioned database that differentiates versions, and wherein each scenario is a logical pointer in the versioned database that is independent of and points to the version in the versioned database,
selecting, by a processor, a lead scenario for placement in a replication set for replicating the versioned database;
determining, by the processor, a memory size of the lead scenario; and
when the memory size of the lead scenario is less than or equal to a maximum replication set memory size:
adding, by the processor, the lead scenario into the replication set;
determining, by the processor, a best candidate scenario from a list of candidate scenarios based on an amount of data shared with all the scenarios in the replication set;
adding, by the processor, the best candidate scenario to the replication set; and
iterating, by the processor, a new list of candidate scenarios to place in the replication set until there are no more scenario candidates to place in the replication set,
wherein replication of the versioned database by the replication data set allows additional compute power to be applied to the versioned database.