Systems and methods for updating a data store using a transaction store
AssigneeUnited States Postal Service
InventorROBERT F. SNAPP
Life of this patent
Estimating the term…
Abstract
Embodiments include systems and methods for updating a data store in a distributed data store system. In one embodiment, a previous version of a data store is compared to an updated version of the data store in order to create a transaction store. The transaction store may include a cryptographic hash indicative of the previous version of the data store and a cryptographic hash indicative of the updated version of the data store. The transaction store further indicates data differences between the previous and updated versions of the data stores. The transaction store may then be used to update data stores at other locations.
Claims43
A method of creating a transaction store for updating a data store comprising:
- receiving a first version of a binary data store;
- receiving a second version of a binary data store;
- outputting to a transaction store on a computer readable medium a cryptographic hash indicative of the first version of the binary data store;
- outputting to the transaction store a cryptographic hash indicative of the second version of the binary data store;
- determining a portion of the data in the second version of the binary data store that is the same as the data in the first version of the binary data store;
- and
- outputting to the transaction store an indicator representative of the length of a portion of the of data that is the same in both the first version of the binary data store and the second version of the binary data store.
A method of updating a binary data store based on a transaction store comprising:
- receiving a binary data store;
- receiving a transaction store from a computer readable memory for describing differences between a first and a second version of a binary data store, wherein the transaction store comprises:
- a first cryptographic hash;
- a second cryptographic hash;
- and
- an indicator representative of a portion of the data in the binary data store that is to remain unchanged;
- determining whether a cryptographic hash indicative of the binary data store is the same as the first cryptographic hash;
- updating the binary data store by changing the value of the bit in a position associated with the portion of data in the binary data store that is to remain unchanged;
- and
- determining whether the second cryptographic hash is the same as a cryptographic hash indicative of the updated binary data store.
A method of updating a data store based on a transaction store comprising:
- receiving a binary data store;
- receiving a transaction store from a computer readable medium for describing differences between a first and a second version of a binary data store, wherein the transaction store comprises:
- a first cryptographic hash;
- a second cryptographic hash;
- and
- an indicator representative of a portion of the data in the binary data store that is to remain unchanged;
- data that is to be updated in the binary data store;
- determining whether a cryptographic hash indicative of the binary data store is the same as the first cryptographic hash;
- updating the binary data store by inserting the data that is to be updated in the binary data store in a position associated with the portion of data in the binary data store that is to remain unchanged;
- and
- determining whether the second cryptographic hash is the same as a cryptographic hash indicative of the updated binary data store.
A system for creating a transaction store for updating a binary data store comprising:
- a storage medium configured to store a first version of a binary data store and a second version of the binary data store;
- and
- at least one processor configured to:
- output to a transaction store a cryptographic hash indicative of the first version of the binary data store;
- output to the transaction store a cryptographic hash indicative of the second version of the binary data store;
- determine a portion of data in the second version of the binary data store that is the same as the data in the first version of the binary data store;
- and
- output to the transaction store an indicator representative of the length of the portion of data that is the same in both the first version of the binary data store and the second version of the binary data store.
A system for updating a data store based on a transaction store comprising:
- a storage medium configured to store a binary data store and a transaction store;
- and
- at least one processor configured to:
- receive a first cryptographic hash from the transaction store;
- receive a second cryptographic hash from the transaction store;
- determine whether a cryptographic hash indicative of the first version of the binary data store is the same as the received first cryptographic hash;
- receive at least one indicator from the transaction store representative of a portion of data in the binary data store that is to remain unchanged;
- update the binary data store based on the received indicator;
- and
- determine whether the second cryptographic hash is the same as a cryptographic hash indicative of the updated binary data store.
A system for updating a binary data store based on a transaction store comprising:
- a storage medium configured to store a binary data store and a transaction store;
- and
- at least one processor configured to:
- receive a first cryptographic hash from the transaction store;
- receive a second cryptographic hash from the transaction store;
- determine whether a cryptographic hash indicative of the binary data store is the same as the received first cryptographic hash;
- receive an indicator from the transaction store representative of a portion of data in the binary data store that is to remain unchanged;
- receive from the transaction store data that is to be updated in the binary data store;
- update the binary data store by inserting the data that is to be updated in binary data store in a position associated with the portion of data in the binary data store that is to remain unchanged;
- and
- determine whether the second cryptographic hash is the same as a cryptographic hash indicative of the updated binary data store.
A system for creating a transaction store for updating a binary data store comprising:
- means for storing a first version of a binary data store and a second version of a binary data store;
- and
- means for processing data, said processing means configured to:
- output to a transaction store a cryptographic hash indicative of the first version of the binary data store;
- output to the transaction store a cryptographic hash indicative of the second version of the binary data store;
- determine a portion of data in the second version of the binary data store that is the same as the data in the first version of the binary data store;
- and
- output to the transaction store an indicator representative of the length of the portion of data that is the same in both the first version of the binary data store and the second version of the binary data store.
A system for updating a data store based on a transaction store comprising:
- means for storing a binary data store and a transaction store;
- and
- means for processing data, said processing means configured to:
- receive a first cryptographic hash from the transaction store;
- receive a second cryptographic hash from the transaction store;
- determine whether a cryptographic hash indicative of the binary data store is the same as the received first cryptographic hash;
- receive an indicator from the transaction store representative of a portion of data that is to remain unchanged in the binary data store;
- update the binary data store based on the received indicator;
- and
- determine whether the received second cryptographic hash is the same as a cryptographic hash indicative of the updated binary data store.
A system for updating a data store based on a transaction store comprising:
- means for storing a binary data store and a transaction store;
- and
- means for processing data, said processing means configured to:
- receive a first cryptographic hash from the transaction store;
- receive a second cryptographic hash from the transaction store;
- determine whether a cryptographic hash indicative of the binary data store is the same as the received first cryptographic hash;
- receive an indicator from the transaction store representative of a portion of data that is to remain unchanged in the binary data store;
- receive from the transaction store data that is to be updated in the first version of the binary data store;
- update the binary data store by inserting the data that is to be updated in the binary data store in a position associated with the portion that is to remain unchanged in the binary data store;
- and
- determine whether the received second cryptographic hash is the same as a cryptographic hash indicative of the updated binary data store.
Dependencies are inferred from the claim text.