US2019042091A1PendingUtilityA1

Technologies for providing efficient distributed data storage in a disaggregated architecture

Assignee: INTEL CORPPriority: Aug 30, 2017Filed: Mar 15, 2018Published: Feb 7, 2019
Est. expiryAug 30, 2037(~11.1 yrs left)· nominal 20-yr term from priority
G06F 9/4401G06F 30/34G06F 16/2255G06F 16/2455G06F 3/0673G06F 13/4068G06F 16/25G06F 16/2237G06F 3/0605H04L 47/11G06F 3/067G06F 16/119H04L 69/12H04L 49/351G06F 3/0647G06F 2212/1044G06F 3/0631H04L 45/7453G06F 13/1663G06F 15/161G11C 29/028G06F 13/1668G06F 2212/1052H04L 41/0677H04L 41/0668G06F 3/0613H04L 69/22G06F 16/2365G06F 2213/0064G06F 2212/601G11C 29/44H04L 47/125G06F 9/445H04L 49/9005G06F 9/4411G06F 2201/85G06F 15/17331G06F 2209/509G06F 9/4494G06F 12/0802H04L 49/30G06F 16/24553G06F 3/0685G06F 3/0611G06F 16/2453G06F 12/1063H04L 45/28H04L 41/0213G06F 16/9014G06F 3/0604G06F 12/1054G06F 3/065G06F 13/42G06F 9/28G06F 3/0683G06F 9/4406H04L 9/0894G06F 9/5088G06F 12/023G06F 3/0659G11C 8/12G06F 12/06G06F 3/0629G06F 16/221G11C 29/38G06F 12/0607G06F 16/2282G11C 29/36G06F 3/0644G06F 12/14G06F 16/248G06F 3/0632H04L 69/32H04L 41/14H04L 41/0893H04L 41/0896H04L 9/0819H04L 69/321H04L 47/83H04L 43/20H04L 41/149H04L 41/0895H04L 41/40H04L 41/34H04L 69/18G06F 2209/5019G06F 9/5055G06F 9/5022G06F 9/5044H04L 67/1001Y02D10/00G06F 2201/885G06F 2201/86G06F 11/3466G06F 11/3442G06F 11/3006G06F 11/3409H05K 7/1498H04L 43/0876H04L 43/065H04L 41/0816H04L 41/044G06N 3/063H04L 43/16H04L 41/5019H04L 41/5025H04L 49/40G06Q 30/0283G06Q 10/0631G06F 21/105G06F 13/4022G06F 9/5061G06F 9/4856G06F 9/44H05K 7/20736H05K 7/20209H05K 7/18H05K 7/1489H04L 67/1008H04L 63/0428G06F 2200/201G06F 15/7867G06F 9/505G06F 2213/3808G06F 2213/0026G06F 15/1735H04L 47/781H04L 41/16H04L 41/142G06F 3/0665G06F 15/173H04Q 11/0062H04Q 11/0005
71
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Technologies for providing efficient distributed data storage in a disaggregated architecture include a compute sled. The compute sled includes a network interface controller and circuitry to receive, through a network and with the network interface controller, a data access request from a compute device. The data access request includes a data payload indicative of an object to be stored. The circuitry is also to map the object to a set of multiple data storage sleds for distributed storage of the object. Additionally, the circuitry is to send a write request with the object and an object identifier to the mapped data storage sleds to store the object in one or more data storage devices located on each data storage sled and concurrently send metadata without the object to one or more other compute sleds associated with the mapped data storage sleds. Other embodiments are also described and claimed.

Claims

