US2020409565A1PendingUtilityA1

Systems and methods for distributive data storage

Assignee: WALMART APOLLO LLCPriority: Jan 4, 2017Filed: Sep 14, 2020Published: Dec 31, 2020
Est. expiryJan 4, 2037(~10.4 yrs left)· nominal 20-yr term from priority
G06F 16/51G06F 3/065G06F 3/067G06F 3/0619G06F 3/0659G06F 3/0613
57
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Some embodiments can include a system. In many embodiments, a system can comprise one or more processors and one or more non-transitory storage devices storing computing instructions configured to run on the one or more processors and perform: dividing a computer file into two or more portions; calculating a respective unique identifier for each respective portion of the two or more portions; creating two or more respective computer file portion replicas of each respective portion of the two or more portions, wherein each respective computer file portion replica of the two or more respective computer file portion replicas: can be for a corresponding portion of the two or more portions; and can comprises a same one of the respective unique identifier as the corresponding portion of the two or more portions; and facilitating storage of the two or more respective computer file portion replicas on a distributive data storage cluster. Other embodiments are disclosed herein.

Claims

exact text as granted — not AI-modified
We claim: 
     
         1 . A system comprising:
 one or more processors; and   one or more non-transitory storage devices storing computing instructions configured to run on the one or more processors and perform:
 dividing a computer file into two or more portions; 
 calculating a respective unique identifier for each respective portion of the two or more portions; 
 creating two or more respective computer file portion replicas of each respective portion of the two or more portions, wherein each respective computer file portion replica of the two or more respective computer file portion replicas:
 is for a corresponding portion of the two or more portions; and 
 comprises a same one of the respective unique identifier as the corresponding portion of the two or more portions; and 
 
 facilitating storage of the two or more respective computer file portion replicas on a distributive data storage cluster. 
   
     
     
         2 . The system of  claim 1 , wherein each respective unique identifier comprises a respective portion hash value, a respective label, respective metadata, or a respective metadata tag. 
     
     
         3 . The system of  claim 1 , wherein the one or more non-transitory storage devices storing the computing instructions are further configured to run on the one or more processors and perform:
 receiving, from an electronic device of a user, a request to utilize the computer file;   sending a request to retrieve the computer file from the distributive data storage cluster;   receiving, from the distributive data storage cluster, a set of the two or more respective computer file portion replicas, wherein the set of the two or more computer file portion replicas, when combined, comprises the computer file; and   transmitting instructions allowing the electronic device of the user to utilize the computer file.   
     
     
         4 . The system of  claim 3 , wherein the one or more non-transitory storage devices storing the computing instructions are further configured to run on the one or more processors and perform:
 calculating a respective retrieved unique identifier for each respective portion of the two or more portions associated with the set of the two or more respective computer file portion replicas, as received; and   determining that the respective retrieved unique identifier for each respective portion of the two or more portions associated with the set of the two or more respective computer file portion replicas, as received, matches the respective unique identifier for each respective portion of the two or more portions, thereby confirming that the two or more respective computer file portion replicas, as received, have not been corrupted.   
     
     
         5 . The system of  claim 3 , wherein the one or more non-transitory storage devices storing the computing instructions are further configured to run on the one or more processors and perform:
 merging the set of the two or more computer file portion replicas, as received, into the computer file.   
     
     
         6 . The system of  claim 1 , wherein at least one respective computer file portion replica of the two or more respective computer file portion replicas comprises a fastest responding computer file portion replica. 
     
     
         7 . The system of  claim 1 , wherein the computer file comprises an image file. 
     
     
         8 . The system of  claim 1 , wherein creating the two or more respective computer file portion replicas of each respective portion of the two or more portions comprises:
 replicating each respective portion of the two or more portions by a respective replication factor based, at least in part, on a number of the two or more storage nodes.   
     
     
         9 . The system of  claim 8 , wherein the respective replication factor is determined using an equation comprising: 
       
         
           
             
               
                 Q 
                 = 
                 
                   
                     N 
                     2 
                   
                   + 
                   1 
                 
               
               , 
             
           
         
       
       wherein:
 Q comprises the number of the two or more storage nodes; and 
 N comprises the respective replication factor. 
 
     
     
         10 . The system of  claim 1 , wherein the respective unique identifier for each respective portion of the two or more portions is different for each respective portion of the two or more portions. 
     
     
         11 . A method implemented via execution of computing instructions configured to run at one or more processors and configured to be stored at non-transitory computer-readable media, the method comprising:
 dividing a computer file into two or more portions;   calculating a respective unique identifier for each respective portion of the two or more portions;   creating two or more respective computer file portion replicas of each respective portion of the two or more portions, wherein each respective computer file portion replica of the two or more respective computer file portion replicas:
 is for a corresponding portion of the two or more portions; and 
 comprises a same one of the respective unique identifier as the corresponding portion of the two or more portions; and 
   facilitating storage of the two or more respective computer file portion replicas on a distributive data storage cluster.   
     
     
         12 . The method of  claim 11 , wherein each respective unique identifier comprises a respective portion hash value, a respective label, respective metadata, or a respective metadata tag. 
     
     
         13 . The method of  claim 11 , wherein the one or more non-transitory storage devices storing the computing instructions are further configured to run on the one or more processors and perform:
 receiving, from an electronic device of a user, a request to utilize the computer file;   sending a request to retrieve the computer file from the distributive data storage cluster;   receiving, from the distributive data storage cluster, a set of the two or more respective computer file portion replicas, wherein the set of the two or more computer file portion replicas, when combined, comprises the computer file; and   transmitting instructions allowing the electronic device of the user to utilize the computer file.   
     
     
         14 . The method of  claim 13 , wherein the one or more non-transitory storage devices storing the computing instructions are further configured to run on the one or more processors and perform:
 calculating a respective retrieved unique identifier for each respective portion of the two or more portions associated with the set of the two or more respective computer file portion replicas, as received; and   determining that the respective retrieved unique identifier for each respective portion of the two or more portions associated with the set of the two or more respective computer file portion replicas, as received, matches the respective unique identifier for each respective portion of the two or more portions, thereby confirming that the two or more respective computer file portion replicas, as received, have not been corrupted.   
     
     
         15 . The method of  claim 13 , wherein the one or more non-transitory storage devices storing the computing instructions are further configured to run on the one or more processors and perform:
 merging the set of the two or more computer file portion replicas, as received, into the computer file.   
     
     
         16 . The method of  claim 11 , wherein at least one respective computer file portion replica of the two or more respective computer file portion replicas comprises a fastest responding computer file portion replica. 
     
     
         17 . The method of  claim 11 , wherein the computer file comprises an image file. 
     
     
         18 . The method of  claim 11 , wherein creating the two or more respective computer file portion replicas of each respective portion of the two or more portions comprises:
 replicating each respective portion of the two or more portions by a respective replication factor based, at least in part, on a number of the two or more storage nodes.   
     
     
         19 . The method of  claim 18 , wherein the respective replication factor is determined using an equation comprising: 
       
         
           
             
               
                 Q 
                 = 
                 
                   
                     N 
                     2 
                   
                   + 
                   1 
                 
               
               , 
             
           
         
       
       wherein:
 Q comprises the number of the two or more storage nodes; and 
 N comprises the replication factor. 
 
     
     
         20 . The method of  claim 11 , wherein the respective unique identifier for each respective portion of the two or more portions is different for each respective portion of the two or more portions.

Join the waitlist — get patent alerts

Track US2020409565A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.