发明名称 ATOMIC WRITES FOR MULTIPLE-EXTENT OPERATIONS
摘要 A node of a storage service is selected as a coordinator of a distributed transaction involving multiple page-level modifications. The coordinator identifies other nodes as members of a node chain collectively storing physical data pages at which proposed modifications are to be performed, including a decider node responsible for a decision to commit the transaction. The coordinator generates a transaction preparation message comprising a representation of an order of respective commit decisions associated with the proposed modifications, and transmits the message to a selected node of the chain for a sequential propagation along the chain. Each chain node performs a local commit analysis for its changes and stores a record of its intent to commit. If a decision to commit is reached at the decider, the proposed modifications are completed.
申请公布号 US2015277969(A1) 申请公布日期 2015.10.01
申请号 US201414231077 申请日期 2014.03.31
申请人 Amazon Technologies, Inc. 发明人 STRAUSS JACOB A.;FRIGO MATTEO;HAUGLAND ALEX;OIKARINEN MATTI JUHANI;VINCENT PRADEEP;HENDRICKSON JOSHUA SAMUEL
分类号 G06F9/46 主分类号 G06F9/46
代理机构 代理人
主权项 1. A system, comprising: one or more computing devices configured to: select a particular component of a multi-tenant file storage service as a coordinator of a distributed transaction;generate, at the coordinator, a transaction preparation message comprising at least: (a) an indication of a respective proposed page modification to be performed at each page of a set of physical data pages managed by the service, and (b) an order in which respective page-level commit decisions associated with the proposed page modifications are to be made;propagate the transaction preparation message sequentially among nodes of a storage node chain collectively storing the set of physical data pages, wherein the storage node chain ends at a decider node designated by the coordinator as responsible for a decision to commit the distributed transaction;in response to receiving the transaction preparation message at a particular storage node of the chain other than the decider node, store, at a persistent repository, subsequent to a commit analysis of a proposed modification to a physical data page of the particular storage node, a record of an intent to perform the proposed modification, wherein the commit analysis includes an examination of a logical timestamp corresponding to a read of the physical data page;lock the physical data page of the particular storage node; andtransmit the transaction preparation message to a next storage node of the storage node chain;in response to receiving the transaction preparation message at the decider node, determine, subsequent to a commit analysis of a proposed modification to a physical data page of the decider node, that the distributed transaction is to be committed;initiate the proposed modification to the physical data page of decider node; andinitiate a propagation of a transaction commit message to other nodes of the chain; andin response to receiving the transaction commit message at a particular storage node of the chain, initiate a proposed modification corresponding to the record of the intent to commit; andrelease the lock on the physical data page.
地址 Reno NV US