exact text as granted — not AI-modified
1 . A compute sled comprising:
 a network interface controller; and   circuitry to:   receive, through a network and with the network interface controller, a data access request from a compute device, wherein the data access request includes a data payload indicative of an object to be stored;   map the object to a set of multiple data storage sleds for distributed storage of the object; and   send a write request with the object and an object identifier to the mapped data storage sleds to store the object in one or more data storage devices located on each data storage sled and concurrently send metadata without the object to one or more other compute sleds associated with the mapped data storage sleds.   
     
     
         2 . The compute sled of  claim 1 , wherein to map the object to the set of data storage sleds comprises to read, from a database present on the compute sled and associated with a map data service, data indicative of an association between an identifier of the object and the set of data storage sleds. 
     
     
         3 . The compute sled of  claim 1 , wherein the compute sled is a first compute sled and wherein the circuitry is further to:
 receive a request from a second compute sled to determine whether a second object is mapped to a data storage sled associated with the first compute sled, wherein the request includes a second object identifier; and   compare, in response to receipt of the request, the object identifier to a database present on the first compute sled, wherein the database includes identifiers of objects stored in the data storage sled associated with the first compute sled.   
     
     
         4 . The compute sled of  claim 3 , wherein the circuitry is further to send, in response to a determination that the second object identifier matches an identifier of an object mapped to the data storage sled, an identifier of the data storage sled associated with the second object identifier. 
     
     
         5 . The compute sled of  claim 1 , wherein to send, through the network and with a local data bus protocol mapped onto a network protocol, a write request comprises to tunnel the write request through a non-volatile memory express over fabric (NVMeOF) connection to the data storage sleds. 
     
     
         6 . The compute sled of  claim 1 , wherein to map the object to the data storage sleds comprises to map the object to data storage sleds in different failure domains. 
     
     
         7 . The compute sled of  claim 1 , wherein to send the metadata comprises to send one or more of an object identifier associated with the object or metadata indicative of one or more attributes of the object. 
     
     
         8 . The compute sled of  claim 1 , wherein to map the object to the data storage sleds comprises to map the object as a function of a hash of a uniform resource locator of the object. 
     
     
         9 . The compute sled of  claim 1 , wherein the circuitry is further to verify, prior to sending the write request to the mapped data storage sled, that the data payload represents an object that is not already stored. 
     
     
         10 . The compute sled of  claim 9 , wherein to verify that the data payload represents an object that is not already stored comprises to compare an object identifier associated with the object to a database of object identifiers for objects stored in a data storage sled associated with the compute sled. 
     
     
         11 . The compute sled of  claim 1 , wherein the circuitry is further to:
 receive a request to read a second object, wherein the request includes an identifier of the second object; and   determine, in response to the read request, one or more storage sleds mapped to the identifier of the second object;   send, through the network and with the local data bus protocol mapped onto the network protocol, a read request to the mapped one or more data storage sleds; and   receive the read object from the mapped one or more data storage sleds.   
     
     
         12 . The compute sled of  claim 11 , wherein to send, through the network and with the local data bus protocol mapped onto the network protocol, a read request comprises to tunnel the read request through a non-volatile memory express over fabric (NVMeOF) connection to the one or more data storage sleds. 
     
     
         13 . One or more machine-readable storage media comprising a plurality of instructions stored thereon that, in response to being executed, cause a compute sled to:
 receive, through a network and with a network interface controller, a data access request from a compute device, wherein the data access request includes a data payload indicative of an object to be stored;   map the object to a set of multiple data storage sleds for distributed storage of the object; and   send a write request with the object and an object identifier to the mapped data storage sleds to store the object in one or more data storage devices located on each data storage sled and concurrently send metadata without the object to one or more other compute sleds associated with the mapped data storage sleds.   
     
     
         14 . The one or more machine-readable storage media of  claim 13 , wherein to map the object to the set of data storage sleds comprises to read, from a database present on the compute sled and associated with a map data service, data indicative of an association between an identifier of the object and the set of data storage sleds. 
     
     
         15 . The one or more machine-readable storage media of  claim 13 , wherein, the compute sled is a first compute sled and when executed, the plurality of instructions further cause the compute sled to:
 receive a request from a second compute sled to determine whether a second object is mapped to a data storage sled associated with the first compute sled, wherein the request includes a second object identifier; and   compare, in response to receipt of the request, the object identifier to a database present on the first compute sled, wherein the database includes identifiers of objects stored in the data storage sled associated with the first compute sled.   
     
     
         16 . The one or more machine-readable storage media of  claim 15 , wherein when executed, the plurality of instructions further cause the compute sled to send, in response to a determination that the second object identifier matches an identifier of an object mapped to the data storage sled, an identifier of the data storage sled associated with the second object identifier. 
     
     
         17 . The one or more machine-readable storage media of  claim 13 , wherein to send, through the network and with a local data bus protocol mapped onto a network protocol, a write request comprises to tunnel the write request through a non-volatile memory express over fabric (NVMeOF) connection to the data storage sleds. 
     
     
         18 . The one or more machine-readable storage media of  claim 13 , wherein to map the object to the data storage sleds comprises to map the object to data storage sleds in different failure domains. 
     
     
         19 . The one or more machine-readable storage media of  claim 13 , wherein to send the metadata comprises to send one or more of an object identifier associated with the object or metadata indicative of one or more attributes of the object. 
     
     
         20 . The one or more machine-readable storage media of  claim 13 , wherein to map the object to the data storage sleds comprises to map the object as a function of a hash of a uniform resource locator of the object. 
     
     
         21 . The one or more machine-readable storage media of  claim 13 , wherein the circuitry is further to verify, prior to sending the write request to the mapped data storage sled, that the data payload represents an object that is not already stored. 
     
     
         22 . A method comprising:
 receiving, by a compute sled with a network interface controller, a data access request from a compute device, wherein the data access request includes a data payload indicative of an object to be stored;   mapping, by the compute sled, the object to a set of multiple data storage sleds for distributed storage of the object; and   sending, by the compute sled, a write request with the object and an object identifier to the mapped data storage sleds to store the object in one or more data storage devices located on each data storage sled and concurrently sending metadata without the object to one or more other compute sleds associated with the mapped data storage sleds.   
     
     
         23 . The method of  claim 22 , wherein mapping the object to the set of data storage sleds comprises reading, from a database present on the compute sled and associated with a map data service, data indicative of an association between an identifier of the object and the set of data storage sleds. 
     
     
         24 . The method of  claim 22 , wherein the compute sled is a first compute sled, the method further comprising:
 receiving, by the first compute sled, a request from a second compute sled to determine whether a second object is mapped to a data storage sled associated with the first compute sled, wherein the request includes a second object identifier; and   comparing, by the first compute sled and in response to receipt of the request, the object identifier to a database present on the first compute sled, wherein the database includes identifiers of objects stored in the data storage sled associated with the first compute sled.   
     
     
         25 . The method of  claim 24 , further comprising sending, by the compute sled and in response to a determination that the second object identifier matches an identifier of an object mapped to the data storage sled, an identifier of the data storage sled associated with the second object identifier.

Join the waitlist — get patent alerts

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

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