Querying past versions of data in a distributed database
First Claim
1. A method for querying past versions of data in a distributed database comprising at least a first database and a second database logically connected via database links and appearing to client applications as a single database, the method comprising the computer-implemented steps of:
- receiving, at a first database server that manages data in a first database, a request for a past version of data stored in a second database that is managed by a second database server;
wherein the request indicates one or more conditions and a time specifying parameter;
wherein said time-specifying parameter corresponds to one or more prior logical states of the second database;
wherein the request for the past version of data stored in the second database is a request for data that, as the data existed in said one or more prior logical states of the second database, satisfied said one or more conditions, without regard to whether the data, as the data exists in a current state of the second database, satisfies the one or more conditions;
in response to said request, said first database server requesting said past version of said data from said second database server; and
receiving at said first database server a representation of said past version of said data, as said data existed in said second database at a prior point in time that corresponds to the time specifying parameter, from said second database server;
wherein the step of requesting said past version comprises passing to said second database server one of;
(a) a particular time that can be compared to a timestamp that is associated with said data to identify said past version of said data by said second database server;
or(b) a particular system change number that is associated with said data and is used to identify said past version of said data by said second database server, wherein a system change number is a logical time value indicating the sequence in which events occur within the second database server.
1 Assignment
0 Petitions
Accused Products
Abstract
Past versions of data in a distributed database system comprising multiple databases and associated database servers are queried using temporal database access mechanisms, where a request for data in a past state from a “remote” database can be received at a “local” database server and relevant portions of the request are passed to the remote server for processing. The processing performed by the remote server includes returning the requested data in the specified past state to the local server, or at least with enough information to reconstruct the data into the past state.
-
Citations
33 Claims
-
1. A method for querying past versions of data in a distributed database comprising at least a first database and a second database logically connected via database links and appearing to client applications as a single database, the method comprising the computer-implemented steps of:
-
receiving, at a first database server that manages data in a first database, a request for a past version of data stored in a second database that is managed by a second database server; wherein the request indicates one or more conditions and a time specifying parameter; wherein said time-specifying parameter corresponds to one or more prior logical states of the second database; wherein the request for the past version of data stored in the second database is a request for data that, as the data existed in said one or more prior logical states of the second database, satisfied said one or more conditions, without regard to whether the data, as the data exists in a current state of the second database, satisfies the one or more conditions; in response to said request, said first database server requesting said past version of said data from said second database server; and receiving at said first database server a representation of said past version of said data, as said data existed in said second database at a prior point in time that corresponds to the time specifying parameter, from said second database server; wherein the step of requesting said past version comprises passing to said second database server one of; (a) a particular time that can be compared to a timestamp that is associated with said data to identify said past version of said data by said second database server;
or(b) a particular system change number that is associated with said data and is used to identify said past version of said data by said second database server, wherein a system change number is a logical time value indicating the sequence in which events occur within the second database server. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32)
-
-
33. A system comprising:
-
means for receiving, at a first database server that manages data in a first database, a request for a past version of data stored in a second database that is managed by a second database server, wherein said first database and said second database are components of a distributed database and are logically connected via database links and appear to client applications as a single database; wherein the request indicates one or more conditions and a time-specifying parameter; wherein said time-specifying parameter corresponds to one or more prior logical states of the second database; wherein the request for the past version of data stored in the second database is a request for data that, as the data existed in said one or more prior logical states of the second database, satisfied said one or more conditions, without regard to whether the data, as the data exists in a current state of the second database, satisfies the one or more conditions; means for said first database server requesting said past version of said data from said second database server in response to said request; and means for receiving at said first database server a representation of said past version of said data, as said data existed in said second database at a prior point in time that corresponds to the time specifying parameter, from said second database server; wherein the step of requesting said past version comprises passing to said second database server one of; (a) a particular time that can be compared to a timestamp that is associated with said data to identify said past version of said data by said second database server;
or(b) a particular system change number that is associated with said data and is used to identify said past version of said data by said second database server, wherein a system change number is a logical time value indicating the sequence in which events occur within the second database server.
-
Specification