Compatibility Server for Database Rehosting
First Claim
1. A system for allowing an application written for a first database from a first vendor to be used with a second database from a second vendor comprising a compatibility server for emulating said second database when requests are received from an application written for said first database.
2 Assignments
0 Petitions
Accused Products
Abstract
A system and method describing a compatibility server for rehosting database applications written for a specific vendor'"'"'s database on the database of a second vendor, without the need of rewriting the application to take into account differences in the application programming interfaces between the first vendor'"'"'s database and the second vendor'"'"'s database. Requests for access to the database are translated from one format to another at execution time. The server is also capable of translating error messages, data types and data formatting from the format used by the second database to that expected when making requests to the first database. Stored procedures defined in the first database are migrated to the second database as text blocks, and are translated at execution time into a high level programming language, compiled and executed against the second database. All information necessary for the mapping of schema, data, data types, error and status messages and data formatting, as well as information necessary to execute stored procedures, is stored in a plurality of metadata tables in the second database, which are created during a migration phase prior to executing the application.
-
Citations
32 Claims
- 1. A system for allowing an application written for a first database from a first vendor to be used with a second database from a second vendor comprising a compatibility server for emulating said second database when requests are received from an application written for said first database.
- 20. A method for allowing an application written for a first database from a first vendor to be used with a second database from a second vendor comprising the step of providing an interface to said second database which caused said second database to emulate said first database
-
30. A compatibility server for allowing an application running on a client written for a first database from a first vendor to be used with a second database from a second vendor comprising:
-
a. a communications component, for handling communications between said application running on said client and said compatibility server; b. a syntax checker, for verifying that requests for database access received from said application are in the dialect of said first database; c. a request translator, for translating requests in the dialect of said first database to the dialect of said second database; d. a request executor, for executing said translated requests against said second database; e. a message handler;
for translating error and status messages received from said second database to those used by said first database;f. a result set handler, for formatting the results of queries from said second database to a format expected from said first database; g. a data type handler for translating from data types used by said second database to data types used by said first database; h. a privilege and authentication checker, for verifying the rights of users with respect to said requests; and i. a metadata handler for reading and interpreting metadata, said metadata describing mappings between said first database and said second database, said mappings including information regarding objects selected from a group comprising users, schema, data, data types, triggers, stored procedures, error and status messages and result set formats. - View Dependent Claims (31, 32)
-
Specification