Sharing live data with a non cooperative DBMS
First Claim
Patent Images
1. A data-sharing method wherein a non-cooperative DBMS of a primary computer system participates in unaware applications and has a cache, respective lock structures, database log files and database data files responsive to data requests generated by the unaware applications, said method comprising the steps of:
- (a) nonintrusively monitoring data written to said database log files and said database data files and communicating information as to data written to said files to a secondary DBMS running on a potentially different computer and having a secondary cache and secondary lock requests and responsive to data requests by other unaware applications; and
(b) processing data in said secondary DBMS between said other unaware applications and with said secondary cache and said secondary lock requests while reading data from said non-cooperative DBMS data files without interrupting update or retrieval activities of said non-cooperative DBMS and while isolating said non-cooperative DBMS from said other applications, thereby enabling said other unaware applications to access the data maintained by said non-cooperative DBMS.
7 Assignments
0 Petitions
Accused Products
Abstract
The log file maintained by a DBMS is used, possibly in conjunction with hardware that listens to the communication between a computer and the storage controller to create cache buffers and a locking mechanism that enable applications running on one computer system to consistently access the data maintained and updated by a different computer.
246 Citations
19 Claims
-
1. A data-sharing method wherein a non-cooperative DBMS of a primary computer system participates in unaware applications and has a cache, respective lock structures, database log files and database data files responsive to data requests generated by the unaware applications, said method comprising the steps of:
-
(a) nonintrusively monitoring data written to said database log files and said database data files and communicating information as to data written to said files to a secondary DBMS running on a potentially different computer and having a secondary cache and secondary lock requests and responsive to data requests by other unaware applications; and
(b) processing data in said secondary DBMS between said other unaware applications and with said secondary cache and said secondary lock requests while reading data from said non-cooperative DBMS data files without interrupting update or retrieval activities of said non-cooperative DBMS and while isolating said non-cooperative DBMS from said other applications, thereby enabling said other unaware applications to access the data maintained by said non-cooperative DBMS.
-
-
2. A data-sharing method wherein a non-cooperative DBMS of a primary computer system participates in unaware applications and has a cache, respective lock structures, database log files and database data files responsive to data requests generated by the unaware applications, said method comprising the steps of;
-
(a) nonintrusively monitoring data written to said database log files and said database data files and communicating information as to data written to said files to a secondary DBMS running on a potentially different computer and having a secondary cache and secondary lock requests and responsive to data requests by other unaware applications;
(b) processing data in said secondary DBMS between said other unaware applications and with said secondary cache and said secondary lock requests while reading data from said non-cooperative DBMS data files without interrupting update or retrieval activities of said non-cooperative DBMS and while isolating said non-cooperative DBMS from said other applications, thereby enabling said other unaware applications to access the data maintained by said non-cooperative DBMS; and
(c)intercepting data written by said primary computer system to said non-cooperative DBMS and parsing the intercepted data nonintrusively with respect to said primary computer system with a listener and utilizing the parsed intercepted data to establish said secondary cache and secondary lock requests shielding said other unaware applications from inconsistent data of said primary computer system. - View Dependent Claims (3, 4, 5)
-
-
6. A data-sharing method wherein a non-cooperative DBMS of a primary computer system participates in unaware applications and has a cache, respective lock structures, database log files and database data files responsive to data requests generated by the unaware applications, said method comprising the steps of:
-
(a) nonintrusively monitoring data written to said database log files and said database data files and communicating information as to data written to said files to a secondary DBMS running on a potentially different computer and having a secondary cache and secondary lock requests and responsive to data requests by other unaware applications; and
(b) processing data in said secondary DBMS between said other unaware applications and with said secondary cache and said secondary lock requests while reading data from said non-cooperative DBMS data files without interrupting update or retrieval activities of said non-cooperative DBMS and while isolating said non-cooperative DBMS from said other applications, thereby enabling said other unaware applications to access the data maintained by said non-cooperative DBMS;
said secondary DBMS operating with items of interest having a structure consisting of a part defining an item type distinguishing between parts of a data base, a part defining an identity of the item in the database, a “
dirty”
part describing parts of an item not previously transferred to storage, a part describing a previous transaction involving the item to permit updating of that transaction, a part describing a locking transaction, a part facilitating application of an optimization algorithm, a list of pending reads identifying processes which have shown interest in the item, a part representing a before image constituting a pointer to data represented by the item before the transaction, a part representing an after image of data subsequent to the transaction and a part representing a transaction initiated by a respective one of said other unaware applications. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A data-sharing method wherein a non-cooperative DBMS of a primary computer system participates in unaware applications and has a cache, respective lock structures, database log files and database data files responsive to data requests generated by the unaware applications, said method comprising the steps of:
-
(a) nonintrusively monitoring data written to said database log files and said database data files and communicating information as to data written to said files to a secondary DBMS running on a potentially different computer and having a secondary cache and secondary lock requests and responsive to data requests by other unaware applications; and
(b) processing data in said secondary DBMS between said other unaware applications and with said secondary cache and said secondary lock requests while reading data from said non-cooperative DBMS data files without interrupting update or retrieval activities of said non-cooperative DBMS and while isolating said non-cooperative DBMS from said other applications, thereby enabling said other unaware applications to access the data maintained by said non-cooperative DBMS;
said primary computer system having a controller, said method further comprising the step of speeding a response time of said non-cooperative DBMS and reducing an I/O load on said controller by intercepting and eliminating the physical write operations directed to a database of the non-cooperative DBMS, and utilizing said controller to intercept log writes to automatically trigger writes to a disk of the non-cooperative DBMS, and for directly responding to read requests relying on data cached in memory of said non-cooperative DBMS.
-
-
12. A data-sharing method wherein a non-cooperative DBMS of a primary computer system participates in unaware applications and has a cache, respective lock structures, database log files and database data files responsive to data requests generated by the unaware applications, said method comprising the steps of:
-
(a) nonintrusively monitoring data written to said database log files and said database data files and communicating information as to data written to said files to a secondary DBMS running on a potentially different computer and having a secondary cache and secondary lock requests and responsive to data requests by other unaware applications;
(b) processing data in said secondary DBMS between said other unaware applications and with said secondary cache and said secondary lock requests while reading data from said non-cooperative DBMS data files without interrupting update or retrieval activities of said non-cooperative DBMS and while isolating said non-cooperative DBMS from said other applications, thereby enabling said other unaware applications to access the data maintained by said non-cooperative DBMS; and
at least one of said DBMSs being provided with a time function keeping a transaction time for an entire duration of each transaction and creating an appearance of a transaction occurring at a single point in time, thereby supporting true repeatable read and serializable transactions, and wherein, for each transaction requiring a “
repeatable read”
or “
serializable”
isolation level, a transaction snapshot entry is created which includes a transaction identifier identifying the transaction, a log position identifier containing a last position in the log that has been read at the instant the transaction is initiated, a time stamp serving for date-related functions required by the logic for the transaction and a process identifier pointing to a process which issued the transaction.
-
-
13. A computer system comprised of a secondary DBMS, a secondary cache and secondary lock structures and connectable for data sharing with a non-cooperative DBMS of a primary computer which participates in unaware, applications and has a cache, respective lock structures, database log files and database data files responsive to data requests generated by the unaware applications, said computer system having a listener connected to said non-cooperative DBMS for:
-
(a) nonintrusively monitoring data written to said database log files and communicating information as to data written to said files to said secondary DBMS of said computer system, said computer system being responsive to data requests by other unaware applications; and
(b) processing data in said secondary DBMS between said other unaware applications and with said secondary cache and said secondary lock requests while reading data from said non-cooperative DBMS with said secondary DBMS without interrupting update or retrieval activities of said non-cooperative DBMS and while isolating said non-cooperative DBMS from said other applications, thereby enabling said other unaware applications to access the data maintained by the non-cooperative DBMS. - View Dependent Claims (14, 15)
-
-
16. A computer system comprised of a secondary DBMS, a secondary cache and secondary lock structures and connectable for data sharing with a non-cooperative DBMS of a primary computer which participates in unaware applications and has a cache, respective lock structures, database log files and database data files responsive to data requests generated by the unaware applications, said computer system having a listener connected to said non-cooperative DBMS for:
-
(a) nonintrusively monitoring data written to said database log files and communicating information as to data written to said files to said secondary DBMS of said computer system, said computer system being responsive to data requests by other unaware applications; and
(b) processing data in said secondary DBMS between said other unaware applications and with said secondary cache and said secondary lock requests while reading data from said non-cooperative DBMS with said secondary DBMS without interrupting update or retrieval activities of said non-cooperative DBMS and while isolating said non-cooperative DBMS from said other applications, thereby enabling said other unaware applications to access the data maintained by the non-cooperative DBMS said listener being connected to intercepting data written by said primary computer to said non-cooperative DBMS and is programmed to parse the intercepted data nonintrusively with respect to said primary computer and utilize the parsed intercepted data to establish said secondary cache and secondary lock requests shielding unaware applications executed in said computer system from inconsistent data of said primary computer. - View Dependent Claims (17)
-
-
18. A computer system comprised of a secondary DBMS, a secondary cache and secondary lock structures and connectable for data sharing with a non-cooperative DBMS of a primary computer which participates in unaware applications and has a cache, respective lock structures, database log files and database data files responsive to data requests generated by the unaware applications, said computer system having a listener connected to said non-cooperative DBMS for:
-
(a) nonintrusively monitoring data written to said database log files and communicating information as to data written to said files to said secondary DBMS of said computer system, said computer system being responsive to data requests by other unaware applications; and
(b) processing data in said secondary DBMS between said other unaware applications and with said secondary cache and said secondary lock requests while reading data from said non-cooperative DBMS with said secondary DBMS without interrupting update or retrieval activities of said non-cooperative DBMS and while isolating said non-cooperative DBMS from said other applications, thereby enabling said other unaware applications to access the data maintained by the non-cooperative DBMS, said listener, said secondary DBMS and said secondary cache being provided in a single hardware unit separately from a computer on which said other applications are run said listener and said secondary DBMS being combined with a storage controller responsive to SQL select and other data manipulation read commands retrieving data of said non-cooperative DBMS. - View Dependent Claims (19)
-
Specification