← Back to Patent Explorer
US5596745A Expired / Lapsed US ⏱️ 0.0 years remaining

System and procedure for concurrent database access by multiple user applications through shared connection processes

Assignee: International Business Machines Corp
•
Filing: 1994-05-16
•
Granted: 1997-01-21
•
Expires: 2014-05-16
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A system for managing database connections between concurrent user applications and a plurality of databases in a database processing system. This method minimizes the number of connections made to a database by allowing such connections to be shared by multiple applications. The concept of a shared versus exclusive connection is introduced and, depending on the user application, a connection manager automatically routes a database access request through either an existing shared connection or an exclusive connection. A single database access object is introduced that includes two types of methods for connecting to a specified database in two different simultaneous paths. First, a shared connection through a catalog server process is made to process schema query requests for definition retrieval. Secondly, another connection is made to retrieve and manipulate data from the database responsive to SQL execution requests. Importantly, the SQL execution path itself may be either exclusive or shared with other associated database access objects requesting SQL execution in the same database.

Inventors

  • 👤 Meichen Lai
  • 👤 Tony Kuen Lee
  • 👤 Jenny Y. K. Nishimura
  • 👤 Gerda R. Shank

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-30 15:15
CPC Classifications
G; G06; G06F; G06F16/00; G06F16/20; G06F16/25; G06F16/252; Y; Y10; Y10S; Y10S707/00; Y10S707/99941; Y10S707/99944

Claims Analysis

