P
US10599348B2ActiveUtilityPatentIndex 52

Distributed transactions with token-associated execution

Assignee: PURE STORAGE INCPriority: Dec 22, 2015Filed: Jun 25, 2018Granted: Mar 24, 2020
Est. expiryDec 22, 2035(~9.5 yrs left)· nominal 20-yr term from priority
Inventors:HAYES JOHNLEE ROBERTOSTROVSKY IGORVAJGEL PETER
G06F 3/0637G06F 3/0622G06F 3/067G06F 3/0688G06F 3/0659
52
PatentIndex Score
0
Cited by
281
References
20
Claims

Abstract

A method of processing transactions associated with a command in a storage system is provided. The method includes receiving, at a first authority of the storage system, a command relating to user data. The method includes sending a transaction of the command, from the first authority to a second authority of the storage system, wherein a token accompanies the transaction and writing data in accordance with the transaction as permitted by the token into a partition that is allocated to the second authority in a storage device of the storage system.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A method of processing transactions in a storage system, comprising:
 sending a transaction of a command received by the storage system, from a first authority to a second authority of the storage system, wherein a token is associated with the transaction; and 
 writing data into a partition of storage memory in the storage system that is allocated to the second authority in accordance with the transaction, wherein command processing and transaction processing is performed without a global lock on the storage system. 
 
     
     
       2. The method of  claim 1 , wherein the token is generated by the second authority. 
     
     
       3. The method of  claim 1 , wherein while each transaction associated with the command is being executed, the system maintains a pre-transaction state. 
     
     
       4. The method of  claim 1 , wherein:
 each token is time-based; and 
 presence of a time-based token in one of a plurality of storage nodes of the storage system indicates permission to perform the associated transaction within a time span. 
 
     
     
       5. The method of  claim 1 , further comprising:
 processing multiple commands, each having multiple transactions, through multiple authorities in parallel, wherein the writing data associated with each of the multiple transactions for one of the multiple commands indicates the one of the multiple commands is committed. 
 
     
     
       6. The method of  claim 1 , wherein:
 neither completion of the transaction nor completion of the command is broadcast throughout the storage system. 
 
     
     
       7. The method of  claim 1 , further comprising:
 committing the command once each transaction of the command is written into an allocated partition. 
 
     
     
       8. A tangible, non-transitory, computer-readable media having instructions thereupon which, when executed by a processor, cause the processor to perform a method comprising:
 sending a transaction of a command received by the storage system, from a first authority to a second authority of the storage system, wherein a token is associated with the transaction; and 
 writing data into a partition of storage memory in the storage system that is allocated to the second authority in accordance with the transaction, wherein command processing and transaction processing is performed without a global lock on the storage system. 
 
     
     
       9. The computer-readable media of  claim 8 , wherein the token is generated by the second authority. 
     
     
       10. The computer-readable media of  claim 8 , wherein while each transaction associated with the command is being executed, the system maintains a pre-transaction state. 
     
     
       11. The computer-readable media of  claim 8 , wherein:
 each token is time-based; and 
 presence of a time-based token in one of a plurality of storage nodes indicates permission to perform the associated transaction within a time span. 
 
     
     
       12. The computer-readable media of  claim 8 , wherein the method further comprises:
 processing multiple commands, each having multiple transactions, through multiple authorities in parallel, wherein the writing data associated with each of the multiple transactions for one of the multiple commands indicates the one of the multiple commands is committed. 
 
     
     
       13. The computer-readable media of  claim 8 , wherein:
 neither completion of the transaction nor completion of the command is broadcast throughout the storage system. 
 
     
     
       14. The computer-readable media of  claim 8 , wherein the method further comprises:
 committing the command once each transaction of the command is written into an allocated partition. 
 
     
     
       15. A storage system comprising:
 a memory; and 
 a processing unit having a processor configured to execute actions, the actions comprising:
 sending a transaction of a command received by the storage system, from a first authority to a second authority of the storage system, wherein a token is associated with the transaction; and
 writing data into a partition of storage memory in the storage system that is allocated to the second authority in accordance with the transaction, wherein command processing and transaction processing is performed without a global lock on the storage system. 
 
 
 
     
     
       16. The storage system of  claim 15 , wherein the token is generated by the second authority. 
     
     
       17. The storage system of  claim 15 , wherein while each transaction associated with the command is being executed, the system maintains a pre-transaction state. 
     
     
       18. The storage system of  claim 15 , wherein:
 each token is time-based; and 
 presence of a time-based token in one of a plurality of storage nodes indicates permission to perform the associated transaction within a time span. 
 
     
     
       19. The storage system of  claim 15 , wherein the actions further comprise:
 processing multiple commands, each having multiple transactions, through multiple authorities in parallel, wherein the writing data associated with each of the multiple transactions for one of the multiple commands indicates the one of the multiple commands is committed. 
 
     
     
       20. The storage system of  claim 15 , wherein:
 neither completion of the transaction nor completion of the command is broadcast throughout the storage system.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.