Heterogenous database communication system in which communicating systems identify themselves and convert any requests/responses into their own data format
First Claim
1. In a system including a first database system for managing a first database including data having a first data format and a second database system for managing a second database including data having a second data format, a method for converting data transmitted between the first and second database systems, the method including the steps of:
- storing at the first database system and at the second database system respective sets of machine descriptors describing machine data formats and character code sets, and system descriptors describing system language characteristics;
sending a request for connection from the first database system to the second database system, the request for connection including information identifying a first machine on which the first database system executes, a character code used by the first machine, and a system language used by the first database system;
in response to the request for connection;
validating a first machine descriptor and a first system descriptor stored at the second database system, the first machine descriptor describing a machine data format and a character code used by the first machine and the first system descriptor describing a system language used by the first database system; and
sending a connection response from the second database system to the first database system, the connection response including information identifying a second machine on which the second database system executes, a character code used by the second machine, and a system language used by the second database system;
in response to the connection response, validating a second machine descriptor and a second system descriptor stored at the first database system, the second machine descriptor describing a machine data format and character code used by the second machine and the second system descriptor describing a system language used by the second database system;
sending from the first database system to the second database system a database query command containing data in the first data format;
at the second database system, convening the data in the database query command into the second data format using the validated first machine descriptor and first system descriptor;
at the second database system, obtaining resulting data from the second database in response to the database query command and the data in the second data format;
transmitting the resulting data to the first database system without convening the resulting data; and
at the first database system, convening the resulting data from the second data format to the first data format using the second machine descriptor and second system descriptor.
1 Assignment
0 Petitions
Accused Products
Abstract
The invention establishes the context in which data exchanged between dissimilar relational database management systems can be mutually understood and preserved, and data conversions can be minimized. The invention accomplishes this by establishing layers of descriptive information which isolate machine characteristics, levels of support software, and user data descriptions. Optimized processing is achieved by processing the different descriptor levels at different times during the development and execution of the database management systems. Minimal descriptive information is exchanged between the cooperating database management systems. Any data conversions that may be necessary are done only by the receiver of the data, and only at the point where it is necessary to have the data represented in the receiver'"'"'s native format for processing. For sending and receiving systems which match, data conversion is completely avoided, even when the data may have been forwarded through intermediate DBMS systems which do not match. For sending and receiving systems which do not match, data conversion is minimized. The data conversion routines and tables in each system are also minimized by requiring conversion only INTO a system'"'"'s native format, never FROM its native format into some other format.
218 Citations
9 Claims
-
1. In a system including a first database system for managing a first database including data having a first data format and a second database system for managing a second database including data having a second data format, a method for converting data transmitted between the first and second database systems, the method including the steps of:
-
storing at the first database system and at the second database system respective sets of machine descriptors describing machine data formats and character code sets, and system descriptors describing system language characteristics; sending a request for connection from the first database system to the second database system, the request for connection including information identifying a first machine on which the first database system executes, a character code used by the first machine, and a system language used by the first database system; in response to the request for connection; validating a first machine descriptor and a first system descriptor stored at the second database system, the first machine descriptor describing a machine data format and a character code used by the first machine and the first system descriptor describing a system language used by the first database system; and sending a connection response from the second database system to the first database system, the connection response including information identifying a second machine on which the second database system executes, a character code used by the second machine, and a system language used by the second database system; in response to the connection response, validating a second machine descriptor and a second system descriptor stored at the first database system, the second machine descriptor describing a machine data format and character code used by the second machine and the second system descriptor describing a system language used by the second database system; sending from the first database system to the second database system a database query command containing data in the first data format; at the second database system, convening the data in the database query command into the second data format using the validated first machine descriptor and first system descriptor; at the second database system, obtaining resulting data from the second database in response to the database query command and the data in the second data format; transmitting the resulting data to the first database system without convening the resulting data; and at the first database system, convening the resulting data from the second data format to the first data format using the second machine descriptor and second system descriptor. - View Dependent Claims (2, 3, 4, 5)
-
-
6. In a distributed database system including a plurality of database managers, each database manager for executing in a respective digital computer, a method for minimizing conversion of data transferred between database managers of the plurality of database managers, comprising the steps of:
-
storing at a first database manager and at a second database manager respective sets of machine descriptors describing machine data formats and character code sets, and system descriptors describing system language characteristics; sending a request for connection from the first database manager to the second database manager, the request for connection including information identifying a first machine on which the first database manager executes, a character code used by the first machine, and a system language used by the first database manager; in response to the request for connection; validating a first machine descriptor and a first system descriptor stored at the second database manager, the first machine descriptor describing a machine data format and a character code used by the first machine and the first system descriptor describing a system language used by the first database manager; and sending a connection response from the second database manager to the first database manager, the connection response including information identifying a second machine on which the second database manager executes, a character code used by the second machine, and a system language used by the second database manager; in response to the connection response, validating a second machine descriptor and a second system descriptor stored at the first database manager, the second machine descriptor describing a machine data format and character code used by the second machine and the second system descriptor describing a system language used by the second database manager; sending a database query command containing input data from the first database manager to the second database manager, the input data having a first data format used by the first database manager; at the second database manager, if the second database manager uses a data format which is non-equivalent to the first data format used by the first database manager, using the validated first machine descriptor and first system descriptor to convert the input data from the first data format into a second data format used by the second database manager, otherwise, leaving the input data in the first data format; at the second database manager, obtaining resulting data from a database in the data format used by the second database manager; sending the resulting data in the data format used by the second database manager to the first database manager; and at the first data base manager, if the data format used by the first database manager is not equivalent to the data format used by the second database manager, using the validated second machine descriptor and second system [language]descriptor to convert the resulting data into the first data format used by the first database manager.
-
-
7. In a system in which a user database manager controls a first database and a server database manager controls a second database, a method for minimizing the conversion of data communicated between the user and server database managers, the method including the steps of:
-
storing at the user database manager and at the server database manager respective sets of machine descriptors describing machine data formats and character code sets, and system descriptors describing system language characteristics; sending a request for connection from the user database manager to the server database manager, the request for connection including information identifying a first machine on which the user database manager executes, a character code used by the first machine, and a system language used by the user database manager; in response to the request for connection; validating a first machine descriptor and a first system descriptor stored at the server database manager, the first machine descriptor describing a machine data format and a character code used by the first machine and the first system descriptor describing a system language used by the user database manager; and sending a connection response from the server database manager to the user database manager, the connection response including information identifying a second machine on which the server database manager executes, a character code used by the second machine, and a system language used by the server database manager; in response to the connection response, validating a second machine descriptor and a second system descriptor stored at the user database manager, the second machine descriptor describing a machine data format and character code used by the second machine and the second system descriptor describing a system language used by the server database manager; sending from the user database manager to the server database manager a command containing input data, the input data having a data format native to the user database manager; at the server database manager, convening the input data from the data format native to the user database manager into a data format native to the server database manager using the validated first machine descriptor and first system descriptor; at the server database manager, executing the command by processing the input data after convening the input data; in response to executing the command, obtaining resulting data from the second database, the resulting data having the data format native to the server database manager; sending the resulting data in the data format native to the server database manager to the user database manager; and at the user data base manager, convening the resulting data from the data format native to the server database manager into the format native to the user database manager using the validated second machine descriptor and second system descriptor.
-
-
8. In a system including a processor system for processing data having a first data format and a database system for managing a database including data having a second data format, a combination for convening data transmitted between the processor system and the database system, the combination including:
-
processor system storage storing a set of machine descriptors describing machine data formats, a character code set, and a set of system descriptors describing system language characteristics; database system storage storing a set of machine descriptors describing machine data formats, a character code set, and a set of system descriptors describing system language characteristics; a communications link connecting the processor system and the database system for communication; means in the processor system for sending a request for connection from the processor system to the database system, the request for connection including information identifying a first machine on which the processor system executes, a character code used by the first machine, and a system language used by the processor system; means in the database system responsive to the request for connection for validating a first machine descriptor and a first system descriptor stored in the database system storage, the first machine descriptor describing a machine data format and a character code used by the first machine and the first system descriptor describing a system language used by the processor system; means in the database system for sending a connection response from the database system to the processor system, the connection response including information identifying a second machine on which the database system executes, a character code used by the second machine, and a system language used by the database system; means in the processor system responsive to the connection response for validating a second machine descriptor and a second system descriptor stored in the processor system storage, the second machine descriptor describing a machine data format and a character code used by the second machine and a second system descriptor describing a system language used by the database system; means in the processor system responsive to the connection response for sending a database query command containing data in the first data format from the processor system to the database system means in the database system for; converting the database query command into the second data format using the validated first machine descriptor and first system descriptor; obtaining resulting data from the database in response to the database query command and the data in the second format; and transmitting the resulting data to the processor system without converting the resulting data; and means in the processor system for converting the resulting data from the second data format to the first data format using the validated second machine descriptor and second system descriptor - View Dependent Claims (9)
-
Specification