Total Claims: 36
Claim 1
Independent Claim 276 words
In an object-oriented database processing system having storage means for storing a plurality of databases and a plurality of user applications (UAs) for processing database access requests including schema queries and requests to execute standard query language (SQL) units of work (UOWs), for storing a plurality of catalog server processes, each linked to a respective database, and a plurality of SQL server processes, each linked to a respective database, and for storing a plurality of objects including a plurality of database access (DBA) objects for passing messages between said UAs and said databases, a method for accessing data in a first said database responsive to one or more said database access requests from a first said UA, said method comprising the steps of: forming first logical paths between said plurality of catalog server processes and said plurality of DBA objects, and second logical paths between said plurality of SQL server processes and said plurality of DBA objects; at least one of said first logical paths being shared among two or more DBA objects of the plurality of DBA objects; followed by; (a) sending said database access requests from said first UA to a first said DBA object for passing messages between said first UA and said first database, said first DBA object including first schema retrieval methods and first SQL execution methods; (b) transferring schema query messages between said first schema retrieval methods of said first DBA object and said first database through a first said logical path; and (c) transferring SQL UOW execution messages between said first SQL execution methods of said first DBA object and said first database through a second said logical path.
Claim 2
Dependent Claim 276 words
In an object-oriented database processing system having storage means for storing a plurality of databases and a plurality of user applications (UAs) for processing database access requests including schema queries and requests to execute standard query language (SQL) units of work (UOWs), for storing a plurality of catalog server processes, each linked to a respective database, and a plurality of SQL server processes, each linked to a respective database, and for storing a plurality of objects including a plurality of database access (DBA) objects for passing messages between said UAs and said databases, a method for accessing data in a first said database responsive to one or more said database access requests from a first said UA, said method comprising the steps of: forming first logical paths between said plurality of catalog server processes and said plurality of DBA objects, and second logical paths between said plurality of SQL server processes and said plurality of DBA objects; at least one of said first logical paths being shared among two or more DBA objects of the plurality of DBA objects; followed by; (a) sending said database access requests from said first UA to a first said DBA object for passing messages between said first UA and said first database, said first DBA object including first schema retrieval methods and first SQL execution methods; (b) transferring schema query messages between said first schema retrieval methods of said first DBA object and said first database through a first said logical path; and (c) transferring SQL UOW execution messages between said first SQL execution methods of said first DBA object and said first database through a second said logical path.
Claim 3
Dependent Claim 46 words
The method of claim 1 wherein said first transferring step (b) comprises the steps of: (b.1) if not already existent, spawning a first catalog server process for retrieving data from said first database; and (b.2) connecting said first DBA object to said first catalog server process.
Claim 4
Dependent Claim 49 words
The method of claim 2 wherein said connecting step (b.2) comprises the steps of: (b.2.1) if not already existent, constructing a first named pipe object for transferring messages to and from said first catalog server process; and (b.2.2) linking said first named pipe object to said first DBA object.
Claim 5
Dependent Claim 42 words
The method of claim 3 wherein: said first logical path is shared among a plurality of said DBA objects by logically relinking said first named pipe object to each said DBA object responsive to schema query messages from said each DBA object.
Claim 6
Dependent Claim 56 words
The method of claim 4 wherein said linking step (b.2.2) comprises the steps of: (b.2.2.1) if said named pipe object is linked to a second said DBA object, completing a schema query message transfer between said second DBA object and said first database; and (b.2.2.2) disconnecting said first named pipe object from said second DBA object.
Claim 7
Dependent Claim 46 words
The method of claim 4 wherein said second transferring step (c) comprises the steps of: (c.1) if not already existent, spawning a first SQL server process for executing UOWs in said first database; and (c.2) connecting said first DBA object to said first SQL server process.
Claim 8
Dependent Claim 49 words
The method of claim 6 wherein said connecting step (c.2) comprises the steps of: (c.2.1) if not already existent, constructing a second named pipe object for transferring messages to and from said first SQL server process; and (c.2.2) linking said second named pipe object to said first DBA object.
Claim 9
Dependent Claim 64 words
The method of claim 7 wherein: said DBA object plurality includes a plurality of exclusive DBA objects and a plurality of associated DBA objects; and said second logical path is shared among a plurality of said associated DBA objects by logically relinking said second named pipe object to each said associated DBA object responsive to SQL UOW messages from said each associated DBA object.
Claim 10
Dependent Claim 46 words
The method of claim 2 wherein said second transferring step (c) comprises the steps of: (c.1) if not already existent, spawning a first SQL server process for executing UOWs in said first database; and (c.2) connecting said first DBA object to said first SQL server process.
Claim 11
Dependent Claim 46 words
The method of claim 1 wherein said second transferring step (c) comprises the steps of: (c.1) if not already existent, spawning a first SQL server process for executing UOWs in said first database; and (c.2) connecting said first DBA object to said first SQL server process.
Claim 12
Dependent Claim 49 words
The method of claim 10 wherein said connecting step (c.2) comprises the step of: (c.2.1) if not already existent, constructing a first named pipe object for transferring messages to and from said first SQL server process; and (c.2.2) linking said first named pipe object to said first DBA object.
Claim 13
Dependent Claim 64 words
The method of claim 11 wherein: said DBA object plurality includes a plurality of exclusive DBA objects and a plurality of associated DBA objects; and said second logical path is shared among a plurality of said associated DBA objects by logically relinking said second named pipe object to each said associated DBA object responsive to SQL UOW messages from said each associated DBA object.
Claim 14
Dependent Claim 59 words
The method of claim 12 wherein said linking step (c.2.2) comprises the steps of: (c.2.2.1) if said first named pipe object is linked to a second said DBA object, completing the transfer of a UOW execution message between said second DBA object and said first database; and (c.2.2.2) disconnecting said first named pipe object from said second DBA object.
Claim 15
Dependent Claim 51 words
The method of claim 1 wherein: said database processing system includes a plurality of said DBA objects coupled to a plurality of said databases through a plurality of said first and second logical paths; and at least one said second logical path is shared by a plurality of said DBA objects.
Claim 16
Dependent Claim 252 words
An object-oriented database processing system having a plurality of objects and a plurality of databases, said objects including a plurality of user applications (UAs) that make database access requests for processing schema queries and standard query language (SQL) unit of work (UOW) executions, said system comprising: data storage means for storing said data and objects; a plurality of database access (DBA) objects in said data storage means, each for receiving said database access requests for one said database from one said UA and having methods for exchanging schema retrieval messages with said one database over a first logical path and methods for exchanging SQL UOW execution messages with said one database over a second logical path; a plurality of catalog server processes in said data storage means, each linked to a respective one of said databases, for processing said schema queries responsive to messages exchanged with said DBA objects; at least one said database being linked to one said catalog server process that is shared by two or more said DBA objects; a plurality of SQL server processes in said data storage means, each linked to a respective one of aid databases, for processing said SQL execution requests responsive to messages exchanged with said DBA objects; and connection manager means in said data storage means for selecting and linking said catalog server processes to said DBA objects to form said first logical paths and for selecting and linking said SQL server processes to said DBA objects to form said second logical paths.
Claim 17
Dependent Claim 252 words
An object-oriented database processing system having a plurality of objects and a plurality of databases, said objects including a plurality of user applications (UAs) that make database access requests for processing schema queries and standard query language (SQL) unit of work (UOW) executions, said system comprising: data storage means for storing said data and objects; a plurality of database access (DBA) objects in said data storage means, each for receiving said database access requests for one said database from one said UA and having methods for exchanging schema retrieval messages with said one database over a first logical path and methods for exchanging SQL UOW execution messages with said one database over a second logical path; a plurality of catalog server processes in said data storage means, each linked to a respective one of said databases, for processing said schema queries responsive to messages exchanged with said DBA objects; at least one said database being linked to one said catalog server process that is shared by two or more said DBA objects; a plurality of SQL server processes in said data storage means, each linked to a respective one of aid databases, for processing said SQL execution requests responsive to messages exchanged with said DBA objects; and connection manager means in said data storage means for selecting and linking said catalog server processes to said DBA objects to form said first logical paths and for selecting and linking said SQL server processes to said DBA objects to form said second logical paths.
Claim 18
Dependent Claim 80 words
The system of claim 15, wherein said DBA object plurality includes: associated DBA objects, each having methods for exchanging said SQL UOW execution request messages with one said SQL server process over one said second logical path shared with other said associated DBA objects; and exclusive DBA objects, each having methods for exchanging said SQL UOW execution request messages with one said SQL server process over an exclusive said second logical path that is unavailable to other said DBA objects.
Claim 19
Dependent Claim 52 words
The system of claim 16 wherein said SQL server process plurality includes: one or more exclusive SQL server processes each linked to no more than one said exclusive DBA object; and one or more shared SQL server processes, each available for linkage to any of a plurality of said associated DBA objects.
Claim 20
Dependent Claim 94 words
The system of claim 17 wherein said connection manager means includes: exclusive link means for linking one said exclusive SQL server process to one said exclusive DBA object to form one said exclusive second logical path; shared link means for linking one said shared SQL server process to one said associated DBA object to form one said second logical path; and switching means for disconnecting one said shared SQL server process from a first said associated DBA object and for relinking said one shared SQL server process to a second said associated DBA object.
Claim 21
Dependent Claim 36 words
The system of claim 18 wherein said switching means includes: database connection table (DBCT) means in said data storage means for specifying the number of said DBA objects shared by each said shared SQL server process.
Claim 22
Dependent Claim 299 words
A computer program product for use in an object-oriented database processing system having a central processing unit and storage means for storing a plurality of databases and a plurality of user applications (UAs) for processing database access requests including schema queries and requests to execute standard query language (SQL) units of work (UOWs), for storing a plurality of catalog server processes, each linked to a respective database, and a plurality of SQL server processes, each linked to a respective database, and for storing a plurality of objects including a plurality of database access (DBA) objects for passing messages between said UAs and said databases, said computer program product comprising: a recording medium; means recorded on said medium for forming first logical paths between said plurality of catalog server processes and said plurality of DBA objects, and second logical paths between said plurality of SQL server processes and said plurality of DBA objects, at least one of said first logical paths being shared among two or more DBA objects of the plurality of DBA objects; means recorded on said recording medium for directing said processing system to send database access requests from a first UA to a first said DBA object for passing messages between said first UA and a first database, said first DBA object including first schema retrieval methods and first SQL execution methods; means recorded on said recording medium for directing said processing system to transfer schema query messages between said first schema retrieval methods of said first DBA object and said first database through a first logical path; and means recorded on said recording medium for directing said processing system to transfer SQL UOW execution messages between said first SQL execution methods of said first DBA object and said first database through a second logical path.
Claim 23
Dependent Claim 299 words
A computer program product for use in an object-oriented database processing system having a central processing unit and storage means for storing a plurality of databases and a plurality of user applications (UAs) for processing database access requests including schema queries and requests to execute standard query language (SQL) units of work (UOWs), for storing a plurality of catalog server processes, each linked to a respective database, and a plurality of SQL server processes, each linked to a respective database, and for storing a plurality of objects including a plurality of database access (DBA) objects for passing messages between said UAs and said databases, said computer program product comprising: a recording medium; means recorded on said medium for forming first logical paths between said plurality of catalog server processes and said plurality of DBA objects, and second logical paths between said plurality of SQL server processes and said plurality of DBA objects, at least one of said first logical paths being shared among two or more DBA objects of the plurality of DBA objects; means recorded on said recording medium for directing said processing system to send database access requests from a first UA to a first said DBA object for passing messages between said first UA and a first database, said first DBA object including first schema retrieval methods and first SQL execution methods; means recorded on said recording medium for directing said processing system to transfer schema query messages between said first schema retrieval methods of said first DBA object and said first database through a first logical path; and means recorded on said recording medium for directing said processing system to transfer SQL UOW execution messages between said first SQL execution methods of said first DBA object and said first database through a second logical path.
Claim 24
Dependent Claim 62 words
The computer program product of claim 20 further comprising: means recorded on said recording medium for directing said processing system to spawn, if not already existent, a first catalog server process for retrieving data from said first database; and means recorded on said recording medium for directing said processing system to connect said first DBA object to said first catalog server process.
Claim 25
Dependent Claim 66 words
The computer program product of claim 21 further comprising: means recorded on said recording medium for directing said processing system to construct, if not already existent, a first named pipe object for transferring messages to and from said first catalog server process; and means recorded on said recording medium for directing said processing system to link said first named pipe object to said first DBA object.
Claim 26
Dependent Claim 44 words
The computer program product of claim 22 wherein: said first logical path is shared among a plurality of said DBA objects by logically relinking said first named pipe object to each said DBA object responsive to schema query messages from said each DBA object.
Claim 27
Dependent Claim 73 words
The computer program product of claim 23 further comprising: means recorded on said recording medium for directing said processing system to completing a schema query message transfer between said second DBA object and said first database if said named pipe object is linked to a second said DBA object; and means recorded on said recording medium for directing said processing system to disconnect said first named pipe object from said second DBA object.
Claim 28
Dependent Claim 62 words
The computer program product of claim 23 further comprising: means recorded on said recording medium for directing said processing system to spawn, if not already existent, a first SQL server process for executing UOWs in said first database; and means recorded on said recording medium for directing said processing system to connect said first DBA object to said first SQL server process.
Claim 29
Dependent Claim 66 words
The computer program product of claim 25 further comprising: means recorded on said recording medium for directing said processing system to construct, if not already existent, a second named pipe object for transferring messages to and from said first SQL server process; and means recorded on said recording medium for directing said processing system to link said second named pipe object to said first DBA object.
Claim 30
Dependent Claim 66 words
The computer program product of claim 26 wherein: said DBA object plurality includes a plurality of exclusive DBA objects and a plurality of associated DBA objects; and said second logical path is shared among a plurality of said associated DBA objects by logically relinking said second named pipe object to each said associated DBA object responsive to SQL UOW messages from said each associated DBA object.
Claim 31
Dependent Claim 62 words
The computer program product of claim 21 further comprising: means recorded on said recording medium for directing said processing system to spawn, if not already existent, a first SQL server process for executing UOWs in said first database; and means recorded on said recording medium for directing said processing system to connect said first DBA object to said first SQL server process.
Claim 32
Dependent Claim 62 words
The computer program product of claim 20 further comprising: means recorded on said recording medium for directing said processing system to spawn, if not already existent, a first SQL server process for executing UOWs in said first database; and means recorded on said recording medium for directing said processing system to connect said first DBA object to said first SQL server process.
Claim 33
Dependent Claim 66 words
The computer program product of claim 29 further comprising: means recorded on said recording medium for directing said processing system to construct, if not already existent, a first named pipe object for transferring messages to and from said first SQL server process; and means recorded on said recording medium for directing said processing system to link said first named pipe object to said first DBA object.
Claim 34
Dependent Claim 66 words
The computer program product of claim 30 wherein: said DBA object plurality includes a plurality of exclusive DBA objects and a plurality of associated DBA objects; and said second logical path is shared among a plurality of said associated DBA objects by logically relinking said second named pipe object to each said associated DBA object responsive to SQL UOW messages from said each associated DBA object.
Claim 35
Dependent Claim 76 words
The computer program product of claim 31 further comprising: means recorded on said recording medium for directing said processing system to complete the transfer of a UOW execution message between said second DBA object and said first database if said first named pipe object is linked to a second said DBA object; and means recorded on said recording medium for directing said processing system to disconnect said first named pipe object from said second DBA object.
Claim 36
Dependent Claim 53 words
The computer program product of claim 20 wherein: said database processing system includes a plurality of said DBA objects coupled to a plurality of said databases through a plurality of said first and second logical paths; and at least one said second logical path is shared by a plurality of said DBA objects.

References Cited (Backward Citations)

US4480304A Cited
US5265245A Cited
US5293600A Cited
US5297279A Cited
US5426747A Cited
US5317742A Cited
US5504885A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2000-01-21 2000-07-22 2001-01-21 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2004-01-21 2004-07-22 2005-01-21 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2008-01-21 2008-07-22 2009-01-21 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag