Claims Analysis
Total Claims: 22
Claim 1
Independent Claim
264 words
An improved transaction processing system of the type which includes: a plurality of transaction processors connected by a communication network, each of said processors having its own private storage; said transaction processing system having at least one partition of data which is subpartitioned into pages, said partition of data including a primary replica of said partition and a secondary replica of said partition, said primary replica being stored in said private storage of one of said processors and said secondary replica being stored in said private storage of another one of said processors; and a non-volatile log, said transaction processing system using a Write-Ahead Log protocol in which a modification to a page in said partition is not considered made until said modification is stored in said log; wherein the improvement comprises: means for generating a response indicating to a transaction requestor that a requested transaction on the primary replica has completed; means for updating said secondary replica from said primary replica by asynchronously sending modified pages from said primary replica to said secondary replica independently of the generation of the response by the means for generating and without imposing any page sending order or timing constraint; means for keeping track of the pages of said partition which have been modified in said primary replica and not yet modified in said secondary replica; and means for making said log accessible to both said processors which are storing a replica of said partition, whereby said secondary replica is maintained without imposing delay upon the processing of transactions on said primary replica by said one processor.
Claim 2
Dependent Claim
264 words
An improved transaction processing system of the type which includes: a plurality of transaction processors connected by a communication network, each of said processors having its own private storage; said transaction processing system having at least one partition of data which is subpartitioned into pages, said partition of data including a primary replica of said partition and a secondary replica of said partition, said primary replica being stored in said private storage of one of said processors and said secondary replica being stored in said private storage of another one of said processors; and a non-volatile log, said transaction processing system using a Write-Ahead Log protocol in which a modification to a page in said partition is not considered made until said modification is stored in said log; wherein the improvement comprises: means for generating a response indicating to a transaction requestor that a requested transaction on the primary replica has completed; means for updating said secondary replica from said primary replica by asynchronously sending modified pages from said primary replica to said secondary replica independently of the generation of the response by the means for generating and without imposing any page sending order or timing constraint; means for keeping track of the pages of said partition which have been modified in said primary replica and not yet modified in said secondary replica; and means for making said log accessible to both said processors which are storing a replica of said partition, whereby said secondary replica is maintained without imposing delay upon the processing of transactions on said primary replica by said one processor.
Claim 3
Dependent Claim
56 words
A transaction processing system as defined in claim 1 wherein said transaction processing system has a plurality of partitions of data, each of said plurality of partitions of data including a primary replica and at least one secondary replica, each of said replicas of a same partition being stored in different ones of said private storages.
Claim 4
Dependent Claim
23 words
A transaction processing system as defined in claim 2 wherein said partitions of data form a distributed database of the Shared Nothing type.
Claim 5
Dependent Claim
60 words
A transaction processing system as defined in claim 2 and further comprising a node manager for identifying the particular processor which is deemed to have said primary replica of any particular partition in its private storage and for identifying each particular processor which has one of said at least one secondary replica of said particular partition in its private storage.
Claim 6
Dependent Claim
48 words
A transaction processing system as defined in claim 4 wherein said node manager tracks the operational status of each of said replicas and in the event of failure of the primary replica of any partition identifies a non-failed secondary replica of said any partition as the primary replica.
Claim 7
Dependent Claim
32 words
A transaction processing system as defined in claim 2 wherein transactions are completed only against the particular replica of any partition which is identified by said node manager as the primary replica.
Claim 8
Dependent Claim
30 words
A transaction processing system as defined in claim 2 wherein any one replica of any one or more partitions can fail without thereby causing said transaction processing system to fail.
Claim 9
Dependent Claim
19 words
A transaction processing system as defined in claim 7 wherein a failed replica can be restored from said log.
Claim 10
Dependent Claim
25 words
A transaction processing system as defined in claim 7 wherein a failed replica of a partition can be restored from another replica of said partition.
Claim 11
Dependent Claim
90 words
A transaction processing system as defined in claim 1 wherein each of said private storages includes a non-volatile portion and a volatile portion, said replica of a partition stored in each of said private storages being permanently stored in said non-volatile portion thereof, individual pages of said primary replica being fetched to said volatile portion of said private storage of said one processor for use, at least some of said fetched pages becoming modified and being forced back to said non-volatile portion of said private storage of said one processor.
Claim 12
Dependent Claim
56 words
A transaction processing system as defined in claim 10 wherein said means for updating includes means for sending a modified page of said primary replica from said volatile private storage portion of said one processor to said volatile private storage portion of said another processor for transfer into said non-volatile storage portion of said another processor.
Claim 13
Dependent Claim
54 words
A transaction processing system as defined in claim 11 wherein said means for updating further comprises means for acknowledging to said one processor that a modified page of said primary replica sent from said volatile private storage portion of said one processor has been stored in said non-volatile storage portion of said another processor.
Claim 14
Dependent Claim
41 words
A transaction processing system as defined in claim 11 wherein said modified page is transferred into said non-volatile storage portion of said another processor before said modified page is forced back to said non-volatile private storage portion of said one processor.
Claim 15
Dependent Claim
40 words
A transaction processing system as defined in claim 11 wherein said modified page is sent to said private storage of said another processor when said modified page is forced back to said non-volatile private storage portion of said one processor.
Claim 16
Dependent Claim
42 words
A transaction processing system as defined in claim 11 wherein said means for keeping track includes table means for identifying pages of said partition that have been modified and not yet stored in said non-volatile private storage portion of said another processor.
Claim 17
Dependent Claim
71 words
A transaction processing system as defined in claim 15 wherein said table means includes a first dirty page table for identifying modified pages of said partition that have not yet been stored in said non-volatile private storage portion of said one processor and a second dirty page table for identifying modified pages of said partition that have not yet been stored in said non-volatile private storage portion of said another processor.
Claim 18
Dependent Claim
18 words
A transaction processing system as defined in claim 1 wherein said log is stored in a log server.
Claim 19
Dependent Claim
27 words
A transaction processing system as defined in claim 17 wherein said means for making said log accessible includes means connecting said log server to said transaction processors.
Claim 20
Dependent Claim
27 words
A transaction processing system as defined in claim 18 wherein said means for making said log accessible includes means connecting said log server to said communication system.
Claim 21
Dependent Claim
27 words
A transaction processing system as defined in claim 1 wherein said primary replica can be updated by multiple transactions asynchronously with the updating of the secondary replica.
Claim 22
Dependent Claim
71 words
A transaction processing system as defined in claim 1 wherein said private storage of said one processor includes volatile private storage and non-volatile private storage and said means for updating includes means for sending a modified page to said private storage of said another processor in response to said modified page being sent from said volatile private storage of said one processor to said non-volatile private storage of said one processor.