Multi-stream transactional event processing in a distributed log-based append-only datastore
US-11874822-B1 · Jan 16, 2024 · US
US9679003B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9679003-B2 |
| Application number | US-201514591053-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jan 7, 2015 |
| Priority date | Jan 7, 2015 |
| Publication date | Jun 13, 2017 |
| Grant date | Jun 13, 2017 |
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.
A concurrent transaction validate phase with the transaction operations read, compute, and write allows for a rendezvous-based optimistic concurrency control process.
Opening claim text (preview).
What is claimed is: 1. A method for processing a transaction, the method comprising: decoupling a validation operation from one or more of a read operation, a write operation, and a compute operation of a transaction to establish a set of transaction operations; responsive to a first transaction operation of a set of transaction operations reading a first record, issuing a read subscription; responsive to a second transaction operation of the set of transaction operations modifying the first record, issuing a write publication; notifying the read subscription when a third transaction operation of the set of transaction operations modifies the first record; entering a commit phase of the transaction based upon the following conditions: (i) the read subscription and the write publication are both complete; and (ii) the set of transaction operations are complete; committing the transaction based, at least in part, upon receiving a publication of a transaction commit timestamp before receiving a committed write publication; and aborting the transaction based, at least in part, upon receiving a committed write publication for a transaction operation not within the set of transaction operations that modified the first record; wherein: at least the issuing a read subscription, issuing a write publication, and committing the transaction steps are performed by computer software running on computer hardware. 2. The method of claim 1 , wherein the transaction is divided into two queues, a message queue and an operation queue. 3. The method of claim 1 , wherein the validation operation is performed asynchronous to a performance of the one or more of a read operation, a write operation, and a compute operation of the transaction. 4. The method of claim 1 , further comprising: requesting a transaction timestamp based upon the following conditions: (i) the read subscription and the write publication are both complete; and (ii) the set of transaction operations are complete. 5. A computer program product for processing a transaction, the computer program product comprising a computer readable storage medium having stored thereon: first program instructions programmed to decouple a validation operation from one or more of a read operation, a write operation, and a compute operation of a transaction to establish a set of transaction operations; second program instructions programmed to, responsive to a first transaction operation of a set of transaction operations reading a first record, issue a read subscription; third program instructions programmed to, responsive to a second transaction operation of the set of transaction operations modifying the first record, issue a write publication; fourth program instructions programmed to notify the read subscription when a third transaction operation of the set of transaction operations modifies the first record; fifth program instructions programmed to enter a commit phase of the transaction based upon the following conditions: (i) the read subscription and the write publication are both complete; and (ii) the set of transaction operations are complete; sixth program instructions programmed to commit the transaction based, at least in part, upon receiving a publication of a transaction commit timestamp before receiving a committed write publication; and seventh program instructions programmed to abort the transaction based, at least in part, upon receiving a committed write publication for a transaction operation not within the set of transaction operations that modified the first record. 6. The computer program product of claim 5 , wherein the transaction is divided into two queues, a message queue and an operation queue. 7. The computer program product of claim 5 , wherein the validation operation performed asynchronous to a performance of the one or more of a read operation, a write operation, and a compute operation of the transaction. 8. The computer program product of claim 5 , further comprising: fifth program instructions programmed to request a transaction timestamp based upon the following conditions: (i) the read subscription and the write publication are both complete; and (ii) the set of transaction operations are complete. 9. A computer system for processing a transaction, the computer system comprising: a processor(s) set; and a computer readable storage medium; wherein: the processor set is structured, located, connected, and/or programmed to run program instructions stored on the computer readable storage medium; and the program instructions include: first program instructions programmed to decouple a validation operation from one or more of a read operation, a write operation, and a compute operation of a transaction to establish a set of transaction operations; second program instructions programmed to, responsive to a first transaction operation of a set of transaction operations reading a first record, issue a read subscription; third program instructions programmed to, responsive to a second transaction operation of the set of transaction operations modifying the first record, issue a write publication; fourth program instructions programmed to notify the read subscription when a third transaction operation of the set of transaction operations modifies the first record; fifth program instructions programmed to enter a commit phase of the transaction based upon the following conditions: (i) the read subscription and the write publication are both complete; and (ii) the set of transaction operations are complete; sixth program instructions programmed to commit the transaction based, at least in part, upon receiving a publication of a transaction commit timestamp before receiving a committed write publication; and seventh program instructions programmed to abort the transaction based, at least in part, upon receiving a committed write publication for a transaction operation not within the set of transaction operations that modified the first record. 10. The computer system of claim 9 , wherein the transaction is divided into two queues, a message queue and an operation queue. 11. The computer system of claim 9 , wherein the validation operation is performed asynchronous to a performance of the one or more of a read operation, a write operation, and a compute operation of the transaction. 12. The computer system of claim 9 , the program instructions further include: fifth program instructions programmed to request a transaction timestamp based upon the following conditions: (i) the read subscription and the write publication are both complete; and (ii) the set of transaction operations are complete.
Optimistic concurrency control · CPC title
Updates performed during online database operations; commit processing · CPC title
Physics · mapped topic
Physics · mapped topic
Related publications grouped by family.
Answers are generated from the same data shown on this page.