The patent badge is an abbreviated version of the USPTO patent document. The patent badge does contain a link to the full patent document.
The patent badge is an abbreviated version of the USPTO patent document. The patent badge covers the following: Patent number, Date patent was issued, Date patent was filed, Title of the patent, Applicant, Inventor, Assignee, Attorney firm, Primary examiner, Assistant examiner, CPCs, and Abstract. The patent badge does contain a link to the full patent document (in Adobe Acrobat format, aka pdf). To download or print any patent click here.
Patent No.:
Date of Patent:
Sep. 07, 2021
Filed:
Dec. 20, 2019
Walmart Apollo, Llc, Bentonville, AR (US);
Jason Christopher Sardina, Carlsbad, CA (US);
William R. Eschenbruecher, III, Encinitas, CA (US);
Robert Perry Lowell, Carlsbad, CA (US);
WALMART APOLLO, LLC, Bentonville, AR (US);
Abstract
A method for achieving eventually-consistent data replication in a technology agnostic manner. The method can be implemented via execution of computing instructions configured to run at one or more processors and stored at one or more non-transitory computer-readable media. The method can include receiving, by a system comprising the one or more processors and the one or more non-transitory computer-readable media, a write request for an object. The write request can be received from a user device or an application server. The method further can include performing a write operation for the object, by the system, after the write request is received. Performing the write operation can comprise: (a) adding an intent record to a tracker table, the intent record comprising a primary key uniquely associated with the object and a version associated with the object; and (b) updating the object, the object including the primary key and the version, in a primary data store, after the intent record is added. The method further can include reconciling, by the system, each intent record that is stranded in the tracker table. Reconciling each intent record that is stranded in the tracker table can comprise, for a respective stranded intent record of the one or more stranded intent records, (a) attempting to obtain, from the primary data store, a primary object that is uniquely associated with a stranded primary key of the respective stranded intent record; (b) when (A) the primary object is obtained and (B) a primary object version of the primary object is equal to a stranded intent version of the respective stranded intent record, replicating the primary object from the primary data store to at least one secondary data store; (c) when the primary object is not obtained, deleting the object from the secondary data store; and (d) when at least one of: (A) the primary object is not obtained, (B) the primary object version of the primary object is not equal to the stranded intent version of the respective stranded intent record, or (C) the primary object from the primary data store is replicated to the at least one secondary data store, clearing the respective stranded intent record from the tracker table. Other embodiments are disclosed.