Transaction processing method and system

US9348841B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9348841-B2
Application numberUS-201514733705-A
CountryUS
Kind codeB2
Filing dateJun 8, 2015
Priority dateOct 29, 2013
Publication dateMay 24, 2016
Grant dateMay 24, 2016

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

The present invention provides a transaction processing method, which is applied to a node presenting a coordinator, where the coordinator is communicatively connected to nodes presenting participants. The method includes: sending, by the coordinator, a query message to each participant; drawing, by the coordinator, a conclusion according to response messages, executing, by the coordinator, the conclusion, and sending the conclusion to the participants, where the conclusion can be determined by a transaction ID, a object ID and a change information.

First claim

Opening claim text (preview).

What is claimed is: 1. A transaction processing method, performed by an object-based storage device (OSD) in an OSD system that includes a first OSD acting as a coordinator and other OSDs acting as participants, the method comprising: electing a second OSD from the other OSDs as a new coordinator when the first OSD is faulty, wherein a coordinator determines whether to commit or revoke a transaction, a transaction is writing, deleting, or modifying an object, an object is distributed data stored in other OSDs, and a participant executes a determined transaction; sending, by the second OSD, a query message to the remaining OSDs acting as participants, wherein the query message carries: a transaction ID of the transaction in the second OSD, an object ID in the second OSD, and a version ID of the object in the second OSD, wherein the object obtains a new version ID when content of the object updated; receiving, by the second OSD, a response message for the query message from the remaining OSDs acting as participants, wherein the response message designates whether the transaction ID, object ID and the version received exist locally in the remaining OSDs; executing the transaction and releasing a resource occupied by the transaction after executing, by the second OSD, when the second OSD determines based on the response message from any one of the remaining OSDs acting as participants that the transaction ID does not exist, the object ID exists, and the version ID exists; and instructing, by the second OSD, all the remaining OSDs acting as participants to execute the transaction and release the resource occupied by the transaction after executing. 2. The method according to claim 1 , wherein, before the electing, the method further comprises: sending, by the first OSD, the transaction ID, the object ID and the second OSD to the other OSDs. 3. The method according to claim 1 , wherein, before the electing, the method further comprises: sending, by the first OSD, an operation request to the other OSDs, wherein the operation request carries the object ID, an operation type, and the version ID; and sending, by the first OSD, a prepare command to the other OSDs, wherein the prepare command carries the transaction ID, the object ID, and the version ID; and allocating, by the other OSDs, the resource for the transaction. 4. An object-based storage device (OSD) system, the OSD system comprising: a plurality of OSDs, each of which comprises a processor; a first OSD acting as a coordinator; other OSDs acting as participants, wherein a coordinator determines whether to commit or revoke a transaction, a transaction is writing, deleting, or modifying an object, an object is distributed data stored in the other OSDs, and a participant executes a determined transaction; wherein a second OSD from the other OSDs is elected as a new coordinator when the first OSD is faulty; wherein the second OSD is configured to send a query message to the remaining OSDs acting as participants, wherein the query message carries: a transaction ID of the transaction in the second OSD, an object ID in the second OSD, and a version ID of the object in the second OSD, wherein the object obtains a new version ID when content of the object updated; wherein the remaining OSDs acting as participants are configured to: receive the query message and determine whether the transaction ID, the object ID and the version received exist locally, and send, to the second OSD, a response message regarding the query message; and wherein both the second OSD and the remaining OSDs acting as participants are further configured to execute the transaction, and release a resource occupied by the transaction after executing, if the response message from any of the remaining OSD designates that the transaction ID does not exist, the object ID exists, and the version ID exists. 5. The system according to claim 4 , wherein: the second OSD and the remaining OSDs acting as participants are further configured to execute the transaction, and release a resource occupied by the transaction after executing, if the response message from all remaining OSDs are that the transaction ID exists; and the second OSD and the remaining OSDs acting as participants are further configured to execute the transaction, and release a resource occupied by the transaction after executing, if the response message from any remaining OSD is that both the transaction ID and the object ID do not exist. 6. A transaction processing method, performed by an object-based storage device (OSD) system that includes a first OSD acting as a coordinator and other OSDs acting as participants, the method comprising: electing a second OSD from the other OSDs as a new coordinator when the first OSD is faulty, wherein a coordinator determines whether to commit or revoke a transaction, a transaction is writing, deleting, or modifying an object, an object is distributed data stored in other OSDs, and a participant executes a determined transaction; sending, by the second OSD, a query message to the remaining OSDs acting as participants, wherein the query message carries: a transaction ID of the transaction in the second OSD and an object ID in the second OSD; receiving, by the remaining OSDs acting as participants, the query message and determining whether the transaction ID and the object ID exist locally; receiving, by the second OSD, a response message for the query message from the remaining OSDs acting as participants, wherein the response message indicates whether the transaction ID and the object ID received exist locally in the remaining OSDs and further indicates a version ID locally; and performing one of: executing the transaction and releasing a resource occupied by the transaction after executing, by the second OSD, when the second OSD determines based on the response message from any one of the remaining OSDs acting as participants that the transaction ID does not exist, the object ID exists, and the version ID exists in the second OSD; and instructing, by the second OSD, all the remaining OSDs acting as participants to execute the transaction and release the resource occupied by the transaction after executing; or revoking the transaction and releasing a resource occupied by the transaction after revoking, by the second OSD, when the second OSD determines based on the response message from any one of the remaining OSDs acting as participants that the transaction ID does not exist, the object ID exists, and the version ID does not exist in the second OSD; and instructing, by the second OSD, all the remaining OSDs acting as participants to revoke the transaction and release the resource occupied by the transaction after revoking. 7. The method according to claim 6 , wherein, before the electing, the method further comprises: sending, by the first OSD, the transaction ID, the object ID and the second OSD to the other OSDs. 8. The method according to claim 6 , wherein, before the electing, the method further comprises: sending, by the first OSD, an operation request to the other OSDs, wherein the operation request carries the object ID, an operation type, and the version ID; and sending, by the first OSD, a prepare command to the other OSDs, wherein the prepare command carries the transaction ID, the object ID and the version ID; and allocating, by the other OSDs, the resource for the transaction. 9. An object-based storage device (OSD) system, the OSD system comprising: a plurality of OSDs, each of which comprises a processor; a first OSD acting as a coordinator; other OSDs acting as participants, wherein a coordinator determines whether to commit or revoke a transaction, a transaction is writing, deleting, or modifying an object, an object is distributed data stored in the ot

Assignees

Inventors

Classifications

  • Ensuring data consistency and integrity · CPC title

  • Updates performed during online database operations; commit processing · CPC title

  • Transactional file systems · CPC title

  • Information retrieval; Database structures therefor; File system structures therefor · CPC title

  • Event management; Broadcasting; Multicasting; Notifications · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9348841B2 cover?
The present invention provides a transaction processing method, which is applied to a node presenting a coordinator, where the coordinator is communicatively connected to nodes presenting participants. The method includes: sending, by the coordinator, a query message to each participant; drawing, by the coordinator, a conclusion according to response messages, executing, by the coordinator, the…
Who is the assignee on this patent?
Huawei Tech Co Ltd
What technology area does this patent fall under?
Primary CPC classification G06F16/2365. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue May 24 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).