Cloud-based destination for block-level data replication processing
US-2024354022-A1 · Oct 24, 2024 · US
US9417974B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9417974-B2 |
| Application number | US-201313892180-A |
| Country | US |
| Kind code | B2 |
| Filing date | May 10, 2013 |
| Priority date | Mar 28, 2013 |
| Publication date | Aug 16, 2016 |
| Grant date | Aug 16, 2016 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Performing a transaction in the context of a computing system that has one or more persistent systems coupled to one or more processors over a bus. As an example, the persistent system may serve as at least part of the main memory of the computing system. The transaction might implement multi-versioning in which a record is not updated in place. Rather, each record is represented as a sequence of one or more record versions, each version having a valid interval during which the record version is considered to properly represent the record. As part of the transaction, post-commit processing information is generated to allow the computing system to recover in the event of a system failure.
Opening claim text (preview).
What is claimed is: 1. A method implemented by a computing system for performing a transaction on a collection of records in a persistent system coupled to one or more processors via a bus and to thereby enable multi-versioning with the persistent system in such a manner that facilitates placing the persistent system in a transactionally consistent state, the method comprising: for each record version that is created by the transaction, the computing system providing the record version to the persistent system via the bus; for each record version that is updated by the transaction, the computing system providing at least a portion of the record version to the persistent system via the bus; the computing system logging in a log buffer post-commit processing information including at least a commit marker for the transaction and a pointer for each record version that is created by the transaction and for each record version that is updated by the transaction; an act of providing the log buffer with the post-commit processing information to the persistent system subsequent to the logging; and an act of confirming that the record versions provided to the persistent memory, as well as the log buffer with the post-commit processing information, have been persisted in the persistent system to thereby facilitate placing the persistent system in a transactionally consistent state, the act of confirming including: issuing a separate persist command to the persistent system, subsequent to providing the record versions and the log buffer to the persistent system, the persist command causing any data provided to the persistent system that has not yet been made durable to be made durable in the persistent system; and receiving a return confirmation responsive to the persist command. 2. The method in accordance with claim 1 , wherein for each record version that is updated by the transaction, the portion of the record version provided to persistent system includes a valid interval end boundary for the corresponding record version. 3. The method in accordance with claim 1 , further comprising: an act of associating a log buffer with the transaction, and preparing the log buffer for filling, wherein the act of logging comprises an act of providing the post-commit processing information into the log buffer that has been prepared for filling, and wherein the act of providing the post-commit processing information to the persistent main memory comprises an act of providing the log buffer to the persistent system. 4. The method in accordance with claim 1 , further comprising: an act of validating one or more read operations of the transaction. 5. The method in accordance with claim 1 , further comprising: an act of validating one or more scan operations of the transaction. 6. The method in accordance with claim 1 , further comprising: an act of committing the transaction after the act of confirming. 7. The method in accordance with claim 6 , wherein the act of committing comprises: an act closing a status of the post-commit processing information so that it is not further added to; and an act of persisting the closed state of the post-commit processing information to the persistent system. 8. The method in accordance with claim 7 , wherein the act of persisting the closed state comprises: an act of providing the closed state of the post-commit processing operation to the persistent system; and an act of confirming that the closed state of the post-commit processing operation has been persisted in the persistent system. 9. The method in accordance with claim 7 , wherein the post-commit processing information is located in a current log buffer, wherein the act of persisting the closed state of the post-commit processing information comprises: an act of providing the closed state of the post-commit processing operation to the persistent system by providing a filled state of a current log buffer to the persistent system; an act of freeing up a prior log buffer in which post-commit processing information from a prior transaction was located; an act of providing the freed state of the prior log buffer to the persistent system; and an act of confirming that the filled state of the current log buffer and the freed state of the prior log buffer have been persisted to the persistent system by issuing a new persist command to the persistent system. 10. The method in accordance with claim 9 , further comprising: an act of terminating the prior transaction after the act of confirming that the filled state of the current log buffer and the freed state of the prior log buffer have been persisted to the persistent system. 11. The method in accordance with claim 10 , further comprising: for each written record version that is created or updated by the transaction, an act of updating a valid interval using the post-commit processing information. 12. The method in accordance with claim 11 , further comprising: an act of providing the updated valid interval for each of the written record versions to the persistent system. 13. The method in accordance with claim 12 , wherein the current transaction is not removed from a transaction map until after the method is again begun for a subsequent transaction. 14. The method in accordance with claim 1 , further comprising: for each written record version that is created or updated by the transaction, an act of updating a valid interval using the post-commit processing information. 15. The method in accordance with claim 14 , further comprising: an act of providing the updated valid interval for each of the written record versions to the persistent system. 16. The method in accordance with claim 15 , further comprising: an act of confirming that the updated valid interval for each of the written record versions has been persisted to the persistent system. 17. The method in accordance with claim 16 , further comprising: an act of terminating the transaction after the act of confirming that the updated valid interval for each of the written record versions has been persisted to the persistent system. 18. The method in accordance with claim 1 , further comprising: for each record version that is created by the transaction, an act of updating a valid interval begin boundary using the post-commit processing information; and for each record version that is updated by the transaction, an act of updating a valid interval end boundary using the post-commit processing information. 19. A system comprising: one or more processors; a persistent system capable of persisting data; a bus coupling the one or processors to the persistent system, wherein the persistent system has an addressing system that is addressable by the one or more processors via the system bus; and a transaction system configured to complete a transaction utilizing multi-versioning with the persistent system in a manner that facilitates placing the persistent system in a transactionally consistent state by performing the following: for each record version that is created by the transaction, an act of providing the record version to the persistent system; for each record version that is updated by the transaction, an act of providing at least a portion of the record version to the persistent system; an act of logging in a log buffer post-commit processing information including at least a commit marker for the transaction and a pointer for each record version that is created by the transaction and for each record version tha
involving logging of persistent data for recovery · CPC title
Physics · mapped topic
Restarting or rejuvenating · CPC title
Management of the backup or restore process · CPC title
Backup restoration techniques · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.