Apparatus and method for accessing foreign databases in a...

Data processing: database and file management or data structures – Database design – Data structure types

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C709S201000

Reexamination Certificate

active

06236997

ABSTRACT:

FIELD OF THE INVENTION
This invention relates to database systems and, more specifically, to an apparatus and method for interacting with foreign databases in a heterogeneous database environment.
BACKGROUND OF THE INVENTION
Heterogeneous database environments are environments that contain different, and often incompatible, types of database systems. These different database systems are typically purchased independently by businesses to serve a particular need, function or use of the data. As a result, businesses may have information spread across multiple database management systems. Since every database management system vendor attempts to provide a competitive edge over the offerings of its competitors, the different database management systems are almost by definition incompatible. Even database systems based on SQL language standards and the relational model will be incompatible due to differences in SQL implementations, database definition and communication mechanisms. Incompatibility problems are even more apparent between modem relational database management systems and legacy database management systems that use a hierarchical or network architecture. Hence, the task of combining incompatible database systems is extremely complex.
One prior method for integrating foreign databases or data storage in a heterogeneous environment is depicted in FIG.
1
A.
FIG. 1A
is a diagram of a heterogeneous environment having a database application
10
configured to communicate with foreign databases
12
and
14
. The database application
10
from one vendor communicates with the foreign database systems
12
and
14
of other vendors using hardcoded instructions
16
and
18
for the foreign databases
12
and
14
, respectively. However, this arrangement is limited from an extensibility and scalability point of view, since every application in the heterogeneous environment must be rebuilt with new hardcoded instructions every time an unfamiliar foreign database is added to the heterogeneous environment. Hence, the application
10
would not be able to access a foreign database if the particular instructions for the data format and definitions of that foreign database were not coded directly into the application
10
.
Another prior method is shown in
FIG. 1B
, where a database system
20
accesses the foreign databases
12
and
14
via a gateway
22
. The gateway
22
allows client applications to access the foreign databases by translating data and SQL statements having the format of the database system
20
into formats that are recognizable by the foreign database systems. Specifically, the gateway
22
maps the data representation and functionality of one data source onto another data source, performing a translation of SQL statements from the database system
20
into a syntax recognizable by either the foreign database
12
or the foreign database
14
. The gateway
22
then sends the translated commands to the targeted foreign database, maps the resulting data from the targeted database into the format of the database system
20
, and sends the resultant data back to the database system
20
.
Use of the gateway
22
, however, suffers from the disadvantage that the mapping mechanisms in the gateway
22
tend to support only the most basic functionality that is common to all of the various databases. Hence, the functionality level of the mapping mechanism is effectively lowered to the lowest common denominator within the group of databases supported by the gateway
22
. In addition, SQL mapping by the gateway
22
cannot be performed dynamically, requiring the mapping definitions to be regenerated each time a new and unrecognized foreign database is added. Finally, database performance may be effected since the gateway
22
adds another layer of complexity between the application and the foreign databases.
SUMMARY OF THE INVENTION
There is a need for an arrangement that provides scalable integration of foreign databases in a heterogeneous database environment, where operations necessary for execution of a client statement are selectively translated and sent to a foreign database system based on the corresponding capabilities of the foreign database system.
There is also a need for an arrangement that enhances a local database system in a heterogeneous database environment by integrating operations of foreign databases and external routines with the local database system routines while simultaneously insulating the local database system from potential failures in the foreign databases and external routines.
These and other needs are attained by the present invention, where an agent process provides an interface between foreign processes, executing operation requests sent by the agent process, and a local server process completing execution of a client statement based on results received by the agent process.
According to one aspect of the invention, a computer system configured to respond to a statement includes a local server process and an agent process. The agent process is configured for selectively sending an operation request received from the local server process, necessary for execution of the statement, to a foreign process, and the local server process is configured for completing execution of the statement based on results received from the foreign process. The agent process thus acts as an interface between the local server process and the foreign process, capable of exchanging query statements and query results between the two processes, as well as coordinating distributed transactions between the two processes.
According to another aspect of the present invention, a method for processing a statement from a client includes receiving the statement by a local database server, the local database server having a heterogeneous services module configured to selectively dispatch a request to an agent process in communication with a foreign database server. At least one operation is determined to be performed by the foreign database server to execute the statement, and the heterogeneous services module sends the request to the agent process, which sends the request to the foreign database to perform the at least one operation. The local database server completes execution of the statement based on results received from the agent process interfacing with the foreign database server. The heterogeneous services module thus sends the request to the agent process interfacing with the foreign database based on the relative capabilities of the foreign database. An additional feature is that the heterogeneous services module provides scaleability by sending different requests via a standardized interface to a plurality of foreign databases based on their respective capabilities.
Additional objects, advantages and novel features of the invention will be set forth in part in the description which follows, and in part will become apparent to those skilled in the art upon examination of the following or may be learned by practice of the invention. The objects and advantages of the invention may be realized and attained by means of the instrumentalities and combinations particularly pointed out in the appended claims.


REFERENCES:
patent: 4736321 (1988-04-01), Brown et al.
patent: 4949255 (1990-08-01), Gerth et al.
patent: 5218697 (1993-06-01), Chung
patent: 5257366 (1993-10-01), Adair et al.
patent: 5416917 (1995-05-01), Adair et al.
patent: 5452450 (1995-09-01), Delory
patent: 5455948 (1995-10-01), Poole et al.
patent: 5524253 (1996-06-01), Pham et al.
patent: 5539886 (1996-07-01), Aldred et al.
patent: 5542078 (1996-07-01), Martel et al.
patent: 5596744 (1997-01-01), Dao et al.
patent: 5608874 (1997-03-01), Ogawa et al.
patent: 5617533 (1997-04-01), Wu et al.
patent: 5627972 (1997-05-01), Shear
patent: 5651111 (1997-07-01), McKeeman et al.
patent: 5655116 (1997-08-01), Kirk et al.
patent: 5680618 (1997-10-01), Freund
patent: 5682535 (1997-10-01), Knudsen
patent: 5706499 (1998-01-01), Kleewein et al.
patent: 5710918 (1998-01-01), Lagarde et al.
patent: 5713014 (1998-01-01), D

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Apparatus and method for accessing foreign databases in a... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Apparatus and method for accessing foreign databases in a..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Apparatus and method for accessing foreign databases in a... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2436430

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.