JP2996892B2 - 共有した接続処理を介して多重ユーザ・アプリケーションにより並列データ・ベース・アクセスをするシステム及び方法 - Google Patents
共有した接続処理を介して多重ユーザ・アプリケーションにより並列データ・ベース・アクセスをするシステム及び方法Info
- Publication number
- JP2996892B2 JP2996892B2 JP7059533A JP5953395A JP2996892B2 JP 2996892 B2 JP2996892 B2 JP 2996892B2 JP 7059533 A JP7059533 A JP 7059533A JP 5953395 A JP5953395 A JP 5953395A JP 2996892 B2 JP2996892 B2 JP 2996892B2
- Authority
- JP
- Japan
- Prior art keywords
- dba
- database
- server processing
- objects
- processing process
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/252—Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99944—Object-oriented database structure
Description
【0001】
【産業上の利用分野】本発明は、並列のユーザ・アプリ
ケーション・プログラムからのアクセス要求を管理する
データ・ベース・サーバー・システムに関し、特に複数
のユーザ・アプリケーションを単一のデータ・ベースに
それぞれ並列接続するために共有する接続オブジェクト
を用いた効率的なデータ・ベース接続管理システムに関
する。
ケーション・プログラムからのアクセス要求を管理する
データ・ベース・サーバー・システムに関し、特に複数
のユーザ・アプリケーションを単一のデータ・ベースに
それぞれ並列接続するために共有する接続オブジェクト
を用いた効率的なデータ・ベース接続管理システムに関
する。
【0002】
【従来の技術】多くのデータ・ベース及び多くの並列の
ユーザを複合的にサービスするデータ処理システムで
は、ユーザ・アプリケーション(UA)がデータ・ベー
スのアクセス要求を発行することにより、特定のデータ
・ベースにアクセスを要求する。このようなアクセス要
求には、例えば、ここでデータ・ベース「スキーマ照会
(schema queries)」と呼ぶ簡単なカタログ・ルックア
ップ要求、又はこのデータ・ベースにおける指定したレ
コードを読み出し、かつ変更するように動作し、ここで
「作業単位」(UOW)と呼ぶトランザクション及びト
ランザクションの組合わせが含まれる。
ユーザを複合的にサービスするデータ処理システムで
は、ユーザ・アプリケーション(UA)がデータ・ベー
スのアクセス要求を発行することにより、特定のデータ
・ベースにアクセスを要求する。このようなアクセス要
求には、例えば、ここでデータ・ベース「スキーマ照会
(schema queries)」と呼ぶ簡単なカタログ・ルックア
ップ要求、又はこのデータ・ベースにおける指定したレ
コードを読み出し、かつ変更するように動作し、ここで
「作業単位」(UOW)と呼ぶトランザクション及びト
ランザクションの組合わせが含まれる。
【0003】現在の最高水準の技術、及び多数の並列処
理をサポートするデータ処理システムについては、例え
ば1990年、アジソン・ウェズレー出版(株)発行、第2
版、ハーベイ(Harvey M.Deitel)著、「オペレーティン
グ・システムの導入」(An Introduction to Operating
Systems)(N.B.,第3章「処理の思想」(“Process Concep
ts")を参照することにより、理解することができる。更
に、1984年、マックグローヒル(株)発行、ファン(Kai
Hwan)ほか著、「コンピュータ・アーキテクチャ並列処
理」(Computer Architecture Parallel Processing)
(N.B.,第8章、「多重処理制御及びアルゴリズム(“Mu
ltiprocessing Control and Algorithms")」、及び19
86年プレンタイス・ホール(株)発行、バッハ(Maur
ice Bach)著、UNIXオペレーティング・システムの設計
(The Design of the UNIX Operating System)(N.B.,
第7章、「多重処理」(“Process Control")及びN.B.,
第12章、「マルチプロセッサ・システム」(“Multiproc
essor Systems")を参照すべきである。
理をサポートするデータ処理システムについては、例え
ば1990年、アジソン・ウェズレー出版(株)発行、第2
版、ハーベイ(Harvey M.Deitel)著、「オペレーティン
グ・システムの導入」(An Introduction to Operating
Systems)(N.B.,第3章「処理の思想」(“Process Concep
ts")を参照することにより、理解することができる。更
に、1984年、マックグローヒル(株)発行、ファン(Kai
Hwan)ほか著、「コンピュータ・アーキテクチャ並列処
理」(Computer Architecture Parallel Processing)
(N.B.,第8章、「多重処理制御及びアルゴリズム(“Mu
ltiprocessing Control and Algorithms")」、及び19
86年プレンタイス・ホール(株)発行、バッハ(Maur
ice Bach)著、UNIXオペレーティング・システムの設計
(The Design of the UNIX Operating System)(N.B.,
第7章、「多重処理」(“Process Control")及びN.B.,
第12章、「マルチプロセッサ・システム」(“Multiproc
essor Systems")を参照すべきである。
【0004】UAが特定のデータ・ベースのアクセスを
要求すると、対応するデータ・ベース管理システム(D
BMS)が処理資源を割り当ててデータ・ベースのアク
セス要求をサービスさせることが必要である。DBMS
は特定のデータ・ベース(例えばOS/2用のDB2)
に対する多重アクティブ接続をサポートできないので、
UAが(a)多くのデータ・ベースに対する並列アクセ
スをサポートすること、又は(b)特定のデータ・ベー
スに対する多重接続をサポートすることの何れかが必要
なときは総合的なシステム・パフォーマンスを低下させ
る恐れがある。
要求すると、対応するデータ・ベース管理システム(D
BMS)が処理資源を割り当ててデータ・ベースのアク
セス要求をサービスさせることが必要である。DBMS
は特定のデータ・ベース(例えばOS/2用のDB2)
に対する多重アクティブ接続をサポートできないので、
UAが(a)多くのデータ・ベースに対する並列アクセ
スをサポートすること、又は(b)特定のデータ・ベー
スに対する多重接続をサポートすることの何れかが必要
なときは総合的なシステム・パフォーマンスを低下させ
る恐れがある。
【0005】例えば、UAがユーザ入力に対して応答す
る異なるデータ・ベースからの情報を表示しなければな
らないときは、UAは種々の時点で多くの異なるデータ
・ベースを接続し、アクセスし、かつ切り離すことが必
要であろう。更に、UAは同一のデータ・ベースから導
き出した異なる多くのレポートを管理しているときは、
レポート効率を最適化するために同一のデータ・ベース
に対していくつか並列接続することが有用である。DB
MSが多重並列アクティブ接続をサポートする場合であ
っても、このような接続を確立する手順は、特に接続さ
れるべきデータ・ベースが遠方のデータ・ベースのとき
は、かなりのプロセッサ資源を消費する。例えば、OS
/2用のDB2は、単一の処理プロセス内で指定したデ
ータ・ベースに対する多重のアクティブ接続をサポート
せず、これを達成するために多重サーバ処理プロセスを
引き起こす。
る異なるデータ・ベースからの情報を表示しなければな
らないときは、UAは種々の時点で多くの異なるデータ
・ベースを接続し、アクセスし、かつ切り離すことが必
要であろう。更に、UAは同一のデータ・ベースから導
き出した異なる多くのレポートを管理しているときは、
レポート効率を最適化するために同一のデータ・ベース
に対していくつか並列接続することが有用である。DB
MSが多重並列アクティブ接続をサポートする場合であ
っても、このような接続を確立する手順は、特に接続さ
れるべきデータ・ベースが遠方のデータ・ベースのとき
は、かなりのプロセッサ資源を消費する。例えば、OS
/2用のDB2は、単一の処理プロセス内で指定したデ
ータ・ベースに対する多重のアクティブ接続をサポート
せず、これを達成するために多重サーバ処理プロセスを
引き起こす。
【0006】再接続のオーバーヘッド負荷は、UAが単
一のデータ・ベースと作業する伝統的なデータ・ベース
・システムにおいて主要な問題ではないが、最近のクラ
イエント/サーバ環境は多重データ・ベース・サーバを
サポートする一般化されたクライエント・データ・ベー
ス・ユーザ・アプリケーションを導入し、異なるデータ
・ベースに対して多くの並列アクセスを必要とする。多
重処理プロセスをサポートするオペレーティング・シス
テムに適用可能な解決法は、UA用にそれぞれ多重アク
ティブ・データ・ベース接続を必要とする新しいデータ
・ベース接続用の新しいサーバ処理プロセスを発生させ
る。新しいサーバ処理プロセスは、UAとオブジェクト
のデータ・ベースとの間の特定の接続に関する全ての相
互作用を取り扱うと共に、UAのメイン処理プロセスは
ユーザ・インタフェース及びディスプレイをサービスし
続ける。この構成はUAが単一データ・ベースに対して
多重アクティブ接続を保持可能にするが、新しい接続を
それぞれ保持するために必要なかなりの処理オーバーヘ
ッドを何ら軽減するものではなく、実際には更なるパフ
ォーマンス負荷を付加して各新しい処理プロセスを発生
させる。
一のデータ・ベースと作業する伝統的なデータ・ベース
・システムにおいて主要な問題ではないが、最近のクラ
イエント/サーバ環境は多重データ・ベース・サーバを
サポートする一般化されたクライエント・データ・ベー
ス・ユーザ・アプリケーションを導入し、異なるデータ
・ベースに対して多くの並列アクセスを必要とする。多
重処理プロセスをサポートするオペレーティング・シス
テムに適用可能な解決法は、UA用にそれぞれ多重アク
ティブ・データ・ベース接続を必要とする新しいデータ
・ベース接続用の新しいサーバ処理プロセスを発生させ
る。新しいサーバ処理プロセスは、UAとオブジェクト
のデータ・ベースとの間の特定の接続に関する全ての相
互作用を取り扱うと共に、UAのメイン処理プロセスは
ユーザ・インタフェース及びディスプレイをサービスし
続ける。この構成はUAが単一データ・ベースに対して
多重アクティブ接続を保持可能にするが、新しい接続を
それぞれ保持するために必要なかなりの処理オーバーヘ
ッドを何ら軽減するものではなく、実際には更なるパフ
ォーマンス負荷を付加して各新しい処理プロセスを発生
させる。
【0007】
【発明が解決しようとする課題】従って、あらゆるデー
タ・ベースのアクセス要求に応答して新しい処理プロセ
ス及び接続生成処理オーバヘッドを招くことなく、単一
又は多重データ・ベースとユーザ・アプリケーションと
の間に多重並列のアクティブ接続を保持する方法に関し
て当該技術分野に明白に認識される必要性が存在する。
当該技術分野では、解決されていない関連の問題及び欠
点が明確に認識されており、それらは以下に説明する方
法で本発明により解決される。
タ・ベースのアクセス要求に応答して新しい処理プロセ
ス及び接続生成処理オーバヘッドを招くことなく、単一
又は多重データ・ベースとユーザ・アプリケーションと
の間に多重並列のアクティブ接続を保持する方法に関し
て当該技術分野に明白に認識される必要性が存在する。
当該技術分野では、解決されていない関連の問題及び欠
点が明確に認識されており、それらは以下に説明する方
法で本発明により解決される。
【0008】
【課題を解決するための手段】本発明は、クライエント
・サーバ・システム環境において共有するデータ・ベー
ス接続処理プロセスの考えを導入する。スキーマ検索実
行要求及び構造化照会言語(Standard Query Language:
SQL)実行要求を独立し、かつ並列にサポートする組
込みクラスの方法を提供する新しいデータ・ベース・ア
クセス(DBA)・オブジェクトが導入される。独立し
た複数の処理プロセスにおいて実行する新しい2つの型
式のサーバを導入して本発明のDBAオブジェクトをサ
ービスする。並列のDBAオブジェクト間においてこれ
らの型式のサーバ処理プロセスのうちの一つを共有する
ことができる。DBAクラスの方法に従って、データ・
ベースに対して必要なリンクは、メモリに保持されたデ
ータ・ベース接続テーブル(DBCT)と呼ぶ接続管理
(CM)の制御によりデータ・ベースに対して必要なリ
ンクを編成して、このような全てのサーバ処理プロセス
の生成及び共有をトラッキングさせる。
・サーバ・システム環境において共有するデータ・ベー
ス接続処理プロセスの考えを導入する。スキーマ検索実
行要求及び構造化照会言語(Standard Query Language:
SQL)実行要求を独立し、かつ並列にサポートする組
込みクラスの方法を提供する新しいデータ・ベース・ア
クセス(DBA)・オブジェクトが導入される。独立し
た複数の処理プロセスにおいて実行する新しい2つの型
式のサーバを導入して本発明のDBAオブジェクトをサ
ービスする。並列のDBAオブジェクト間においてこれ
らの型式のサーバ処理プロセスのうちの一つを共有する
ことができる。DBAクラスの方法に従って、データ・
ベースに対して必要なリンクは、メモリに保持されたデ
ータ・ベース接続テーブル(DBCT)と呼ぶ接続管理
(CM)の制御によりデータ・ベースに対して必要なリ
ンクを編成して、このような全てのサーバ処理プロセス
の生成及び共有をトラッキングさせる。
【0009】本発明の方法の目的は、多重ユーザ環境に
おいて生成された必要数のデータ・ベース接続を最小化
することにある。また、本発明の特徴は、データ・ベー
スに対するUA接続を、多くの並列UAにより共有する
ことである。さらに、本発明の特徴は、排他的データ・
ベース接続がデータ・ベース更新及び変更を必要とする
SQL実行要求に利用可能であることである。
おいて生成された必要数のデータ・ベース接続を最小化
することにある。また、本発明の特徴は、データ・ベー
スに対するUA接続を、多くの並列UAにより共有する
ことである。さらに、本発明の特徴は、排他的データ・
ベース接続がデータ・ベース更新及び変更を必要とする
SQL実行要求に利用可能であることである。
【0010】本発明の排他的サーバ処理プロセスは、特
定のデータ・ベースに対する専用の接続と、単一のUA
により保有される本発明のDBAに対する専用の接続と
を有する。本発明の共有サーバ処理プロセスは特定のデ
ータ・ベースに対する専用の接続を有し、かつ、このよ
うなDBAオブジェクトが保有している単一のUAから
前記サーバ処理プロセスを共有する許可を有する時、本
発明の共有サーバは任意数の本発明のDBAオブジェク
トへ接続するために要求に応じて利用可能である。スキ
ーマ検索のための特殊共有サーバ処理プロセス(「カタ
ログ・サーバ処理プロセス」)は、本発明により導入さ
れる。カタログ・サーバ処理プロセスは、特定のデータ
・ベースに対して専用の接続を有し、かつスキーマ検索
要求のみに応答して任意のDBAオブジェクトに対する
接続のために利用可能である。従って、本発明の効果
は、各データ・ベースには単一の共有サーバ処理プロセ
スで十分であるということにある。
定のデータ・ベースに対する専用の接続と、単一のUA
により保有される本発明のDBAに対する専用の接続と
を有する。本発明の共有サーバ処理プロセスは特定のデ
ータ・ベースに対する専用の接続を有し、かつ、このよ
うなDBAオブジェクトが保有している単一のUAから
前記サーバ処理プロセスを共有する許可を有する時、本
発明の共有サーバは任意数の本発明のDBAオブジェク
トへ接続するために要求に応じて利用可能である。スキ
ーマ検索のための特殊共有サーバ処理プロセス(「カタ
ログ・サーバ処理プロセス」)は、本発明により導入さ
れる。カタログ・サーバ処理プロセスは、特定のデータ
・ベースに対して専用の接続を有し、かつスキーマ検索
要求のみに応答して任意のDBAオブジェクトに対する
接続のために利用可能である。従って、本発明の効果
は、各データ・ベースには単一の共有サーバ処理プロセ
スで十分であるということにある。
【0011】
【実施例】図1は、データ処理システムにおいて多重デ
ータ・ベースに対して並列なアクセスをするために本発
明のオブジェクト及び処理プロセスを用いた処理プロセ
スモデルの1例を示す。図1における処理プロセスモデ
ルは複数のオブジェクトを備えており、これらは単一構
造中にデータ構造定義、及びこれにより定義された複数
の手順を含むことが当該技術分野において知られてい
る。
ータ・ベースに対して並列なアクセスをするために本発
明のオブジェクト及び処理プロセスを用いた処理プロセ
スモデルの1例を示す。図1における処理プロセスモデ
ルは複数のオブジェクトを備えており、これらは単一構
造中にデータ構造定義、及びこれにより定義された複数
の手順を含むことが当該技術分野において知られてい
る。
【0012】複数のオブジェクトはある「クラス」の複
数インスタンスであって、各インスタンスがそれ自体の
固有な変数インスタンスを有する。「クラスの定義」
は、そのクラスにおけるオブジェクトの特性を定義す
る。オブジェクトに組込まれた手順(「メソッド」とも
呼ぶ。)は、他のオブジェクトからそのオブジェクトへ
送出された「メッセージ」によりアクティブにされる。
数インスタンスであって、各インスタンスがそれ自体の
固有な変数インスタンスを有する。「クラスの定義」
は、そのクラスにおけるオブジェクトの特性を定義す
る。オブジェクトに組込まれた手順(「メソッド」とも
呼ぶ。)は、他のオブジェクトからそのオブジェクトへ
送出された「メッセージ」によりアクティブにされる。
【0013】従って、当該技術分野において周知のよう
に、図1の処理プロセス構造により例示されるオブジェ
クト指向のプログラミング・システムにおける基本的な
制御構造は、メッセージの転送である。データ及び処理
プロセスの必要条件は、オブジェクトのクラス定義に組
込まれ、その処理プロセスはオブジェクト間のメッセー
ジ交換により達成される。
に、図1の処理プロセス構造により例示されるオブジェ
クト指向のプログラミング・システムにおける基本的な
制御構造は、メッセージの転送である。データ及び処理
プロセスの必要条件は、オブジェクトのクラス定義に組
込まれ、その処理プロセスはオブジェクト間のメッセー
ジ交換により達成される。
【0014】従って、図1に示す各オブジェクト及び処
理プロセスは、コンピュータ処理システム内のデータ記
憶手段に物理的に記憶される。
理プロセスは、コンピュータ処理システム内のデータ記
憶手段に物理的に記憶される。
【0015】図1は、処理プロセスAにおけるデータ・
ベースD1用の排他的DBAオブジェクト10と、処理
プロセスCにおけるデータ・ベースD2用の排他的DB
Aオブジェクト12とにより例示された複数のデータ・
ベース・アクセス(DBA)・オブジェクトを示す。更
に、処理プロセスBにおけるデータ・ベースD1用のD
BAオブジェクト14及び16を例とする「関連」DB
Aオブジェクトも示されている。説明の都合のみのため
に、DBAオブジェクト10及び12は異なる2つの処
理プロセスに属し、DBAオブジェクト14及び16を
第1の処理プロセス18におけるこのような他の複数の
DBAオブジェクトと共に示す。
ベースD1用の排他的DBAオブジェクト10と、処理
プロセスCにおけるデータ・ベースD2用の排他的DB
Aオブジェクト12とにより例示された複数のデータ・
ベース・アクセス(DBA)・オブジェクトを示す。更
に、処理プロセスBにおけるデータ・ベースD1用のD
BAオブジェクト14及び16を例とする「関連」DB
Aオブジェクトも示されている。説明の都合のみのため
に、DBAオブジェクト10及び12は異なる2つの処
理プロセスに属し、DBAオブジェクト14及び16を
第1の処理プロセス18におけるこのような他の複数の
DBAオブジェクトと共に示す。
【0016】DBAオブジェクトは、スキーマ検索と、
標準照会言語(SQL)作業単位(UOW)の実行とを
サポートするように複数の「メソッド」を提供する。ユ
ーザ・アプリケーション(UA)が特定のデータ・ベー
スに対するアクセスを要求するときは、UAは、特定の
データ・ベースに関連させるDBAオブジェクトを作成
するか又は先に作成されたDBAオブジェクトを使用す
る。次いで、UAは、DBAオブジェクトにより、DB
Aオブジェクトに組込まれたメソッドを用いて、別個の
処理プロセスにより実行している本発明のサーバにより
サービスされる特定のデータ・ベースをアクセスするこ
とができる。
標準照会言語(SQL)作業単位(UOW)の実行とを
サポートするように複数の「メソッド」を提供する。ユ
ーザ・アプリケーション(UA)が特定のデータ・ベー
スに対するアクセスを要求するときは、UAは、特定の
データ・ベースに関連させるDBAオブジェクトを作成
するか又は先に作成されたDBAオブジェクトを使用す
る。次いで、UAは、DBAオブジェクトにより、DB
Aオブジェクトに組込まれたメソッドを用いて、別個の
処理プロセスにより実行している本発明のサーバにより
サービスされる特定のデータ・ベースをアクセスするこ
とができる。
【0017】例えば、図1におけるDBAオブジェクト
を考えることにする。DBAオブジェクト10は、デー
タ・ベースD1を指名し、データ・ベースD1をアクセ
スしてカタログ情報を読み出しする組込みスキーマ検索
メソッド20を備えている。図1において、SQL実行
メソッド22は、指定した「排他的」SQL実行メソッ
ドであり、ここでは、DBAオブジェクト10が他のD
BAオブジェクトにより共有されていない排他的サーバ
処理プロセスを介してデータ・ベースD1に対してアク
セスを要求することを表す指定した「排他的」SQL実
行メソッドである。更に、図1に示す他の全てのDBA
オブジェクトは、そのクラス内に組込まれたカタログ・
サービス・メソッド及びSQLサービス・メソッドも備
えている。しかしながら、DBAオブジェクト14によ
り例示された他のDBAオブジェクトには、「共有」サ
ービス・メソッドが含まれてもよく、DBAオブジェク
ト14において共有SQL実行メソッド24により例示
される。SQL実行メソッド24は、DBAオブジェク
ト14が「関連」する他のDBAオブジェクト、例えば
DBAオブジェクト16とSQL実行要求サーバ処理プ
ロセスを共有して単一のデータ・ベース(D1)をアク
セス可能にさせる。
を考えることにする。DBAオブジェクト10は、デー
タ・ベースD1を指名し、データ・ベースD1をアクセ
スしてカタログ情報を読み出しする組込みスキーマ検索
メソッド20を備えている。図1において、SQL実行
メソッド22は、指定した「排他的」SQL実行メソッ
ドであり、ここでは、DBAオブジェクト10が他のD
BAオブジェクトにより共有されていない排他的サーバ
処理プロセスを介してデータ・ベースD1に対してアク
セスを要求することを表す指定した「排他的」SQL実
行メソッドである。更に、図1に示す他の全てのDBA
オブジェクトは、そのクラス内に組込まれたカタログ・
サービス・メソッド及びSQLサービス・メソッドも備
えている。しかしながら、DBAオブジェクト14によ
り例示された他のDBAオブジェクトには、「共有」サ
ービス・メソッドが含まれてもよく、DBAオブジェク
ト14において共有SQL実行メソッド24により例示
される。SQL実行メソッド24は、DBAオブジェク
ト14が「関連」する他のDBAオブジェクト、例えば
DBAオブジェクト16とSQL実行要求サーバ処理プ
ロセスを共有して単一のデータ・ベース(D1)をアク
セス可能にさせる。
【0018】従って、関連するDBAオブジェクト14
及び16からの要求は、共有SQLサーバ処理プロセス
26及びカタログ・サーバ処理プロセス28として組込
まれた2つの型式のサーバ処理プロセスのいずれかによ
りサービスされることを注意すべきである。DBAオブ
ジェクト14は同時にカタログ・サーバ・メソッド30
からカタログ・サーバ処理プロセス28を介してデータ
・ベースD1へスキーマ照会メッセージを順方向に転送
し、かつ共有SQL実行メソッド24から共有SQLサ
ーバ処理プロセス26を介してデータ・ベースD1によ
りSQL UOWを実行する。この発明により、各DB
Aオブジェクトは、(a)データ・ベース・カタログ・
テーブル及び列のような機構情報を読み込み、かつSQ
L UOWを実行してデータ・ベースからのデータを読
み出し、かつ処理プロセスする並列メソッドを採用す
る。これらの並列メソッドは独立した処理プロセスによ
り動作し、SQLサーバ処理プロセス26及びカタログ
・サーバ処理プロセス28により例示される。
及び16からの要求は、共有SQLサーバ処理プロセス
26及びカタログ・サーバ処理プロセス28として組込
まれた2つの型式のサーバ処理プロセスのいずれかによ
りサービスされることを注意すべきである。DBAオブ
ジェクト14は同時にカタログ・サーバ・メソッド30
からカタログ・サーバ処理プロセス28を介してデータ
・ベースD1へスキーマ照会メッセージを順方向に転送
し、かつ共有SQL実行メソッド24から共有SQLサ
ーバ処理プロセス26を介してデータ・ベースD1によ
りSQL UOWを実行する。この発明により、各DB
Aオブジェクトは、(a)データ・ベース・カタログ・
テーブル及び列のような機構情報を読み込み、かつSQ
L UOWを実行してデータ・ベースからのデータを読
み出し、かつ処理プロセスする並列メソッドを採用す
る。これらの並列メソッドは独立した処理プロセスによ
り動作し、SQLサーバ処理プロセス26及びカタログ
・サーバ処理プロセス28により例示される。
【0019】ここで、図1に示すいくつかの型式のサー
バ処理プロセスを説明する。SQLサーバ処理プロセス
32及び34により例示された排他的サーバ処理プロセ
スは、クライエントDBAオブジェクトの排他的使用の
ために特定のデータ・ベースD1に接続される。排他的
SQLサーバ処理プロセス32は、データ・ベースD1
に対してそれぞれ専用の接続を備えている。排他的SQ
Lサーバ処理プロセス32及び34はそれぞれデータ・
ベースD1に対して専用の接続を備えている。排他的S
QLサーバ処理プロセス36はデータ・ベースD2に対
して専用の接続を備えている。このように全ての排他的
SQLサーバ処理プロセスは、ほぼ図示するように、ク
ライエントDBAオブジェクトに対して専用の接続を有
する。
バ処理プロセスを説明する。SQLサーバ処理プロセス
32及び34により例示された排他的サーバ処理プロセ
スは、クライエントDBAオブジェクトの排他的使用の
ために特定のデータ・ベースD1に接続される。排他的
SQLサーバ処理プロセス32は、データ・ベースD1
に対してそれぞれ専用の接続を備えている。排他的SQ
Lサーバ処理プロセス32及び34はそれぞれデータ・
ベースD1に対して専用の接続を備えている。排他的S
QLサーバ処理プロセス36はデータ・ベースD2に対
して専用の接続を備えている。このように全ての排他的
SQLサーバ処理プロセスは、ほぼ図示するように、ク
ライエントDBAオブジェクトに対して専用の接続を有
する。
【0020】更に、共有SQLサーバ処理プロセス2
6、38、カタログ・サーバ処理プロセス28及び40
も特定のデータ・ベースに対する専用の接続を有する
が、それぞれ特定のデータ・ベースに対してアクセスを
要求する複数のDBAオブジェクトにより共有されても
よい。従って、例えば、カタログ・サーバ処理プロセス
28はデータ・ベースD1に対して専用の接続を有し、
このデータ・ベースD1は4つのDBAオブジェクトの
クライエントにおいて共有される。実際に、本発明のシ
ステムは、対象とする各データ・ベースに対して一つの
カタログ・サーバ処理プロセスしか必要とせず、データ
・ベースには変更がないので、カタログ・サーバ処理プ
ロセスはデータ・ベースからスキーマ検索を必要とする
全てのDBAオブジェクトにより共有される。SQL実
行要求については、本発明のシステムは、共有サーバ又
は排他的サーバを指定する任意選択をUAに提供する。
UAは、排他的SQL実行処理プロセスを介してデータ
・ベース・アクセスのために新しいDBAオブジェクト
を生成することにより、又は既存のDBAオブジェクト
をコールすことにより、又は共有SQLサーバ処理プロ
セスを介してデータ・ベースをアクセスするためのDB
Aオブジェクトをコールすことにより、当該必要条件を
実現する。
6、38、カタログ・サーバ処理プロセス28及び40
も特定のデータ・ベースに対する専用の接続を有する
が、それぞれ特定のデータ・ベースに対してアクセスを
要求する複数のDBAオブジェクトにより共有されても
よい。従って、例えば、カタログ・サーバ処理プロセス
28はデータ・ベースD1に対して専用の接続を有し、
このデータ・ベースD1は4つのDBAオブジェクトの
クライエントにおいて共有される。実際に、本発明のシ
ステムは、対象とする各データ・ベースに対して一つの
カタログ・サーバ処理プロセスしか必要とせず、データ
・ベースには変更がないので、カタログ・サーバ処理プ
ロセスはデータ・ベースからスキーマ検索を必要とする
全てのDBAオブジェクトにより共有される。SQL実
行要求については、本発明のシステムは、共有サーバ又
は排他的サーバを指定する任意選択をUAに提供する。
UAは、排他的SQL実行処理プロセスを介してデータ
・ベース・アクセスのために新しいDBAオブジェクト
を生成することにより、又は既存のDBAオブジェクト
をコールすことにより、又は共有SQLサーバ処理プロ
セスを介してデータ・ベースをアクセスするためのDB
Aオブジェクトをコールすことにより、当該必要条件を
実現する。
【0021】UAの仕様決定はいくつかの意味合いを持
つ。例えば、スキーマ検索のためには共有カタログ・サ
ーバ処理プロセスに依存して、排他的SQLサーバ処理
プロセスはSQL UOW実行のみのためにデータ・ベ
ースに対する専用のDBAオブジェクト接続を提供す
る。これは、トランザクションのコミット/ロールバッ
クを発行するときに、他のDBAオブジェクトからのト
ランザクションによる干渉を回避する。排他的SQLサ
ーバに対する接続メソッドを有する適当なDBAオブジ
ェクトを指定することは、SQLサーバ処理プロセスに
対するアクセスに関して生起し得る待機を除去し、更に
デッドロックの可能性も除去する。しかし、他のDBA
オブジェクトを共有SQLサーバへ接続するメソッドに
より指定すると付加的な接続を発生させるが、システム
・オーバヘッドを伴うことになる。
つ。例えば、スキーマ検索のためには共有カタログ・サ
ーバ処理プロセスに依存して、排他的SQLサーバ処理
プロセスはSQL UOW実行のみのためにデータ・ベ
ースに対する専用のDBAオブジェクト接続を提供す
る。これは、トランザクションのコミット/ロールバッ
クを発行するときに、他のDBAオブジェクトからのト
ランザクションによる干渉を回避する。排他的SQLサ
ーバに対する接続メソッドを有する適当なDBAオブジ
ェクトを指定することは、SQLサーバ処理プロセスに
対するアクセスに関して生起し得る待機を除去し、更に
デッドロックの可能性も除去する。しかし、他のDBA
オブジェクトを共有SQLサーバへ接続するメソッドに
より指定すると付加的な接続を発生させるが、システム
・オーバヘッドを伴うことになる。
【0022】共有SQLサーバ処理プロセスを指定する
と、SQL UOW実行のためにデータ・ベースに対す
る接続の急増を回避する。しかし、トランザクションの
コミット/ロールバック中に他のDBAオブジェクトか
らのトランザクションによる干渉を回避するために、U
Aは、UOW毎に区切りコールを明白に発行して逐次化
を確保する必要がある。最初、本発明のDBAオブジェ
クトは、「トランザクション開始」及び「トランザクシ
ョン終了」メッセージを用いてUOW境界を区切り、か
つSQLサーバ処理プロセスにおいて複数のトランザク
ション及び複数のトランザクション・グループを逐次化
させる。共有SQLサーバ処理プロセスを指定する利点
は、システム・データ・ベース接続オーバヘッドを最小
化することである。図1のDBAオブジェクト14及び
16のように、共有サーバ・アクセス方法によりDBA
オブジェクトを用いる欠点は、UAがUOW境界、及び
共有するSQLサーバ処理プロセスに対するアクセスに
生起し得る待機を適正にマークしない場合にデッドロッ
クする可能性があることである。
と、SQL UOW実行のためにデータ・ベースに対す
る接続の急増を回避する。しかし、トランザクションの
コミット/ロールバック中に他のDBAオブジェクトか
らのトランザクションによる干渉を回避するために、U
Aは、UOW毎に区切りコールを明白に発行して逐次化
を確保する必要がある。最初、本発明のDBAオブジェ
クトは、「トランザクション開始」及び「トランザクシ
ョン終了」メッセージを用いてUOW境界を区切り、か
つSQLサーバ処理プロセスにおいて複数のトランザク
ション及び複数のトランザクション・グループを逐次化
させる。共有SQLサーバ処理プロセスを指定する利点
は、システム・データ・ベース接続オーバヘッドを最小
化することである。図1のDBAオブジェクト14及び
16のように、共有サーバ・アクセス方法によりDBA
オブジェクトを用いる欠点は、UAがUOW境界、及び
共有するSQLサーバ処理プロセスに対するアクセスに
生起し得る待機を適正にマークしない場合にデッドロッ
クする可能性があることである。
【0023】クライエントUAが排他的SQL処理プロ
セスを必要とするDBAオブジェクト中のメソッドを最
初に呼び出したとき排他的SQLサーバ処理プロセスが
発生される。従って、そのシステムにおける各クライエ
ントDBAオブジェクトに対してこのような排他的SQ
L処理プロセスが1つづつ存在し得る。更に、これは、
本発明のシステムにおいて、UAは各スレッドのために
独立した排他的SQLサーバ処理プロセスを用いる、又
は複数のスレッドにデータ・ルーチングを取り扱うによ
り、多くのスレッド用に単一の排他的SQLサーバ処理
プロセスを用いることができることを意味する。特に、
UAは、複数のSQL処理プロセス要求又はトランザク
ションを含むので単一のUOWも定めることができる。
セスを必要とするDBAオブジェクト中のメソッドを最
初に呼び出したとき排他的SQLサーバ処理プロセスが
発生される。従って、そのシステムにおける各クライエ
ントDBAオブジェクトに対してこのような排他的SQ
L処理プロセスが1つづつ存在し得る。更に、これは、
本発明のシステムにおいて、UAは各スレッドのために
独立した排他的SQLサーバ処理プロセスを用いる、又
は複数のスレッドにデータ・ルーチングを取り扱うによ
り、多くのスレッド用に単一の排他的SQLサーバ処理
プロセスを用いることができることを意味する。特に、
UAは、複数のSQL処理プロセス要求又はトランザク
ションを含むので単一のUOWも定めることができる。
【0024】共有SQLサーバ処理プロセスは、UAが
共有SQL処理プロセスを要求するDBAオブジェクト
中のSQL実行要求を最初に呼出すときに、発生する。
そのときに、全てのクライエントUAプロセッサ又は指
定したデータ・ベース用のスレッドは、対応するクライ
エントDBAオブジェクトにより同一の共有SQL処理
プロセスを介して全てのSQL実行要求を処理する。こ
こで、クライエントUAは、何らかのDBAオブジェク
トに対するSQL実行要求を送出する前に、各トランザ
クションの始終を区分けして共有SQLサーバ処理プロ
セスにおいて並列のUOWの逐次化を確保しなければな
らない。
共有SQL処理プロセスを要求するDBAオブジェクト
中のSQL実行要求を最初に呼出すときに、発生する。
そのときに、全てのクライエントUAプロセッサ又は指
定したデータ・ベース用のスレッドは、対応するクライ
エントDBAオブジェクトにより同一の共有SQL処理
プロセスを介して全てのSQL実行要求を処理する。こ
こで、クライエントUAは、何らかのDBAオブジェク
トに対するSQL実行要求を送出する前に、各トランザ
クションの始終を区分けして共有SQLサーバ処理プロ
セスにおいて並列のUOWの逐次化を確保しなければな
らない。
【0025】全てのUA処理プロセス及びスレッドは共
有カタログ・ルックアップ・テーブル要求のための単一
の共有カタログ・サーバ処理プロセスを介して指定した
データ・べースと通信することができるので、指定した
各データ・ベースには1つのカタログ・サーバ処理プロ
セスしか必要でない。カタログ・サーバ処理プロセス
は、UAが指定したデータ・ベース用のカタログ・ルッ
クアップを必要とするスキーマ検索要求をDBAオブジ
ェクトに送出してから、発生する。これが確立すると、
カタログ・サーバ処理プロセスは指定したデータ・ベー
スに対してアクセスを要求する全てのDBAオブジェク
トに関するサービスを続ける。各要求は完全なUOWを
構成しており、これによって逐次化を確保している。
有カタログ・ルックアップ・テーブル要求のための単一
の共有カタログ・サーバ処理プロセスを介して指定した
データ・べースと通信することができるので、指定した
各データ・ベースには1つのカタログ・サーバ処理プロ
セスしか必要でない。カタログ・サーバ処理プロセス
は、UAが指定したデータ・ベース用のカタログ・ルッ
クアップを必要とするスキーマ検索要求をDBAオブジ
ェクトに送出してから、発生する。これが確立すると、
カタログ・サーバ処理プロセスは指定したデータ・ベー
スに対してアクセスを要求する全てのDBAオブジェク
トに関するサービスを続ける。各要求は完全なUOWを
構成しており、これによって逐次化を確保している。
【0026】図2は本発明のシステム用の好ましいサブ
コンポーネント構造を示す。説明に際して図1のDBA
オブジェクト14を更に詳細に示す。図1に示すよう
に、カタログ・サーバ・メソッド30はカタログ・サー
バ処理プロセス28に接続されており、SQL実行メソ
ッド24はSQLサーバ処理プロセス26に接続されて
いる。
コンポーネント構造を示す。説明に際して図1のDBA
オブジェクト14を更に詳細に示す。図1に示すよう
に、カタログ・サーバ・メソッド30はカタログ・サー
バ処理プロセス28に接続されており、SQL実行メソ
ッド24はSQLサーバ処理プロセス26に接続されて
いる。
【0027】図2において、SQL実行メソッド24及
びカタログ・サーバ・メソッド30は、それぞれDBA
オブジェクト14とデータ・ベースD1に接続された基
礎のデータ・ベース管理システム(DBMS)との間の
論理接続をモデル化している。UA(図示なし)からの
あらゆる要求のために、DBAオブジェクト14は、第
1にチェックにより適当なサーバに対する論理接続が存
在するか否かを判断する。ノーのときは、接続マネジャ
ーオブジェクト(図示なし)を呼出して新しいサーバ処
理プロセスを発生させることにより、又はデータ・ベー
ス接続テーブル(DBCT)に存在するサーバ処理プロ
セスを発生させることにより、必要な論理接続を確立す
る。接続マネジャーは、応答してSQL処理プロセスを
共有することができるか、又は新しいSQL処理プロセ
スを発生させるべきかを判断する責任を持つ。接続マネ
ジャーは、全てのサーバ処理プロセスについての情報を
記憶する大域的なグローバル共有メモリ内のデータ・ベ
ース接続テーブル(DBCT)を管理する。以下、図4
〜図5に関連して本発明の接続マネジャー及びDBCT
を説明する。論理接続が既に存在するときは、DBAオ
ブジェクト14は要求を関連して指定したパイプ(プロ
セス間通信サービス・サブコンポーネントにより管理さ
れる)により適当なサーバ処理プロセスへ送出し、かつ
要求の結果を提供する戻りメッセージを待機する。
びカタログ・サーバ・メソッド30は、それぞれDBA
オブジェクト14とデータ・ベースD1に接続された基
礎のデータ・ベース管理システム(DBMS)との間の
論理接続をモデル化している。UA(図示なし)からの
あらゆる要求のために、DBAオブジェクト14は、第
1にチェックにより適当なサーバに対する論理接続が存
在するか否かを判断する。ノーのときは、接続マネジャ
ーオブジェクト(図示なし)を呼出して新しいサーバ処
理プロセスを発生させることにより、又はデータ・ベー
ス接続テーブル(DBCT)に存在するサーバ処理プロ
セスを発生させることにより、必要な論理接続を確立す
る。接続マネジャーは、応答してSQL処理プロセスを
共有することができるか、又は新しいSQL処理プロセ
スを発生させるべきかを判断する責任を持つ。接続マネ
ジャーは、全てのサーバ処理プロセスについての情報を
記憶する大域的なグローバル共有メモリ内のデータ・ベ
ース接続テーブル(DBCT)を管理する。以下、図4
〜図5に関連して本発明の接続マネジャー及びDBCT
を説明する。論理接続が既に存在するときは、DBAオ
ブジェクト14は要求を関連して指定したパイプ(プロ
セス間通信サービス・サブコンポーネントにより管理さ
れる)により適当なサーバ処理プロセスへ送出し、かつ
要求の結果を提供する戻りメッセージを待機する。
【0028】ここで、サーバ処理プロセスを選択し、か
つデータ・ベース・アクセス要求メッセージを同期させ
る規則を説明する。全てのスキーマ検索要求に対して、
カタログ・サーバ処理プロセス28が選択される。カタ
ログ・サーバ処理プロセス28は同一データ・ベース名
を参照するDBAオブジェクトのすべてのインスタンス
に共有される。同一のサーバ処理プロセスに対する多重
要求は、当該技術分野において知られた方法により、サ
ーバが指定したパイプの処理プロセスにより逐次化され
る。図2において、アプリケーション・プログラム・イ
ンタフェース(API)42はカタログ・サーバ処理プ
ロセス28にリンクさせるために必要な活動を行なう。
API42は処理プロセス間通信(IPC)サービス・
サブコンポーネント44を介してこれに割り当てられた
タスクを達成する。API42はUAから受信したデー
タ・ベース・アクセス要求を翻訳してメッセージ・パッ
ケージを発生し、カタログ・サーバ・メソッド30から
指定したパイプ(IPCサービス・サブコンポーネント
44〜46)を介してカタログ・サーバ処理プロセス2
8へ転送する。更に、メッセージがカタログ・サーバ処
理プロセス28からカタログ・サーバ・メソッド30へ
戻されると、API42は大域的な共有メモリ(図4〜
図5)に戻されたデータを用いてUA用の出力オブジェ
クトを生成する。
つデータ・ベース・アクセス要求メッセージを同期させ
る規則を説明する。全てのスキーマ検索要求に対して、
カタログ・サーバ処理プロセス28が選択される。カタ
ログ・サーバ処理プロセス28は同一データ・ベース名
を参照するDBAオブジェクトのすべてのインスタンス
に共有される。同一のサーバ処理プロセスに対する多重
要求は、当該技術分野において知られた方法により、サ
ーバが指定したパイプの処理プロセスにより逐次化され
る。図2において、アプリケーション・プログラム・イ
ンタフェース(API)42はカタログ・サーバ処理プ
ロセス28にリンクさせるために必要な活動を行なう。
API42は処理プロセス間通信(IPC)サービス・
サブコンポーネント44を介してこれに割り当てられた
タスクを達成する。API42はUAから受信したデー
タ・ベース・アクセス要求を翻訳してメッセージ・パッ
ケージを発生し、カタログ・サーバ・メソッド30から
指定したパイプ(IPCサービス・サブコンポーネント
44〜46)を介してカタログ・サーバ処理プロセス2
8へ転送する。更に、メッセージがカタログ・サーバ処
理プロセス28からカタログ・サーバ・メソッド30へ
戻されると、API42は大域的な共有メモリ(図4〜
図5)に戻されたデータを用いてUA用の出力オブジェ
クトを生成する。
【0029】IPCサービス・サブコンポーネント44
〜46は、カタログ・サーバ・メソッド30とカタログ
・サーバ処理プロセス28との間でデータ及びメッセー
ジを転送する役割を持つ。IPCサービス・サブコンポ
ーネント44〜46は必要な「指定したパイプ」を生成
し、かつ管理をする。IPCサービス・サブコンポーネ
ント44〜46はAPI 42から要求パケットを受け
取り、次に指定したパイプを用いてこの要求をカタログ
・サーバ処理プロセス28へ転送し、カタログ・サーバ
処理プロセス28は要求マネジャー(RM)48で要求
パケットを受け取る。RM48は要求パケットを処理
し、応答パケットをIPCサービス・サブコンポーネン
ト46〜44へ渡し、指定したパイプを介してAPI
42へ転送する。
〜46は、カタログ・サーバ・メソッド30とカタログ
・サーバ処理プロセス28との間でデータ及びメッセー
ジを転送する役割を持つ。IPCサービス・サブコンポ
ーネント44〜46は必要な「指定したパイプ」を生成
し、かつ管理をする。IPCサービス・サブコンポーネ
ント44〜46はAPI 42から要求パケットを受け
取り、次に指定したパイプを用いてこの要求をカタログ
・サーバ処理プロセス28へ転送し、カタログ・サーバ
処理プロセス28は要求マネジャー(RM)48で要求
パケットを受け取る。RM48は要求パケットを処理
し、応答パケットをIPCサービス・サブコンポーネン
ト46〜44へ渡し、指定したパイプを介してAPI
42へ転送する。
【0030】カタログ・サーバ・メソッド30及びカタ
ログ・サーバ処理プロセス28により表わされる処理プ
ロセスは互いに関係がないので、本発明のシステムでは
指定したパイプが用いられる。当該技術分野において周
知のように、指定したパイプはファースト・イン・ファ
ースト・アウト(FIFO)形式により相関されていな
い処理プロセス間の転送を可能にし、更に処理プロセス
の実行を同期可能にする。指定したパイプはファイル・
システムのハイアラーキに永久的に残ることができ、か
つこれをシステム・ファイル・コールによる種々の処理
プロセスに対して切り離し及び再接続することができ
る。カタログ・サーバ処理プロセス28はIPCサービ
ス・サブコンポーネント46〜44により管理されたパ
イプを生成する。指定したパイプはローカルであり、双
方向データの流れを可能にするように二重化されてい
る。更に、データが読み出し可能になるまで、又はデー
タの書き込みに十分な空間が得られるまで、「待機」モ
ードにより読み出し動作又は書き込み動作を阻止する。
入力として他に指定したパイプの特徴を指定することが
できる。
ログ・サーバ処理プロセス28により表わされる処理プ
ロセスは互いに関係がないので、本発明のシステムでは
指定したパイプが用いられる。当該技術分野において周
知のように、指定したパイプはファースト・イン・ファ
ースト・アウト(FIFO)形式により相関されていな
い処理プロセス間の転送を可能にし、更に処理プロセス
の実行を同期可能にする。指定したパイプはファイル・
システムのハイアラーキに永久的に残ることができ、か
つこれをシステム・ファイル・コールによる種々の処理
プロセスに対して切り離し及び再接続することができ
る。カタログ・サーバ処理プロセス28はIPCサービ
ス・サブコンポーネント46〜44により管理されたパ
イプを生成する。指定したパイプはローカルであり、双
方向データの流れを可能にするように二重化されてい
る。更に、データが読み出し可能になるまで、又はデー
タの書き込みに十分な空間が得られるまで、「待機」モ
ードにより読み出し動作又は書き込み動作を阻止する。
入力として他に指定したパイプの特徴を指定することが
できる。
【0031】DBAオブジェクト14におけるカタログ
・サーバ・メソッド30は、指定したパイプ上の要求を
カタログ・サーバ処理プロセス28へ送出し、かつ応答
を返送する。その場合に、カタログ・サーバ処理プロセ
ス28は指定したパイプを切り離し、これを再接続し、
かつ次のDBAオブジェクト14からの要求を待機する
必要がある。カタログ・サーバ処理プロセス28の場合
は、指定したパイプをDBAオブジェクト14から切り
離して、スキーマ検索サービスを要求する他のDBAオ
ブジェクトに再接続する。何時、カタログ・サーバ・メ
ソッド30から指定したパイプを切り離し可能となるか
は、DBAオブジェクト14が切り離し要求をカタログ
・サーバ処理プロセス28へ送出して知らせることが好
ましい。
・サーバ・メソッド30は、指定したパイプ上の要求を
カタログ・サーバ処理プロセス28へ送出し、かつ応答
を返送する。その場合に、カタログ・サーバ処理プロセ
ス28は指定したパイプを切り離し、これを再接続し、
かつ次のDBAオブジェクト14からの要求を待機する
必要がある。カタログ・サーバ処理プロセス28の場合
は、指定したパイプをDBAオブジェクト14から切り
離して、スキーマ検索サービスを要求する他のDBAオ
ブジェクトに再接続する。何時、カタログ・サーバ・メ
ソッド30から指定したパイプを切り離し可能となるか
は、DBAオブジェクト14が切り離し要求をカタログ
・サーバ処理プロセス28へ送出して知らせることが好
ましい。
【0032】同様に、DBAオブジェクト14における
SQL実行メソッド24は、指定したパイプ上をAPI
50、クライエントIPC52、サーバIPC54及び
及び要求マネジャー56を介してSQLサーバ処理プロ
セス26へ通信する。SQLサーバ処理プロセス26は
「共有」サーバ処理プロセスであるので、SQL実行メ
ソッド24とSQLサーバ処理プロセス26との間の第
2の論理経路は、カタログ・サーバ・メソッド30とカ
タログ・サーバ処理プロセス28との間の第1の論理経
路に関連して以上で説明したようにほぼ動作する。特
に、第2の論理経路を共有することが可能なときは、指
定したパイプ(IPC52〜54)を切り離して関連す
るDBAオブジェクトに再接続し、共有SQLサーバ処
理プロセス26へ完全にリンクされたままとなる。しか
し、SQL UOW実行メッセージは逐次化される必要
があるので、付加的な必要条件がここで説明しているA
PI50に設定される。
SQL実行メソッド24は、指定したパイプ上をAPI
50、クライエントIPC52、サーバIPC54及び
及び要求マネジャー56を介してSQLサーバ処理プロ
セス26へ通信する。SQLサーバ処理プロセス26は
「共有」サーバ処理プロセスであるので、SQL実行メ
ソッド24とSQLサーバ処理プロセス26との間の第
2の論理経路は、カタログ・サーバ・メソッド30とカ
タログ・サーバ処理プロセス28との間の第1の論理経
路に関連して以上で説明したようにほぼ動作する。特
に、第2の論理経路を共有することが可能なときは、指
定したパイプ(IPC52〜54)を切り離して関連す
るDBAオブジェクトに再接続し、共有SQLサーバ処
理プロセス26へ完全にリンクされたままとなる。しか
し、SQL UOW実行メッセージは逐次化される必要
があるので、付加的な必要条件がここで説明しているA
PI50に設定される。
【0033】SQLサーバは、クライエントUAからの
全てのSQL UOW実行要求に用いられる。通常、指
定されたデータ・ベースへ並列に更新を行なうことがで
きたので、排他的SQLサーバ処理プロセスは望ましい
が、UOWは現在用いられているDBAオブジェクトの
みに関連する必要がある。いくつかの状況では、UAク
ライエントが指定されたデータ・ベースに対して短いト
ランザクションのみを意図することができ、図1の処理
プロセスBに示すように、同一データ・ベースに対して
多くのDBAオブジェクト・インスタンスを便宜的に採
用することができる。このようなアプリケーションで
は、以下の制約を条件として共有SQLサーバ処理プロ
セス26により例示されたSQLサーバを用いることが
できる。
全てのSQL UOW実行要求に用いられる。通常、指
定されたデータ・ベースへ並列に更新を行なうことがで
きたので、排他的SQLサーバ処理プロセスは望ましい
が、UOWは現在用いられているDBAオブジェクトの
みに関連する必要がある。いくつかの状況では、UAク
ライエントが指定されたデータ・ベースに対して短いト
ランザクションのみを意図することができ、図1の処理
プロセスBに示すように、同一データ・ベースに対して
多くのDBAオブジェクト・インスタンスを便宜的に採
用することができる。このようなアプリケーションで
は、以下の制約を条件として共有SQLサーバ処理プロ
セス26により例示されたSQLサーバを用いることが
できる。
【0034】共有SQLサーバにより、単一のトランザ
クション「範囲」内で全てのSQL要求を用いる必要が
ある。「トランザクション開始」及び「トランザクショ
ン終了」メソッドのように、DBAオブジェクト14に
組込まれた2つのメソッドを用いて、トランザクション
の範囲を区分けする。「トランザクション開始」メソッ
ドは、最初は、SQLサーバ処理プロセス26に関連し
た相互に排他的なミューテックス・セマフォ(mutex sem
aphore)を得る。同時に一つの要求がこのミューテック
ス・セマフォを所有し、「トランザクション終了」で
は、ミューテックス・セマフォを解放し、新しい所有権
に利用可能となる。従って、相互に排他的的なミューテ
ックス・セマフォの獲得及び解放によりマークされたト
ランザクション範囲内で共有SQLサーバを用いてすべ
てのUAが要求を出すことを必要とすることにより、全
てのデータ・ベース・アクセスは単一のUOW範囲内で
逐次化され、従って本発明の共有SQLサーバ処理プロ
セスの使用を可能にする。
クション「範囲」内で全てのSQL要求を用いる必要が
ある。「トランザクション開始」及び「トランザクショ
ン終了」メソッドのように、DBAオブジェクト14に
組込まれた2つのメソッドを用いて、トランザクション
の範囲を区分けする。「トランザクション開始」メソッ
ドは、最初は、SQLサーバ処理プロセス26に関連し
た相互に排他的なミューテックス・セマフォ(mutex sem
aphore)を得る。同時に一つの要求がこのミューテック
ス・セマフォを所有し、「トランザクション終了」で
は、ミューテックス・セマフォを解放し、新しい所有権
に利用可能となる。従って、相互に排他的的なミューテ
ックス・セマフォの獲得及び解放によりマークされたト
ランザクション範囲内で共有SQLサーバを用いてすべ
てのUAが要求を出すことを必要とすることにより、全
てのデータ・ベース・アクセスは単一のUOW範囲内で
逐次化され、従って本発明の共有SQLサーバ処理プロ
セスの使用を可能にする。
【0035】まずDBAオブジェクトが生成されると、
オブジェクトコンストラクタはアンカー・ブロック58
及び本発明のDBCT60を初期化する。図4は、デー
タ処理システムの大域的な共有メモリに存在するアンカ
ー・ブロック58及び本発明のDBCT60のデータ・
アクセスを示す。アンカー・ブロック58は他の並列処
理プロセスがアクセスできるように指名される。同時的
なアクセスから大域的なデータ・エリアを保護するため
に、ミューテックス・セマフォ62を用いて図2と関連
して前述と同じようにアクセスを逐次化する。初期化中
に、大域的なデータ・エリアのために共有メモリを割り
当て、かつミューテックス・セマフォ62を生成する。
アンカー・ブロック58は、いくつかの大域的なデータ
と、データ・ベースのアクセス要求に応答して共有メモ
リに転送した大規模なデータ・ベースのような他のデー
タに対するポインタとを有する。更に、アンカー・ブロ
ック58は、ミューテックス・セマフォカウンタ64、
DBCT60に対するポインタ66、DBCTメモリ・
プールに対するポインタ68、SQL誤りに関連したS
QLCAデータ70、システム誤り用のシステム戻りコ
ード(RC)72、及びシステムの誤り型式を識別する
内部復帰コード(RC)74を有する。フィールド70
〜74は、クライエントDBAオブジェクトに関連し、
これに対してアンカー・ブロック58を関連させるカタ
ログ・サーバ処理プロセス、又はSQLサーバ処理プロ
セスの初期化中に発生する誤りについての情報をセーブ
するために、用いられる。
オブジェクトコンストラクタはアンカー・ブロック58
及び本発明のDBCT60を初期化する。図4は、デー
タ処理システムの大域的な共有メモリに存在するアンカ
ー・ブロック58及び本発明のDBCT60のデータ・
アクセスを示す。アンカー・ブロック58は他の並列処
理プロセスがアクセスできるように指名される。同時的
なアクセスから大域的なデータ・エリアを保護するため
に、ミューテックス・セマフォ62を用いて図2と関連
して前述と同じようにアクセスを逐次化する。初期化中
に、大域的なデータ・エリアのために共有メモリを割り
当て、かつミューテックス・セマフォ62を生成する。
アンカー・ブロック58は、いくつかの大域的なデータ
と、データ・ベースのアクセス要求に応答して共有メモ
リに転送した大規模なデータ・ベースのような他のデー
タに対するポインタとを有する。更に、アンカー・ブロ
ック58は、ミューテックス・セマフォカウンタ64、
DBCT60に対するポインタ66、DBCTメモリ・
プールに対するポインタ68、SQL誤りに関連したS
QLCAデータ70、システム誤り用のシステム戻りコ
ード(RC)72、及びシステムの誤り型式を識別する
内部復帰コード(RC)74を有する。フィールド70
〜74は、クライエントDBAオブジェクトに関連し、
これに対してアンカー・ブロック58を関連させるカタ
ログ・サーバ処理プロセス、又はSQLサーバ処理プロ
セスの初期化中に発生する誤りについての情報をセーブ
するために、用いられる。
【0036】ミューテックス・セマフォ62の所有権を
保持中に処理プロセスが終結すると、その後は他の処理
プロセスがミューテックス・セマフォ62に対してアク
セス権を有し、新しいセマフォ名を生成しなければなら
ない。ミューテックス・セマフォ・カウンタ64はロー
カル処理プロセスカウンタと共に用いられ、このような
環境において新しいミューテックス・セマフォ名の生成
を処理する。ミューテックス・セマフォ・カウンタ64
に保持されている値は、ミューテックス・セマフォ名の
一部分であり、かつ処理プロセスはミューテックス・セ
マフォを使用しようとし、前の所有者が終結されたとき
は、部分的にミューテックス・セマフォ・カウンタ64
を一つだけ増加させることにより、新しい名称を発生す
る。他の処理プロセスがミューテックス・セマフォ62
を使用してるときは、そのローカル・カウンタがミュー
テックス・セマフォ・カウンタ64と相違するのを発見
し、これに応答してローカル・カウンタをリセットして
速やかに新しいミューテックス・セマフォを開く。
保持中に処理プロセスが終結すると、その後は他の処理
プロセスがミューテックス・セマフォ62に対してアク
セス権を有し、新しいセマフォ名を生成しなければなら
ない。ミューテックス・セマフォ・カウンタ64はロー
カル処理プロセスカウンタと共に用いられ、このような
環境において新しいミューテックス・セマフォ名の生成
を処理する。ミューテックス・セマフォ・カウンタ64
に保持されている値は、ミューテックス・セマフォ名の
一部分であり、かつ処理プロセスはミューテックス・セ
マフォを使用しようとし、前の所有者が終結されたとき
は、部分的にミューテックス・セマフォ・カウンタ64
を一つだけ増加させることにより、新しい名称を発生す
る。他の処理プロセスがミューテックス・セマフォ62
を使用してるときは、そのローカル・カウンタがミュー
テックス・セマフォ・カウンタ64と相違するのを発見
し、これに応答してローカル・カウンタをリセットして
速やかに新しいミューテックス・セマフォを開く。
【0037】図4におけるポインタ66はDBCT60
の場所を示し、これは親のDBAオブジェクトに対する
最初のDBCTである。新しいサーバ処理プロセスを必
要とすることを接続マネジャー(図5)が判断すると、
このサーバ処理プロセスを発生してこの発生時に以下の
情報、即ち、(a)このサーバが接続されているデータ
・ベースの名称、(b)発生が首尾良く終結した後にこ
の処理プロセスにより満たされるべきDBCTにおける
空きエントリ(例えばエントリ76)へのポインタ、及
び(c)誤りに関する接続マネジャーと、を転送する。
この接続マネジャーは、埋め込まれたサブコンポーネン
トとして、図2におけるRM56により例示された要求
マネジャー(RM)を備えている。RMサブコンポーネ
ントはサーバ処理プロセスの初期化中にエントリ76に
より例示されたDBCT60において接続エントリをセ
ットし、かつ関連するサーバ処理プロセスの終結中にエ
ントリ76を削除する。
の場所を示し、これは親のDBAオブジェクトに対する
最初のDBCTである。新しいサーバ処理プロセスを必
要とすることを接続マネジャー(図5)が判断すると、
このサーバ処理プロセスを発生してこの発生時に以下の
情報、即ち、(a)このサーバが接続されているデータ
・ベースの名称、(b)発生が首尾良く終結した後にこ
の処理プロセスにより満たされるべきDBCTにおける
空きエントリ(例えばエントリ76)へのポインタ、及
び(c)誤りに関する接続マネジャーと、を転送する。
この接続マネジャーは、埋め込まれたサブコンポーネン
トとして、図2におけるRM56により例示された要求
マネジャー(RM)を備えている。RMサブコンポーネ
ントはサーバ処理プロセスの初期化中にエントリ76に
より例示されたDBCT60において接続エントリをセ
ットし、かつ関連するサーバ処理プロセスの終結中にエ
ントリ76を削除する。
【0038】DBCT60はデータ・ベース接続を追跡
する。これには接続したデータ・ベースと、カタログ・
サーバ処理プロセス及びSQLサーバ処理プロセスとに
ついての情報が含まれる。エントリ76により例示され
た各エントリには、好ましくは、接続したデータ・ベー
スの名称、接続のための識別エントリ、対応するサーバ
処理プロセスを共有する関連のDBAオブジェクト数の
使用カウント、対応するサーバ処理プロセスの型式、対
応するサーバ処理プロセスの共有モード(排他的又は共
有)、対応するサーバ処理プロセス用の呼出可能な名
称、及びエントリが「削除」されたか否かを表わすフラ
グが含まれる。
する。これには接続したデータ・ベースと、カタログ・
サーバ処理プロセス及びSQLサーバ処理プロセスとに
ついての情報が含まれる。エントリ76により例示され
た各エントリには、好ましくは、接続したデータ・ベー
スの名称、接続のための識別エントリ、対応するサーバ
処理プロセスを共有する関連のDBAオブジェクト数の
使用カウント、対応するサーバ処理プロセスの型式、対
応するサーバ処理プロセスの共有モード(排他的又は共
有)、対応するサーバ処理プロセス用の呼出可能な名
称、及びエントリが「削除」されたか否かを表わすフラ
グが含まれる。
【0039】本発明をより良く理解するために、本発明
者が考察したが、採用しなかったデータ・アクセス・モ
デルを示す図3について考える。処理プロセスBにおけ
る各DBAオブジェクトは単一のB接続を介して動作す
る。図3における処理プロセスモデルは、データ・ベー
ス当たり一つの接続のみを必要とするだけなので、ある
程度のパフォーマンス・ゲインが得られるが、トランザ
クション内で多重SQLステートメントが不可能であ
り、またSQL窓内でSQLサーバ処理プロセスの選択
が不可能である。データ・ベース当たり一つのデータ・
ベース接続処理プロセスを介して単一のUOWにおいて
多重ステートメントをサポートする他の実施例は、デー
タ・ベース接続処理プロセス自体に対するUOW管理活
動を割り当てることである。このようなデータ・ベース
接続処理プロセスは、着信する複数の要求をチェック
し、かつ現在の作業単位に関連したもののみを処理し、
他のトランザクションに関連されるものを保持するであ
ろう。これに代わるものを考えたが、これもデータ・ベ
ース接続処理プロセスにおいて必要とする膨大な処理プ
ロセスオーバーヘッドのために、本発明者が採用しなか
った。更に、データ・ベース接続処理プロセスは、現在
のUOWを実行するまで他の全てのクライエントからの
要求を保留するので、他のクライエントからのデータ・
ベース・アクセス要求はこのような機構においては待機
が長くなり過ぎる恐れがある。従って、図2及び図4に
関連して前述したように、ミューテックス・セマフォ、
本発明のUOW阻止機構が好ましい。
者が考察したが、採用しなかったデータ・アクセス・モ
デルを示す図3について考える。処理プロセスBにおけ
る各DBAオブジェクトは単一のB接続を介して動作す
る。図3における処理プロセスモデルは、データ・ベー
ス当たり一つの接続のみを必要とするだけなので、ある
程度のパフォーマンス・ゲインが得られるが、トランザ
クション内で多重SQLステートメントが不可能であ
り、またSQL窓内でSQLサーバ処理プロセスの選択
が不可能である。データ・ベース当たり一つのデータ・
ベース接続処理プロセスを介して単一のUOWにおいて
多重ステートメントをサポートする他の実施例は、デー
タ・ベース接続処理プロセス自体に対するUOW管理活
動を割り当てることである。このようなデータ・ベース
接続処理プロセスは、着信する複数の要求をチェック
し、かつ現在の作業単位に関連したもののみを処理し、
他のトランザクションに関連されるものを保持するであ
ろう。これに代わるものを考えたが、これもデータ・ベ
ース接続処理プロセスにおいて必要とする膨大な処理プ
ロセスオーバーヘッドのために、本発明者が採用しなか
った。更に、データ・ベース接続処理プロセスは、現在
のUOWを実行するまで他の全てのクライエントからの
要求を保留するので、他のクライエントからのデータ・
ベース・アクセス要求はこのような機構においては待機
が長くなり過ぎる恐れがある。従って、図2及び図4に
関連して前述したように、ミューテックス・セマフォ、
本発明のUOW阻止機構が好ましい。
【0040】図5はデータ処理プロセスシステムのデー
タ記憶手段に共にリンクされた複数のオブジェクトを示
すことにより本発明のシステムを示す。接続を記録し、
かつデータ・ベース82により例示された各データ・ベ
ースを処理するDBCT80と、DBAオブジェクト8
4により例示された各データ・ベース・アクセス・オブ
ジェクトとに接続された接続マネジャー78が示されて
いる。処理プロセス85のような排他的SQLサーバ処
理プロセスは、指定したパイプを介してクライエントD
BAオブジェクト84に直接リンクされる。更に、処理
プロセス86により例示された共有SQLサーバ処理プ
ロセスは、指定したパイプ88のように、指定したパイ
プを介してクライエントDBAオブジェクト90に接続
されている。指定したパイプ88は切り離されて、例え
ばDBAオブジェクト90とDBAオブジェクト92と
の間に接続されてもよい。クライエントDBAオブジェ
クト84、90及び92は、全て、単一のユーザ・アプ
リケーション(UA)94からのデータ・アクセス要求
に応答して生成される。処理プロセス96により例示さ
れたスキーマ検索(カタログ・サーバ)処理プロセスを
含む全てのサーバ処理プロセスは、オブジェクト92の
ようなDBAオブジェクトからのデータ・ベース・アク
セス要求に応答して、生成される。SQLサーバ処理プ
ロセス86のような各サーバ処理プロセスは、指定され
たデータ・ベースに関連したDBMSに接続される。デ
ータ・ベース・アクセス・サーバの手順は、図6を参照
して理解される。
タ記憶手段に共にリンクされた複数のオブジェクトを示
すことにより本発明のシステムを示す。接続を記録し、
かつデータ・ベース82により例示された各データ・ベ
ースを処理するDBCT80と、DBAオブジェクト8
4により例示された各データ・ベース・アクセス・オブ
ジェクトとに接続された接続マネジャー78が示されて
いる。処理プロセス85のような排他的SQLサーバ処
理プロセスは、指定したパイプを介してクライエントD
BAオブジェクト84に直接リンクされる。更に、処理
プロセス86により例示された共有SQLサーバ処理プ
ロセスは、指定したパイプ88のように、指定したパイ
プを介してクライエントDBAオブジェクト90に接続
されている。指定したパイプ88は切り離されて、例え
ばDBAオブジェクト90とDBAオブジェクト92と
の間に接続されてもよい。クライエントDBAオブジェ
クト84、90及び92は、全て、単一のユーザ・アプ
リケーション(UA)94からのデータ・アクセス要求
に応答して生成される。処理プロセス96により例示さ
れたスキーマ検索(カタログ・サーバ)処理プロセスを
含む全てのサーバ処理プロセスは、オブジェクト92の
ようなDBAオブジェクトからのデータ・ベース・アク
セス要求に応答して、生成される。SQLサーバ処理プ
ロセス86のような各サーバ処理プロセスは、指定され
たデータ・ベースに関連したDBMSに接続される。デ
ータ・ベース・アクセス・サーバの手順は、図6を参照
して理解される。
【0041】図6において、ユーザ・アプリケーション
94はDBAオブジェクト92に対するSQL UOW
メッセージを含むデータ・ベース・アクセス要求を送出
する。オブジェクト92(SQL実行オブジェクト9
8)における第2の2つの内部接続メソッドは、必要に
より発生されるSQLサーバ処理プロセス86に対する
接続を行なう。
94はDBAオブジェクト92に対するSQL UOW
メッセージを含むデータ・ベース・アクセス要求を送出
する。オブジェクト92(SQL実行オブジェクト9
8)における第2の2つの内部接続メソッドは、必要に
より発生されるSQLサーバ処理プロセス86に対する
接続を行なう。
【0042】SQLサーバ処理プロセス86は指定した
パイプ88を構築させ、これをSQL実行オブジェクト
98を介して(リンクされた)名称により呼出す。SQ
L実行オブジェクト98は指定したパイプ88を介して
サーバ処理プロセス86へメッセージを渡し、次いでサ
ーバ処理プロセス86は独立してメッセージをデータ・
ベース管理システム(DBMS)100に送出する。そ
こで、DBMS100はサーバ処理プロセス86からの
メッセージに応答してデータ・ベース102へデータを
転送させる。サーバ処理プロセス86はデータをDBM
S100から共有したメモリ領域104へ転送させる。
これは、長いデータ・フローの転送によって指定したパ
イプ88が拘束されるのを防止する。その代わりに、サ
ーバ処理プロセス86は単純に共有メモリ・ポインタを
DBAオブジェクト92へ返送する。最後に、ユーザ・
アプリケーション94は、共有メモリ・ポインタを用い
て、DBAオブジェクト92及びAPIオブジェクト1
06を介して共有メモリ104を接続し、かつ実行して
いるUOWに従ってデータを取り扱う。
パイプ88を構築させ、これをSQL実行オブジェクト
98を介して(リンクされた)名称により呼出す。SQ
L実行オブジェクト98は指定したパイプ88を介して
サーバ処理プロセス86へメッセージを渡し、次いでサ
ーバ処理プロセス86は独立してメッセージをデータ・
ベース管理システム(DBMS)100に送出する。そ
こで、DBMS100はサーバ処理プロセス86からの
メッセージに応答してデータ・ベース102へデータを
転送させる。サーバ処理プロセス86はデータをDBM
S100から共有したメモリ領域104へ転送させる。
これは、長いデータ・フローの転送によって指定したパ
イプ88が拘束されるのを防止する。その代わりに、サ
ーバ処理プロセス86は単純に共有メモリ・ポインタを
DBAオブジェクト92へ返送する。最後に、ユーザ・
アプリケーション94は、共有メモリ・ポインタを用い
て、DBAオブジェクト92及びAPIオブジェクト1
06を介して共有メモリ104を接続し、かつ実行して
いるUOWに従ってデータを取り扱う。
【0043】
【発明の効果】本発明の方法の効果は、共有接続を用い
てデータ・ベースを変更させてしまうことなく、データ
・ベース機構の情報を照会することができることであ
る。更に、本システムの方法の他の効果は、共有データ
・ベース接続を用いてデータ・ベースを変更するSQL
実行要求をUAクライエントが要求する時に、そのよう
に処理することができることである。
てデータ・ベースを変更させてしまうことなく、データ
・ベース機構の情報を照会することができることであ
る。更に、本システムの方法の他の効果は、共有データ
・ベース接続を用いてデータ・ベースを変更するSQL
実行要求をUAクライエントが要求する時に、そのよう
に処理することができることである。
【図1】本発明のデータ処理システムを例示する処理モ
デルの機能的なブロック図である。
デルの機能的なブロック図である。
【図2】本発明のデータ処理システムの実施例に関連し
たデータ・アクセス・サブコンポーネントを説明する機
能的なブロック図である。
たデータ・アクセス・サブコンポーネントを説明する機
能的なブロック図である。
【図3】本発明により考慮されると共に放棄された他の
処理モデルを示す機能的なブロック図である。
処理モデルを示す機能的なブロック図である。
【図4】本発明のデータ・ベース接続テーブル(DBC
T)を説明する機能的なブロック図である。
T)を説明する機能的なブロック図である。
【図5】本発明の方法の実施に適当なデータ処理多重シ
ステムの機能的なブロック図である。
ステムの機能的なブロック図である。
【図6】本発明の方法のためのSQL UOW実行メッ
セージ及びデータ・フローを説明する機能的なブロック
図である。
セージ及びデータ・フローを説明する機能的なブロック
図である。
10、12、14、16 DBAオブジェクト 18 第1の処理 20 組込みスキーマ検索メソッド 22、24 SQL実行メソッド 24 SQL実行メソッド 28 カタログ・サーバ処理 26、32、34、36、38 SQLサーバ処理
───────────────────────────────────────────────────── フロントページの続き (72)発明者 トニー・クエン・リー アメリカ合衆国95120 カリフォルニア 州、サン・ノゼ、ブレット・ハーテ・ド ライブ 7092 (72)発明者 ジェニー・ユックー・ニシムラ アメリカ合衆国95131 カリフォルニア 州、サン・ノゼ、ウィンストン・ストリ ート 1730 (72)発明者 ゲルダ・ルース・シャンク アメリカ合衆国94103 カリフォルニア 州、サンフランシスコ、ナトマ・ストリ ート 1090 (56)参考文献 特開 平2−58165(JP,A) 野口監,疋田著「COMシリーズ図解 分散型データベースシステム入門」オ ーム社(平1−5−25),p.36−38, 70−79 岩井,外4名「分散RDB管理システ ムに於ける辞書管理方式」情報処理学会 第42回(平成3年前期)全国大会講演論 文集(4)p.109−110(平3−3− 12) 久保田,植村「分散型データベースシ ステムにおけるシステムカタログ管理の 一方法」電子情報通信学会技術研究報告 (DE89−48)Vol.89,No.466, 1990(平2−3−22) 森本,外3名「関係データベースを利 用したオブジェクトサーバのデータ管 理」情報処理学会研究報告(93−DBS −93−11,93−OS−59−11),Vo l.93,No.45,1993(平5−5− 27),p.93−102 (58)調査した分野(Int.Cl.7,DB名) G06F 17/30 G06F 12/00 513 JICSTファイル(JOIS)
Claims (15)
- 【請求項1】複数のデータ・ベースとスキーマの照会お
よび構造化照会言語(SQL)の複数の作業単位(UO
W)を実行する要求を含むデータ・ベース・アクセス要
求を処理するための複数のユーザ・アプリケーション
(UA)とを記憶し、それぞれのデータ・ベースに各々
リンクされた複数のカタログ・サーバ処理プロセスおよ
びそれぞれのデータ・ベースに各々リンクされた複数の
SQLサーバ処理プロセスを記憶し、ユーザ・アプリケ
ーション(UA)と前記データ・ベースとの間でメッセ
ージを転送するための複数のデータ・ベース・アクセス
(DBA)オブジェクトを含む複数のオブジェクトを記
憶するための記憶手段を有するオブジェクト指向データ
・ベース処理システムにおいて、前記複数のユーザ・ア
プリケーションの第1のものからの1以上の前記データ
・ベース・アクセス要求に応答して、第1の前記データ
・ベースにおいてデータをアクセスする方法であって、 前記複数のカタログ・サーバ処理プロセスおよび前記複
数のDBAオブジェクトの間の複数の第1の論理経路
と、前記複数のSQLサーバ処理プロセスおよび前記複
数のDBAオブジェクトの間の複数の第2の論理経路と
を形成するステップを含み、 前記第1の論理経路の少なくとも1つの経路は前記複数
のDBAオブジェクトの内の2つ以上によって共有さ
れ、 前記ステップに続いて、 (a)前記第1のUAと前記第1のデータ・ベースとの
間でメッセージを転送するために前記第1のUAから、
第1のスキーマ検索メソッドおよび第1のSQL実行メ
ソッドを含む第1の前記DBAオブジェクトに前記デー
タ・ベース・アクセス要求を送出するステップと、 (b)前記カタログ・サーバ処理プロセスを介して前記
第1のDBAオブジェクトの前記第1のスキーマ検索メ
ソッドと前記第1のデータ・ベースとの間で前記第1の
論理経路によりスキーマ照会メッセージを転送するステ
ップと、 (c)前記SQLサーバ処理プロセスを介して前記第1
のDBAオブジェクトの前記第1のSQL実行メソッド
と前記第1のデータ・ベースとの間でSQL作業単位実
行メッセージを前記第2の論理経路により転送するステ
ップと、 を含む方法。 - 【請求項2】前記第1の転送ステップ(b)は、 (b.1)第1のカタログ・サーバ処理プロセスが既に
存在していないときは、第1のカタログ・サーバ処理プ
ロセスを発生して前記第1のデータ・ベースからデータ
を検索するステップと、 (b.2)前記第1のDBAオブジェクトを前記第1の
カタログ・サーバ処理プロセスに接続するステップとを
含むことを特徴とする請求項1記載の方法。 - 【請求項3】前記接続ステップ(b.2)は、 (b.2.1)パイプ・オブジェクトが既に存在してい
ないときは、前記第1のカタログ・サーバ処理プロセス
へ及び前記第1のカタログ・サーバ処理プロセスからメ
ッセージを転送する第1の指定したパイプ・オブジェク
トを構築するステップと、 (b.2.2)前記第1の指定したパイプ・オブジェク
トを前記第1のDBAオブジェクトにリンクさせるステ
ップとを含むことを特徴とする請求項2記載の方法。 - 【請求項4】前記第1の論理経路は、前記各DBAオブ
ジェクトからのスキーマ照会メッセージに応答して前記
第1の指定したパイプ・オブジェクトを各前記DBAオ
ブジェクトへ論理的に再リンクさせることにより、前記
複数のDBAオブジェクトの間で共有されることを特徴
とする請求項3に記載の方法。 - 【請求項5】前記リンクさせるステップ(b.2.2)
は、 (b.2.2.1)前記指定したパイプ・オブジェクト
が第2の前記DBAオブジェクトにリンクされていると
きは、前記第2のDBAオブジェクトと前記第1のデー
タ・ベースとの間におけるスキーマ照会メッセージの転
送を終結させるステップと、 (b.2.2.2)前記第1の指定したパイプ・オブジ
ェクトを前記第2のDBAオブジェクトから切り離すス
テップとを含むことを特徴とする請求項4記載の方法。 - 【請求項6】前記第2の転送ステップ(c)は、 (c.1)構造化照会言語サーバ処理プロセスが既に存
在していないときは、第1の構造化照会言語サーバ処理
プロセスを発生して前記第1のデータ・ベースにおける
複数の作業単位を実行するステップと、 (c.2)前記第1のDBAオブジェクトを前記第1の
構造化照会言語サーバ処理プロセスへ接続するステップ
とを備えたことを特徴とする請求項4に記載の方法。 - 【請求項7】前記接続ステップ(c.2)は、 (c.2.1)パイプ・オブジェクトが既に存在してい
ないときは、第2の指定したパイプ・オブジェクトを構
築して前記第1の構造化照会言語サーバ処理プロセスへ
及び前記第1の構造化照会言語サーバ処理プロセスから
メッセージを転送させるステップと、 (c.2.2)前記第2の指定したパイプ・オブジェク
トを前記第1のDBAオブジェクトにリンクさせるステ
ップとを含むことを特徴とする請求項6記載の方法。 - 【請求項8】前記DBAオブジェクトは複数の排他的D
BAオブジェクト、及び関連する複数のDBAオブジェ
クトを含み、 前記第2の論理経路は、前記各関連するDBAオブジェ
クトからの構造化照会言語の作業単位メッセージに応答
して前記第2の指定したパイプ・オブジェクトを各前記
関連するDBAオブジェクトへ論理的にリンクさせるこ
とにより、複数の前記関連するDBAオブジェクトの間
で共有されることを特徴とする請求項7に記載の方法。 - 【請求項9】前記リンクさせるステップ(c.2.2)
は、 (c.2.2.1)前記第1の指定したパイプ・オブジ
ェクトが第2の前記DBAオブジェクトにリンクされて
いるときは、前記第2のDBAオブジェクトと前記第1
のデータ・ベースとの間で作業単位の実行メッセージの
転送を終結させるステップと、 (c.2.2.2)前記第2のDBAオブジェクトから
前記第1の指定したパイプオブジェクトを切り離すステ
ップとを含むことを特徴とする請求項7記載の方法。 - 【請求項10】前記データ・ベース処理システムは、複
数の前記第1及び第2の論理経路を介して複数の前記デ
ータ・ベースに接続された複数の前記DBAオブジェク
トを含み、 少なくとも一つの前記第2の論理経路は、複数の前記D
BAオブジェクトの間で共有されることを特徴とする請
求項1に記載の方法。 - 【請求項11】複数のオブジェクト及び複数のデータ・
ベースを有するオブジェクト指向データ・ベース処理シ
ステムであって、前記オブジェクトはデータ・ベース・
アクセス要求を出してスキーマ照会及び構造化照会言語
の作業単位の実行を処理する複数のユーザ・アプリケー
ションを含む前記データ処理システムにおいて、 前記データ及び複数のオブジェクトを記憶するデータ記
憶手段と、 それぞれ一つの前記ユーザ・アプリケーションから一つ
の前記データ・ベースに対する前記データ・ベース・ア
クセス要求を受け取り、かつ第1の論理経路を介してス
キーマ検索メッセージを前記一つのデータ・ベースと交
換するメソッドと、第2の論理経路を介して構造化照会
言語の作業単位の実行メッセージを前記一つのデータ・
ベースと交換するメソッドとを有する前記データ記憶手
段における複数のデータ・ベース・アクセス(DBA)
オブジェクトと、 それぞれ一つの前記データ・ベースにリンクされ、前記
DBAオブジェクトと交換したメッセージに応答して前
記スキーマ検索を処理する、前記データ記憶手段におけ
る複数のカタログ・サーバ処理プロセスと、 それぞれ一つの前記データ・ベースにリンクされ、前記
DBAオブジェクトと交換したメッセージに応答して前
記構造化照会言語実行要求を処理する、前記データ記憶
手段における複数の構造化照会言語サーバ処理プロセス
と、 前記データ・ベースの少なくとも1つは2つ以上の前記
DBAオブジェクトにより共有される1つの前記カタロ
グ・サーバ処理プロセスにリンクされることと、 前記カタログ・サーバ処理プロセスを、前記DBAオブ
ジェクトに選択・リンクさせて前記第1の論理経路を形
成させ、かつ前記構造化照会言語サーバ処理プロセスを
前記DBAオブジェクトに選択・リンクさせて前記第2
の論理経路を形成させる、前記データ記憶手段における
接続マネジャー手段とを含むことを特徴とするデータ処
理システム。 - 【請求項12】前記DBAオブジェクトは、 関連する他の前記DBAオブジェクトと共有される一つ
の前記第2の論理経路を介して、それぞれ前記構造化照
会言語の作業単位の実行要求メッセージを一つの前記構
造化照会言語サーバ処理プロセスと交換するメソッドを
各々が有する複数の関連するDBAオブジェクトと、 他の前記DBAオブジェクトに利用不可能な排他的な前
記第2の論理経路を介して、それぞれ前記構造化照会言
語の作業単位の実行要求メッセージを一つの前記構造化
照会言語サーバ処理プロセスと交換するメソッドを各々
が有する複数の排他的なDBAオブジェクトとを含むこ
とを特徴とする請求項11に記載のデータ処理システ
ム。 - 【請求項13】前記構造化照会言語サーバ処理プロセス
は、 それぞれ前記排他的DBAオブジェクトの1つのみにリ
ンクされた1以上の排他的構造化照会言語サーバ処理プ
ロセスと、 複数の前記関連するDBAオブジェクトのうちの任意の
ものにリンクするためにそれぞれ利用可能な1以上の共
有された構造化照会言語サーバ処理プロセスとを含むこ
とを特徴とする請求項11に記載のデータ処理システ
ム。 - 【請求項14】前記接続マネジャー手段は、 一つの前記排他的構造化照会言語サーバ処理プロセスを
一つの前記排他的DBAオブジェクトへリンクさせて一
つの前記排他的第2の論理経路を形成させる排他的リン
ク手段と、 一つの前記共有構造化照会言語サーバ処理プロセスを一
つの前記関連するDBAオブジェクトへリンクさせて一
つの前記第2の論理経路を形成させる共有リンク手段
と、 前記共有構造化照会言語サーバ処理プロセスを、第1の
前記関連するDBAオブジェクトから切り離し、かつ前
記一つの共有構造化照会言語サーバ処理プロセスを第2
の前記関連するDBAオブジェクトへ再リンクさせるス
イッチング手段とを含むことを特徴とする請求項11に
記載のデータ処理システム。 - 【請求項15】前記スイッチング手段は、 各前記構造化照会言語サーバ処理プロセスにより共有さ
れる前記DBAオブジェクトの数を指定する、前記デー
タ記憶手段におけるデータ・ベース接続テーブル手段を
含むことを特徴とする請求項14記載のデータ処理シス
テム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/242,939 US5596745A (en) | 1994-05-16 | 1994-05-16 | System and procedure for concurrent database access by multiple user applications through shared connection processes |
US242939 | 1994-05-16 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0830644A JPH0830644A (ja) | 1996-02-02 |
JP2996892B2 true JP2996892B2 (ja) | 2000-01-11 |
Family
ID=22916715
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP7059533A Expired - Fee Related JP2996892B2 (ja) | 1994-05-16 | 1995-03-17 | 共有した接続処理を介して多重ユーザ・アプリケーションにより並列データ・ベース・アクセスをするシステム及び方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US5596745A (ja) |
EP (1) | EP0684569B1 (ja) |
JP (1) | JP2996892B2 (ja) |
DE (1) | DE69521839T2 (ja) |
Families Citing this family (89)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5569745A (en) * | 1994-02-25 | 1996-10-29 | Resolution Pharmaceuticals Inc. | Peptide-Chelator conjugates |
US5907675A (en) * | 1995-03-22 | 1999-05-25 | Sun Microsystems, Inc. | Methods and apparatus for managing deactivation and shutdown of a server |
US5826269A (en) * | 1995-06-21 | 1998-10-20 | Microsoft Corporation | Electronic mail interface for a network server |
JPH0962558A (ja) * | 1995-08-29 | 1997-03-07 | Fuji Xerox Co Ltd | データベース管理システム及び方法 |
US5713018A (en) * | 1995-09-27 | 1998-01-27 | Sun Microsystems, Inc. | System and method for providing safe SQL-level access to a database |
US6950991B2 (en) * | 1995-11-13 | 2005-09-27 | Citrix Systems, Inc. | Interacting with software applications displayed in a web page |
US6088515A (en) | 1995-11-13 | 2000-07-11 | Citrix Systems Inc | Method and apparatus for making a hypermedium interactive |
US6370552B1 (en) | 1997-05-14 | 2002-04-09 | Citrix Systems, Inc. | Apparatus and method for displaying application output in an HTML document |
US7555529B2 (en) * | 1995-11-13 | 2009-06-30 | Citrix Systems, Inc. | Interacting with software applications displayed in a web page |
US6101497A (en) * | 1996-05-31 | 2000-08-08 | Emc Corporation | Method and apparatus for independent and simultaneous access to a common data set |
US5787437A (en) * | 1996-10-29 | 1998-07-28 | Hewlett-Packard Company | Method and apparatus for shared management information via a common repository |
GB9623472D0 (en) * | 1996-11-12 | 1997-01-08 | Int Computers Ltd | Data transfer mechanism |
US5835908A (en) * | 1996-11-19 | 1998-11-10 | Microsoft Corporation | Processing multiple database transactions in the same process to reduce process overhead and redundant retrieval from database servers |
US5890158A (en) * | 1997-03-31 | 1999-03-30 | International Business Machines Corporation | Method, apparatus, and program storage device for sharing objects with a network server and a database server using a common object model |
US6157944A (en) * | 1997-05-14 | 2000-12-05 | Citrix Systems, Inc. | System and method for replicating a client/server data exchange to additional client notes connecting to the server |
US5941949A (en) | 1997-05-14 | 1999-08-24 | Citrix Systems, Inc. | System and method for transmitting data from a server application to more than one client node |
US6243751B1 (en) * | 1997-06-11 | 2001-06-05 | Oracle Corporation | Method and apparatus for coupling clients to servers |
US6088728A (en) * | 1997-06-11 | 2000-07-11 | Oracle Corporation | System using session data stored in session data storage for associating and disassociating user identifiers for switching client sessions in a server |
US6058388A (en) * | 1997-06-16 | 2000-05-02 | Compaq Computer Corporation | Implementation of escrow-locking scalar quantities via process-pair resource managers |
US6128615A (en) * | 1997-06-17 | 2000-10-03 | Compaq Computer Corporation | Process-pair resource manager implementation of object bags |
US6418466B1 (en) | 1997-07-10 | 2002-07-09 | International Business Machines Corporation | Management of authentication discovery policy in a computer network |
US7028899B2 (en) | 1999-06-07 | 2006-04-18 | Metrologic Instruments, Inc. | Method of speckle-noise pattern reduction and apparatus therefore based on reducing the temporal-coherence of the planar laser illumination beam before it illuminates the target object by applying temporal phase modulation techniques during the transmission of the plib towards the target |
US6618718B1 (en) | 1997-10-14 | 2003-09-09 | International Business Machines Corporation | Apparatus and method for dynamically generating query explain data |
US6243703B1 (en) | 1997-10-14 | 2001-06-05 | International Business Machines Corporation | Method of accessing and displaying subsystem parameters including graphical plan table data |
US6092063A (en) * | 1997-11-25 | 2000-07-18 | International Business Machines Corporation | Multi-level live connection for fast dynamic access to business databases through a network |
KR100269339B1 (ko) * | 1997-12-24 | 2000-10-16 | 서평원 | 이동통신시스템에서홈위치등록기관리시스템및이를이용한데이터베이스관리방법 |
US6131094A (en) * | 1998-04-24 | 2000-10-10 | Unisys Corp. | Method for performing asynchronous writes to database logs using multiple insertion points |
JP3175692B2 (ja) * | 1998-04-28 | 2001-06-11 | 日本電気株式会社 | コンピュータと携帯端末間のデータ連携システム及びそのデータ連携方法 |
US7096358B2 (en) * | 1998-05-07 | 2006-08-22 | Maz Technologies, Inc. | Encrypting file system |
US6782392B1 (en) | 1998-05-26 | 2004-08-24 | Rockwell Collins, Inc. | System software architecture for a passenger entertainment system, method and article of manufacture |
US7028304B1 (en) | 1998-05-26 | 2006-04-11 | Rockwell Collins | Virtual line replaceable unit for a passenger entertainment system, method and article of manufacture |
US6938258B1 (en) | 1998-05-26 | 2005-08-30 | Rockwell Collins | Message processor for a passenger entertainment system, method and article of manufacture |
US9239763B2 (en) | 2012-09-28 | 2016-01-19 | Oracle International Corporation | Container database |
US6442568B1 (en) | 1998-12-11 | 2002-08-27 | Compaq Computer Corporation | Customer information control system application programming interface with transient data functions, in a loosely coupled data processing environment |
US6928469B1 (en) * | 1998-12-29 | 2005-08-09 | Citrix Systems, Inc. | Apparatus and method for determining a program neighborhood for a client node in a client-server network using markup language techniques |
US6292800B1 (en) | 1999-01-29 | 2001-09-18 | America Online | Database system |
US6209002B1 (en) | 1999-02-17 | 2001-03-27 | Emc Corporation | Method and apparatus for cascading data through redundant data storage units |
US6314430B1 (en) * | 1999-02-23 | 2001-11-06 | International Business Machines Corporation | System and method for accessing a database from a task written in an object-oriented programming language |
US6434543B1 (en) * | 1999-11-01 | 2002-08-13 | Sun Microsystems, Inc. | System and method for reliable caching of database connections in a distributed application |
US6401178B1 (en) * | 1999-12-23 | 2002-06-04 | Emc Corporatiion | Data processing method and apparatus for enabling independent access to replicated data |
US6766361B1 (en) | 2000-02-24 | 2004-07-20 | Cephire Technologies, Inc. | Machine-to-machine e-commerce interface using extensible markup language |
US6789112B1 (en) | 2000-05-08 | 2004-09-07 | Citrix Systems, Inc. | Method and apparatus for administering a server having a subsystem in communication with an event channel |
US6922724B1 (en) | 2000-05-08 | 2005-07-26 | Citrix Systems, Inc. | Method and apparatus for managing server load |
US6785713B1 (en) | 2000-05-08 | 2004-08-31 | Citrix Systems, Inc. | Method and apparatus for communicating among a network of servers utilizing a transport mechanism |
US6785726B1 (en) | 2000-05-08 | 2004-08-31 | Citrix Systems, Inc. | Method and apparatus for delivering local and remote server events in a similar fashion |
US20020124083A1 (en) * | 2000-09-06 | 2002-09-05 | Sun Microsystems, Inc. | Method and apparatus for increasing the efficiency of transactions and connection sharing in an enterprise environment |
GB2409551B (en) * | 2000-09-06 | 2005-08-10 | Sun Microsystems Inc | Method and apparatus for increasing the efficiency of transactions and connection sharing in an enterprise environment |
US6816869B2 (en) | 2000-11-17 | 2004-11-09 | Microsoft Corporation | Mapping database users to operating system users in a computer schema |
US6810400B2 (en) * | 2000-11-17 | 2004-10-26 | Microsoft Corporation | Representing database permissions as associations in computer schema |
US6961730B2 (en) * | 2000-11-17 | 2005-11-01 | Microsoft Corporation | Mapping database file class to operating system file class in a computer schema |
US20030105732A1 (en) * | 2000-11-17 | 2003-06-05 | Kagalwala Raxit A. | Database schema for structure query language (SQL) server |
US6928487B2 (en) * | 2000-12-23 | 2005-08-09 | International Business Machines Corporation | Computer system, method, and business method for automating business-to-business communications |
DE10113577A1 (de) * | 2001-03-20 | 2003-01-09 | Sap Ag | Verfahren, Computerprogrammprodukt und Computersystem zur Unterstützung mehrerer Anwendungssysteme mittels eines einzelnen Datenbank-Systems |
US6801919B2 (en) * | 2001-07-27 | 2004-10-05 | Hewlett-Packard Development Company, L.P. | Object oriented database interface encapsulation that allows for chronologically overlapping transactions in a multi-threaded environment |
US7117225B2 (en) | 2001-08-13 | 2006-10-03 | Jasmin Cosic | Universal data management interface |
US7287258B1 (en) * | 2001-08-31 | 2007-10-23 | International Business Machines Corporation | Thread consistency support system and method |
US7203700B1 (en) * | 2001-08-31 | 2007-04-10 | Oracle International Corporation | Online instance addition and deletion in a multi-instance computer system |
US7251693B2 (en) * | 2001-10-12 | 2007-07-31 | Direct Computer Resources, Inc. | System and method for data quality management and control of heterogeneous data sources |
US20050015383A1 (en) * | 2003-07-15 | 2005-01-20 | Microsoft Corporation | Method and system for accessing database objects in polyarchical relationships using data path expressions |
US7617531B1 (en) | 2004-02-18 | 2009-11-10 | Citrix Systems, Inc. | Inferencing data types of message components |
US7502824B2 (en) * | 2004-08-12 | 2009-03-10 | Oracle International Corporation | Database shutdown with session migration |
US7415470B2 (en) * | 2004-08-12 | 2008-08-19 | Oracle International Corporation | Capturing and re-creating the state of a queue when migrating a session |
US20060069662A1 (en) * | 2004-09-30 | 2006-03-30 | Citrix Systems, Inc. | Method and apparatus for remapping accesses to virtual system resources |
US7711835B2 (en) * | 2004-09-30 | 2010-05-04 | Citrix Systems, Inc. | Method and apparatus for reducing disclosure of proprietary data in a networked environment |
US7748032B2 (en) * | 2004-09-30 | 2010-06-29 | Citrix Systems, Inc. | Method and apparatus for associating tickets in a ticket hierarchy |
US8171479B2 (en) * | 2004-09-30 | 2012-05-01 | Citrix Systems, Inc. | Method and apparatus for providing an aggregate view of enumerated system resources from various isolation layers |
US8613048B2 (en) | 2004-09-30 | 2013-12-17 | Citrix Systems, Inc. | Method and apparatus for providing authorized remote access to application sessions |
US7680758B2 (en) * | 2004-09-30 | 2010-03-16 | Citrix Systems, Inc. | Method and apparatus for isolating execution of software applications |
US8095940B2 (en) * | 2005-09-19 | 2012-01-10 | Citrix Systems, Inc. | Method and system for locating and accessing resources |
DE102004062116B3 (de) * | 2004-12-23 | 2006-05-11 | Ab Skf | Lageranordnung für einen Computertomographen |
US8024568B2 (en) | 2005-01-28 | 2011-09-20 | Citrix Systems, Inc. | Method and system for verification of an endpoint security scan |
US9176772B2 (en) * | 2005-02-11 | 2015-11-03 | Oracle International Corporation | Suspending and resuming of sessions |
US8131825B2 (en) * | 2005-10-07 | 2012-03-06 | Citrix Systems, Inc. | Method and a system for responding locally to requests for file metadata associated with files stored remotely |
US7779034B2 (en) * | 2005-10-07 | 2010-08-17 | Citrix Systems, Inc. | Method and system for accessing a remote file in a directory structure associated with an application program executing locally |
US20070083610A1 (en) * | 2005-10-07 | 2007-04-12 | Treder Terry N | Method and a system for accessing a plurality of files comprising an application program |
US20070174429A1 (en) * | 2006-01-24 | 2007-07-26 | Citrix Systems, Inc. | Methods and servers for establishing a connection between a client system and a virtual machine hosting a requested computing environment |
US7565341B2 (en) * | 2006-05-10 | 2009-07-21 | Intuit Inc. | Automatically configuring a server to support different types of file accesses |
US8738703B2 (en) | 2006-10-17 | 2014-05-27 | Citrix Systems, Inc. | Systems and methods for providing online collaborative support |
US8533846B2 (en) * | 2006-11-08 | 2013-09-10 | Citrix Systems, Inc. | Method and system for dynamically associating access rights with a resource |
US8171483B2 (en) | 2007-10-20 | 2012-05-01 | Citrix Systems, Inc. | Method and system for communicating between isolation environments |
US8090797B2 (en) * | 2009-05-02 | 2012-01-03 | Citrix Systems, Inc. | Methods and systems for launching applications into existing isolation environments |
US8549038B2 (en) * | 2009-06-15 | 2013-10-01 | Oracle International Corporation | Pluggable session context |
US20120265846A1 (en) * | 2011-04-15 | 2012-10-18 | Springboard Non Profit Consumer Credit Management | System and method of coordinating a debt-relief program |
US9098549B2 (en) * | 2011-08-17 | 2015-08-04 | Sap Se | Method for bundled preparation and execution of multiple database statements |
EP3058476A4 (en) * | 2013-10-16 | 2017-06-14 | Hewlett-Packard Enterprise Development LP | Regulating enterprise database warehouse resource usage |
US10289617B2 (en) | 2015-12-17 | 2019-05-14 | Oracle International Corporation | Accessing on-premise and off-premise datastores that are organized using different application schemas |
US10387387B2 (en) | 2015-12-17 | 2019-08-20 | Oracle International Corporation | Enabling multi-tenant access to respective isolated data sets organized using different application schemas |
US10303894B2 (en) | 2016-08-31 | 2019-05-28 | Oracle International Corporation | Fine-grained access control for data manipulation language (DML) operations on relational data |
US11971863B2 (en) | 2020-11-23 | 2024-04-30 | Oracle International Corporation | Techniques for using an in-memory only file system as an interface for managing computer systems and user space file systems |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4480304A (en) * | 1980-10-06 | 1984-10-30 | International Business Machines Corporation | Method and means for the retention of locks across system, subsystem, and communication failures in a multiprocessing, multiprogramming, shared data environment |
AU607795B2 (en) * | 1987-08-21 | 1991-03-14 | Eastman Kodak Company | Data integration by object management |
JP2969627B2 (ja) * | 1988-08-24 | 1999-11-02 | 株式会社日立製作所 | 分散型データベースシステムの管理方法 |
US5265245A (en) * | 1989-04-17 | 1993-11-23 | International Business Machines Corporation | High concurrency in use manager |
JP2522414B2 (ja) * | 1989-10-19 | 1996-08-07 | 日本電気株式会社 | サ―バ・クライアント間接続方式 |
US5293600A (en) * | 1990-04-06 | 1994-03-08 | International Business Machines Corporation | Counter and flux bit locking for very fast shared serialization of shared data objects |
US5297279A (en) * | 1990-05-30 | 1994-03-22 | Texas Instruments Incorporated | System and method for database management supporting object-oriented programming |
US5426747A (en) * | 1991-03-22 | 1995-06-20 | Object Design, Inc. | Method and apparatus for virtual memory mapping and transaction management in an object-oriented database system |
US5317742A (en) * | 1991-06-21 | 1994-05-31 | Racal-Datacom, Inc. | Dynamic translation of network management primitives to queries to a database |
US5504885A (en) * | 1993-06-29 | 1996-04-02 | Texas Instruments Incorporated | O-R gateway: a system for connecting object-oriented application programs and relational databases |
-
1994
- 1994-05-16 US US08/242,939 patent/US5596745A/en not_active Expired - Fee Related
-
1995
- 1995-03-17 JP JP7059533A patent/JP2996892B2/ja not_active Expired - Fee Related
- 1995-05-02 DE DE69521839T patent/DE69521839T2/de not_active Expired - Lifetime
- 1995-05-02 EP EP95303007A patent/EP0684569B1/en not_active Expired - Lifetime
Non-Patent Citations (4)
Title |
---|
久保田,植村「分散型データベースシステムにおけるシステムカタログ管理の一方法」電子情報通信学会技術研究報告(DE89−48)Vol.89,No.466,1990(平2−3−22) |
岩井,外4名「分散RDB管理システムに於ける辞書管理方式」情報処理学会第42回(平成3年前期)全国大会講演論文集(4)p.109−110(平3−3−12) |
森本,外3名「関係データベースを利用したオブジェクトサーバのデータ管理」情報処理学会研究報告(93−DBS−93−11,93−OS−59−11),Vol.93,No.45,1993(平5−5−27),p.93−102 |
野口監,疋田著「COMシリーズ図解 分散型データベースシステム入門」オーム社(平1−5−25),p.36−38,70−79 |
Also Published As
Publication number | Publication date |
---|---|
DE69521839D1 (de) | 2001-08-30 |
DE69521839T2 (de) | 2002-04-04 |
JPH0830644A (ja) | 1996-02-02 |
EP0684569A1 (en) | 1995-11-29 |
EP0684569B1 (en) | 2001-07-25 |
US5596745A (en) | 1997-01-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2996892B2 (ja) | 共有した接続処理を介して多重ユーザ・アプリケーションにより並列データ・ベース・アクセスをするシステム及び方法 | |
US6738971B2 (en) | Using a resource manager to coordinate the comitting of a distributed transaction | |
US5701461A (en) | Method and system for accessing a remote database using pass-through queries | |
US6076092A (en) | System and process for providing improved database interfacing using query objects | |
US6609126B1 (en) | System and method for routing database requests to a database and a cache | |
US7412451B2 (en) | Method for persisting a schedule and database schema | |
US6741982B2 (en) | System and method for retrieving data from a database system | |
US7587400B2 (en) | Suspending a result set and continuing from a suspended result set for transparent session migration | |
US20170220271A1 (en) | Thread groups for pluggable database connection consolidation in numa environment | |
US20130297565A1 (en) | Database Management System | |
JP2001051879A (ja) | 非関係データベースへの改良されたアクセスのための方法およびシステム | |
US5968134A (en) | Distributed pipes and fifos in a multiprocessor | |
US6301581B1 (en) | Method and system for managing access to a plurality of data objects | |
US6571252B1 (en) | System and method for managing persistent objects using a database system | |
US5682507A (en) | Plurality of servers having identical customer information control procedure functions using temporary storage file of a predetermined server for centrally storing temporary data records | |
US7076490B2 (en) | Object-relational database management system and method for deleting class instance for the same | |
US5790868A (en) | Customer information control system and method with transaction serialization control functions in a loosely coupled parallel processing environment | |
US7257605B2 (en) | System for heterogeneous distributed transaction management in database systems | |
KR100331099B1 (ko) | 다중 데이터베이스 통합을 위한 미들웨어 시스템과 그를 이용한 분산 이기종 지역 데이터베이스 통합 접근방법 | |
US6725213B1 (en) | Method and mechanism for providing external procedures to a database system | |
US20040030707A1 (en) | Partial evaluation of rule sets | |
US7536407B2 (en) | Managing entity-relationship data for data objects persisted in a relational database | |
US20230244652A1 (en) | Transactional query processing in external tables | |
Cheriton | Distributed 1/0 using an Object-based Protocol | |
JP3143919B2 (ja) | 通信パラメータ管理方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |