US11630834B2ActiveUtilityA1

Label-based data representation I/O process and system

39
Assignee: Kougkas AnthonyPriority: Jun 2, 2020Filed: Jun 2, 2021Granted: Apr 18, 2023
Est. expiryJun 2, 2040(~13.9 yrs left)· nominal 20-yr term from priority
G06F 9/5038G06F 16/24573G06F 16/254G06F 9/546G06F 16/2471G06F 9/4881G06F 9/505G06F 16/182
39
PatentIndex Score
0
Cited by
15
References
20
Claims

Abstract

A system and method for executing input/output (I/O) tasks for clients in a distributed computing system. One or more I/O requests made by a client are received. The operation instructions for the request data in the I/O requests are separated from the request data. A data representation called data label (or label) is created for executing operation instructions of the I/O requests. A data label corresponds to each of the I/O request and includes a unique identifier, information to the source and/or destination for the request data, and an operation instruction separated from the request data. The data label is pushed into a distributed label queue and is dispatched to an individual worker node according to a scheduling policy. The worker node executes the I/O tasks by executing the dispatched data label. The system and method can execute I/O tasks independently and decoupled from the client applications.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A method for executing input/output (I/O) requests from clients in a distributed computing system, the method comprising:
 receiving an input/output (I/O) request made by a client for request data in a distributed data system; 
 creating a data label corresponding to the I/O request, the data label including a unique identifier, a data pointer to a source and/or destination for the request data, and an operation instruction for the request data based upon the I/O request; 
 pushing the data label into a distributed label queue; 
 executing the operation instruction to the request data as a function of a scheduling policy of the distributed label queue. 
 
     
     
       2. The method of  claim 1 , further comprising dispatching the data label to a worker node for the executing the operation instruction according to the scheduling policy. 
     
     
       3. The method of  claim 2 , wherein the worker node is a storage server coordinated by a worker manager, wherein the worker manager is configured to monitor a worker node status. 
     
     
       4. The method of  claim 2 , further comprising:
 regulating the executing the operation instruction to the data by the worker node as a function of a system load and a worker node ability to execute the data label at a current point in time, wherein the worker node ability is evaluated by worker availability, worker remaining capacity, worker load, worker performance characteristics, worker energy signature, or combinations thereof. 
 
     
     
       5. The method of  claim 1 , further comprising temporarily placing content data corresponding to the request data in a data warehouse. 
     
     
       6. The method of  claim 5 , further comprising:
 creating a metadata entry comprising an inventory of the content data; and 
 storing the metadata entry in a catalog manager, wherein the catalog manager comprises a data inventory. 
 
     
     
       7. The method of  claim 1 , wherein the unique identifier includes a timestamp given at creation of the data label, and further comprising:
 the distributed label queue ordering operation of the data label as a function of the timestamp. 
 
     
     
       8. The method of  claim 1 , wherein the data label further comprises a status indicator. 
     
     
       9. The method of  claim 1 , further comprising forming the data label from a native or intercepted application programming interface (API) and from information of the I/O request. 
     
     
       10. The method of  claim 1 , further comprising:
 pushing the request data to a data-warehouse, wherein the data-warehouse comprises a distributed hashmap configured to temporarily hold the request data; and 
 creating a metadata entry for the request data pushed into the data-warehouse in a catalog embodied as an inventory maintained by a catalog manager, wherein the catalog manager comprising a second distributed hashmap and configured to maintain metadata information. 
 
     
     
       11. The method of  claim 1 , wherein creating the data label is implemented by a label manager using a configurable size parameter within a range of minimum and maximum values, wherein the values are dependent on a plurality of system parameters selected from the group consisting of memory page size, cache size, network type, type of destination storage, or combinations thereof, wherein the size parameter can be configured to be bypassed for predetermined I/O requests including synchronous reads. 
     
     
       12. The method of  claim 1 , further comprising executing the operation instruction independent and/or decoupled from the client. 
     
     
       13. The method of  claim 1 , further comprising:
 receiving the request data; 
 pushing content data of the request data to a data-warehouse configured to temporarily hold moving pieces of data; 
 creating a metadata entry for the content data in an inventory catalog, wherein the inventory catalog maintains both client and system metadata information; and 
 wherein the data label includes the unique identifier for the content data and the metadata entry. 
 
     
     
       14. A method for executing input/output (I/O) requests from clients in a distributed computing system, the method comprising:
 receiving request data for one of the I/O requests from a client; 
 separating the request data into content data and metadata; 
 tagging the content data with an operation instruction of the one of the I/O requests; 
 pushing the content data to a data-warehouse configured to temporarily hold data in the system; 
 creating a metadata entry in an inventory catalog for the content data in the data-warehouse, wherein the inventory catalog comprises a distributed hashmap and is configured to maintain both client and system metadata information; and 
 creating a data label comprising the operation instruction and a unique identifier for the content data and the metadata. 
 
     
     
       15. The method of  claim 14 , further comprising:
 pushing the data label into a distributed label queue; 
 dispatching the data label to a worker node according to a scheduling policy; and 
 executing the operation instruction of the data label by the worker node. 
 
     
     
       16. The method of  claim 15 , wherein the data label includes a timestamp given at creation, and further comprising:
 the distributed label queue ordering operation of the data label as a function of the timestamp and the scheduling policy. 
 
     
     
       17. The method of  claim 15 , wherein the worker node executes the operation instruction of the data label independently without direct interaction with the client. 
     
     
       18. A system for input/output (I/O) requests from clients in a distributed computing system, the system comprising:
 an application programming interface (API) configured to receive an I/O request from one of the clients; 
 a data label; 
 a distributed label queue; 
 a label manager configured to create the data label and push the data label to the distributed label queue, the data label including a unique identifier and a data pointer to a source and/or destination for a request data corresponding to the I/O request; 
 a worker node configured to execute the data label; and 
 a label dispatcher configured to dispatch the data label to the worker node according to a scheduling policy. 
 
     
     
       19. The system of  claim 18 , further comprising:
 a worker manager configured to manage the worker node according to a load of the system and an ability of a worker node to execute the data label at a current point in time. 
 
     
     
       20. The system of  claim 18 , further comprising:
 a data-warehouse configured to temporarily hold data, wherein the request data is uniquely identified and associated with the data label in the data-warehouse; and 
 an inventory catalog including client and system metadata information.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.