JPH07175697A - 異種データベース・アクセス・システム及びその制御方法 - Google Patents
異種データベース・アクセス・システム及びその制御方法Info
- Publication number
- JPH07175697A JPH07175697A JP5319394A JP31939493A JPH07175697A JP H07175697 A JPH07175697 A JP H07175697A JP 5319394 A JP5319394 A JP 5319394A JP 31939493 A JP31939493 A JP 31939493A JP H07175697 A JPH07175697 A JP H07175697A
- Authority
- JP
- Japan
- Prior art keywords
- access
- database access
- database
- heterogeneous
- information processing
- 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.)
- Granted
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
(57)【要約】
【目的】本発明は、単一の仕様のSQLを用いたクライ
アントからSQLの仕様が異なる複数のデータベース管
理システムサーバへのアクセスを可能とするゲートウェ
イに関し、前記ゲートウェイの処理性能の低下を低減す
る異種データベースアクセスシステムを提供することを
目的とする。 【構成】ゲートウェイ情報処理装置上のアクセス管理コ
ンポーネント(112v)、SQL変換コンポーネント
(115)へのアクセスをSQL文をパラメータとした
RPCで行うようにした。また、クライアントからは直
接SQL変換コンポーネント(115)に処理依頼でき
るようにした。 【効果】各コンポーネントを複数のゲートウェイ情報処
理装置上に置き、処理を分散させることができ、またア
クセス管理コンポーネント(112v)を介さずにSQ
L変換コンポーネント(115)をアクセスすることが
できるので、ゲートウェイ情報処理装置を介することに
よる性能低下を低減させることができる。
アントからSQLの仕様が異なる複数のデータベース管
理システムサーバへのアクセスを可能とするゲートウェ
イに関し、前記ゲートウェイの処理性能の低下を低減す
る異種データベースアクセスシステムを提供することを
目的とする。 【構成】ゲートウェイ情報処理装置上のアクセス管理コ
ンポーネント(112v)、SQL変換コンポーネント
(115)へのアクセスをSQL文をパラメータとした
RPCで行うようにした。また、クライアントからは直
接SQL変換コンポーネント(115)に処理依頼でき
るようにした。 【効果】各コンポーネントを複数のゲートウェイ情報処
理装置上に置き、処理を分散させることができ、またア
クセス管理コンポーネント(112v)を介さずにSQ
L変換コンポーネント(115)をアクセスすることが
できるので、ゲートウェイ情報処理装置を介することに
よる性能低下を低減させることができる。
Description
【0001】
【産業上の利用分野】本発明は、データベースをアクセ
スするための情報処理システムおよびその制御方法に係
り、特に、クライアントの情報処理装置からネットワー
クを介して複数の異種データベース・サーバーをアクセ
スする場合に好適な、異種データベース・アクセス・シ
ステム、及びその制御方法に関する。
スするための情報処理システムおよびその制御方法に係
り、特に、クライアントの情報処理装置からネットワー
クを介して複数の異種データベース・サーバーをアクセ
スする場合に好適な、異種データベース・アクセス・シ
ステム、及びその制御方法に関する。
【0002】
【従来の技術】企業におけるデータベース・システム
は、ダウンサイジング化に伴い、メインフレームを用い
た全社システムから、各業務を担当する部門に分散され
た部門システムへと移行が進んでいる。部門システムで
は、業務内容に応じた最適なシステムを構築するため、
各部門毎に異なるベンダのデータベース管理システム
(DataBase Management Syst
em: DBMS)を採用することも珍しくない。一
方、意志決定支援などのアプリケーション・ソフトウェ
アにおいては、企業内の各部門に分散したデータベース
上の種々のデータを必要に応じて収集し分析する必要が
ある。
は、ダウンサイジング化に伴い、メインフレームを用い
た全社システムから、各業務を担当する部門に分散され
た部門システムへと移行が進んでいる。部門システムで
は、業務内容に応じた最適なシステムを構築するため、
各部門毎に異なるベンダのデータベース管理システム
(DataBase Management Syst
em: DBMS)を採用することも珍しくない。一
方、意志決定支援などのアプリケーション・ソフトウェ
アにおいては、企業内の各部門に分散したデータベース
上の種々のデータを必要に応じて収集し分析する必要が
ある。
【0003】データベースのアクセスに用いるアプリケ
ーション プログラム インタフェース(API) とし
ては、ストラクチャード クイアリ ランゲージ St
ructured Query Language(S
QL)が一般に用いられている。SQLは、JIS規格
などで標準仕様が定められているが、実際のDBMSの
製品では細かな点でDBMSベンダ毎にその仕様が異な
っている。このため、同一のSQLで異なるベンダのD
BMS上のデータベースにアクセスすることはできな
い。そこで、一種類のSQLを各ベンダ固有のSQLに
変換するゲートウェイが製品化されている。なお、SQ
Lの仕様の相違点については、Addison-Wes
ley Publishing Company、In
c発行の「THE PRACTICAL SQL HA
NDBOOK」pp.329〜341にて開示されてい
る。
ーション プログラム インタフェース(API) とし
ては、ストラクチャード クイアリ ランゲージ St
ructured Query Language(S
QL)が一般に用いられている。SQLは、JIS規格
などで標準仕様が定められているが、実際のDBMSの
製品では細かな点でDBMSベンダ毎にその仕様が異な
っている。このため、同一のSQLで異なるベンダのD
BMS上のデータベースにアクセスすることはできな
い。そこで、一種類のSQLを各ベンダ固有のSQLに
変換するゲートウェイが製品化されている。なお、SQ
Lの仕様の相違点については、Addison-Wes
ley Publishing Company、In
c発行の「THE PRACTICAL SQL HA
NDBOOK」pp.329〜341にて開示されてい
る。
【0004】図2は、ゲートウェイを用いた異種データ
ベース・アクセス・システムの一従来例である。この従
来例では、アプリケーション・ソフトウェア111が動
作するクライアント情報処理装置110にゲートウェイ
機能を搭載している。120a、120bは、それぞれ
DBMS_A 121a、DBMS_B 121bが動
作するサーバ情報処理装置であり、クライアント情報処
理装置110とLAN(Local Area Net
work)100で接続されている。DBMS_A、D
BMS_Bによって管理されているデータベースのデー
タは、外部記憶装置124a、124bにそれぞれ格納
されている。アクセス管理コンポーネント112は、ア
クセス先がDBMS_Aの時はアプリケーション・ソフ
トウェア111がデータベース・アクセスのため発行す
るSQL文をSQL変換_Aとし、アクセス先がDBM
S_Bの時はSQL変換_Bの各コンポーネントに引き
渡すように動作する。SQL変換_A、SQL変換_B
の各コンポーネントは、受け取ったSQL文をターゲッ
トDBMSの仕様に変換し、各DBMS用のデータベー
ス・ドライバA 122a、データベース・ドライバB
122bおよびLANドライバ123、LAN100
を介して、各ターゲットのサーバ情報処理装置120a
または120bに変換を行ったSQL文を送信する。ク
ライアント情報処理装置110のデータベース・ドライ
バA、データベース・ドライバBおよびLANドライバ
123と同じものが各サーバ情報処理装置120a、1
20bにも搭載されており、通信プロトコルの階層に従
った処理を行い、クライアント情報処理装置110が送
信したLAN100上のパケットデータからDBMS_
AまたはDBMS_B宛のSQL文を取り出し、各DB
MSにSQL文を送る。各DBMSでの処理結果は、上
述の経路を逆に辿り、SQL変換_AまたはSQL変換
_Bによって、標準のデータ形式、および標準のリター
ン・コードに変換した後、アクセス管理コンポーネント
112を介してアプリケーション・ソフトウェア111
に送られる。このように、ゲートウェイ機能をクライア
ント情報処理装置110上のアクセス管理コンポーネン
ト112とSQL変換_Aコンポーネント115a、S
QL変換_Bコンポーネント115bによって実現する
ことにより、単一のSQL仕様だけを用いて、異なるS
QL仕様を持つDBMSにアクセスすることが可能とな
っている。
ベース・アクセス・システムの一従来例である。この従
来例では、アプリケーション・ソフトウェア111が動
作するクライアント情報処理装置110にゲートウェイ
機能を搭載している。120a、120bは、それぞれ
DBMS_A 121a、DBMS_B 121bが動
作するサーバ情報処理装置であり、クライアント情報処
理装置110とLAN(Local Area Net
work)100で接続されている。DBMS_A、D
BMS_Bによって管理されているデータベースのデー
タは、外部記憶装置124a、124bにそれぞれ格納
されている。アクセス管理コンポーネント112は、ア
クセス先がDBMS_Aの時はアプリケーション・ソフ
トウェア111がデータベース・アクセスのため発行す
るSQL文をSQL変換_Aとし、アクセス先がDBM
S_Bの時はSQL変換_Bの各コンポーネントに引き
渡すように動作する。SQL変換_A、SQL変換_B
の各コンポーネントは、受け取ったSQL文をターゲッ
トDBMSの仕様に変換し、各DBMS用のデータベー
ス・ドライバA 122a、データベース・ドライバB
122bおよびLANドライバ123、LAN100
を介して、各ターゲットのサーバ情報処理装置120a
または120bに変換を行ったSQL文を送信する。ク
ライアント情報処理装置110のデータベース・ドライ
バA、データベース・ドライバBおよびLANドライバ
123と同じものが各サーバ情報処理装置120a、1
20bにも搭載されており、通信プロトコルの階層に従
った処理を行い、クライアント情報処理装置110が送
信したLAN100上のパケットデータからDBMS_
AまたはDBMS_B宛のSQL文を取り出し、各DB
MSにSQL文を送る。各DBMSでの処理結果は、上
述の経路を逆に辿り、SQL変換_AまたはSQL変換
_Bによって、標準のデータ形式、および標準のリター
ン・コードに変換した後、アクセス管理コンポーネント
112を介してアプリケーション・ソフトウェア111
に送られる。このように、ゲートウェイ機能をクライア
ント情報処理装置110上のアクセス管理コンポーネン
ト112とSQL変換_Aコンポーネント115a、S
QL変換_Bコンポーネント115bによって実現する
ことにより、単一のSQL仕様だけを用いて、異なるS
QL仕様を持つDBMSにアクセスすることが可能とな
っている。
【0005】これらのゲートウェイ機能をクライアント
情報処理装置110上ではなく、専用のゲートウェイ情
報処理装置130を用いて実現した従来例を図3に示
す。この従来例では、アプリケーション・ソフトウェア
111が発行したSQL文は、まず、データベース・ド
ライバC 122c、LANドライバ123、LAN1
00を介してゲートウェイ情報処理装置130に送られ
る。ゲートウェイ情報処理装置130上では、LANド
ライバ、データベース・ドライバCによってSQL文が
取り出され、アクセス管理コンポーネント112に送ら
れる。この後の動作は、図2で説明した従来例と同様で
あり、SQL変換_A、SQL変換_B、データベース
・ドライバA、データベース・ドライバB、LANドラ
イバ123を介してターゲットのサーバ情報処理装置1
20aまたは120b上のデータベースをアクセスし、
結果がクライアント情報処理装置110上のアプリケー
ション・ソフトウェア111に返される。
情報処理装置110上ではなく、専用のゲートウェイ情
報処理装置130を用いて実現した従来例を図3に示
す。この従来例では、アプリケーション・ソフトウェア
111が発行したSQL文は、まず、データベース・ド
ライバC 122c、LANドライバ123、LAN1
00を介してゲートウェイ情報処理装置130に送られ
る。ゲートウェイ情報処理装置130上では、LANド
ライバ、データベース・ドライバCによってSQL文が
取り出され、アクセス管理コンポーネント112に送ら
れる。この後の動作は、図2で説明した従来例と同様で
あり、SQL変換_A、SQL変換_B、データベース
・ドライバA、データベース・ドライバB、LANドラ
イバ123を介してターゲットのサーバ情報処理装置1
20aまたは120b上のデータベースをアクセスし、
結果がクライアント情報処理装置110上のアプリケー
ション・ソフトウェア111に返される。
【0006】これらの異種データベース・アクセス・シ
ステムについては、日経エレクトロニクス 1993年
2月15日号pp.138〜pp.145に述べられてい
る。
ステムについては、日経エレクトロニクス 1993年
2月15日号pp.138〜pp.145に述べられてい
る。
【0007】
【発明が解決しようとする課題】以上述べたように、タ
ーゲットDBMSのSQLの仕様へSQL文の変換を行
うゲートウェイ機能をクライアント情報処理装置上に搭
載する、あるいは前記ゲートウェイ機能を実現するゲー
トウェイ情報処理装置を設けることによって、アプリケ
ーション・ソフトウェアは単一のSQL仕様だけを用い
て、異なるSQL仕様を持つ複数のDBMSで管理され
たデータベースをアクセスすることが可能となってい
る。
ーゲットDBMSのSQLの仕様へSQL文の変換を行
うゲートウェイ機能をクライアント情報処理装置上に搭
載する、あるいは前記ゲートウェイ機能を実現するゲー
トウェイ情報処理装置を設けることによって、アプリケ
ーション・ソフトウェアは単一のSQL仕様だけを用い
て、異なるSQL仕様を持つ複数のDBMSで管理され
たデータベースをアクセスすることが可能となってい
る。
【0008】しかし、図2で示した従来の構成では、ア
クセスするDBMSに対応したSQL変換コンポーネン
トおよびデータベース・ドライバを、すべてのクライア
ントが具備する必要がある。このため、システム内のD
BMSの種類の追加やバージョンアップ毎に、各クライ
アントのSQL変換コンポーネントおよびデータベース
・ドライバをメンテナンスする必要があり、保守性のよ
いものではなかった。
クセスするDBMSに対応したSQL変換コンポーネン
トおよびデータベース・ドライバを、すべてのクライア
ントが具備する必要がある。このため、システム内のD
BMSの種類の追加やバージョンアップ毎に、各クライ
アントのSQL変換コンポーネントおよびデータベース
・ドライバをメンテナンスする必要があり、保守性のよ
いものではなかった。
【0009】図3で示した従来の構成では、ゲートウェ
イ情報処理装置上のSQL変換コンポーネント、データ
ベース・ドライバだけをメンテナンスすればよいので、
上記の課題は解決される。しかし、常にゲートウェイ情
報処理装置を介してデータベースをアクセスするので、
ゲートウェイ情報処理装置に負荷が集中し、LAN上の
トラフィックが増加するため、該アクセスの性能がゲー
トウェイ情報処理装置を介さない場合に比べて低下する
という課題があった。
イ情報処理装置上のSQL変換コンポーネント、データ
ベース・ドライバだけをメンテナンスすればよいので、
上記の課題は解決される。しかし、常にゲートウェイ情
報処理装置を介してデータベースをアクセスするので、
ゲートウェイ情報処理装置に負荷が集中し、LAN上の
トラフィックが増加するため、該アクセスの性能がゲー
トウェイ情報処理装置を介さない場合に比べて低下する
という課題があった。
【0010】また、従来のゲートウェイ情報処理装置を
用いた方式では、それぞれ仕様の異なるSQLを発行す
る複数のクライアントから、それぞれ仕様の異なる複数
のDBMSにアクセスすることができないという課題が
あった。
用いた方式では、それぞれ仕様の異なるSQLを発行す
る複数のクライアントから、それぞれ仕様の異なる複数
のDBMSにアクセスすることができないという課題が
あった。
【0011】本発明の目的は、複数のゲートウェイ情報
処理装置に負荷を分散可能な異種データベース・アクセ
ス・システム及びその制御方法を提供することにある。
処理装置に負荷を分散可能な異種データベース・アクセ
ス・システム及びその制御方法を提供することにある。
【0012】また、本発明の他の目的は、ゲートウェイ
情報処理装置を経由することのオーバーヘッドを低減可
能な異種データベース・アクセス・システムを提供する
ことにある。
情報処理装置を経由することのオーバーヘッドを低減可
能な異種データベース・アクセス・システムを提供する
ことにある。
【0013】さらに本発明の他の目的は、非標準仕様の
SQLを用いたアプリケーション・ソフトウェアから非
標準仕様のSQLを用いたDBMSにアクセスすること
が可能な異種データベース・アクセス・システムを提供
することにある。
SQLを用いたアプリケーション・ソフトウェアから非
標準仕様のSQLを用いたDBMSにアクセスすること
が可能な異種データベース・アクセス・システムを提供
することにある。
【0014】
【課題を解決するための手段】上記目的は、RPCを用
いた標準仕様のSQLアクセスを受け付け、前記標準仕
様のSQLをターゲットDBMSが用いる非標準仕様の
SQLに変換し、該DBMSへのアクセスを実行するS
QL変換手段と、RPCを用いた標準仕様のSQLアク
セスを受け付け、ターゲットのDBMSの種類を決定
し、該ターゲットDBMSに対応した前記SQL変換手
段をRPCを用いてアクセスするアクセス管理手段とを
設けることによって達成される。
いた標準仕様のSQLアクセスを受け付け、前記標準仕
様のSQLをターゲットDBMSが用いる非標準仕様の
SQLに変換し、該DBMSへのアクセスを実行するS
QL変換手段と、RPCを用いた標準仕様のSQLアク
セスを受け付け、ターゲットのDBMSの種類を決定
し、該ターゲットDBMSに対応した前記SQL変換手
段をRPCを用いてアクセスするアクセス管理手段とを
設けることによって達成される。
【0015】また、上記他の目的は、RPCを用いた標
準仕様のSQLアクセスを受け付け、ターゲットのDB
MSの種類を決定するアクセス管理手段と該アクセス管
理手段を搭載したゲートウェイ情報処理装置と、DBM
Sを搭載した情報処理装置上で動作し、RPCを用いた
標準仕様のSQLアクセスを受け付け、標準仕様のSQ
LをDBMSが用いる非標準仕様のSQLに変換し、D
BMSへのアクセスを実行するSQL変換手段と、ユー
ザー・アプリケーション・ソフトウェアが搭載された情
報処理装置上で動作し、ユーザー・アプリケーション・
ソフトウェアから発行されるSQLを、RPCを用いて
他の情報処理装置に実行依頼するクライアントSQL処
理手段とを設けることによって達成される。
準仕様のSQLアクセスを受け付け、ターゲットのDB
MSの種類を決定するアクセス管理手段と該アクセス管
理手段を搭載したゲートウェイ情報処理装置と、DBM
Sを搭載した情報処理装置上で動作し、RPCを用いた
標準仕様のSQLアクセスを受け付け、標準仕様のSQ
LをDBMSが用いる非標準仕様のSQLに変換し、D
BMSへのアクセスを実行するSQL変換手段と、ユー
ザー・アプリケーション・ソフトウェアが搭載された情
報処理装置上で動作し、ユーザー・アプリケーション・
ソフトウェアから発行されるSQLを、RPCを用いて
他の情報処理装置に実行依頼するクライアントSQL処
理手段とを設けることによって達成される。
【0016】さらに上記他の目的は、RPCを用いた非
標準仕様のSQLアクセスを受け付け、非標準仕様のS
QLを標準仕様のSQLに変換する非標準SQL変換手
段と、RPCを用いた標準仕様のSQLアクセスを受け
付け、ターゲットのDBMSの種類を決定するアクセス
管理手段と、RPCを用いた標準仕様のSQLアクセス
を受け付け、標準仕様のSQLをターゲットDBMSが
用いる非標準仕様のSQLに変換し、DBMSへのアク
セスを実行するSQL変換手段と、前記アクセス管理手
段とSQL変換手段を搭載した複数のゲートウェイ情報
処理装置手段とを設けることによって達成される。
標準仕様のSQLアクセスを受け付け、非標準仕様のS
QLを標準仕様のSQLに変換する非標準SQL変換手
段と、RPCを用いた標準仕様のSQLアクセスを受け
付け、ターゲットのDBMSの種類を決定するアクセス
管理手段と、RPCを用いた標準仕様のSQLアクセス
を受け付け、標準仕様のSQLをターゲットDBMSが
用いる非標準仕様のSQLに変換し、DBMSへのアク
セスを実行するSQL変換手段と、前記アクセス管理手
段とSQL変換手段を搭載した複数のゲートウェイ情報
処理装置手段とを設けることによって達成される。
【0017】
【作用】アクセス管理手段は、標準仕様のSQLをRP
Cのパラメータとしたアクセスを受け付け、ターゲット
のDBMSの種類を決定し、DBMSの種類に対応した
SQL変換手段に標準仕様のSQLをパラメータとした
RPCを発行する。SQL変換手段は、アクセス管理手
段から発行されたRPCによって引き渡された標準仕様
のSQLを、ターゲットDBMSが用いる非標準仕様の
SQLに変換し、DBMSへのアクセスを実行する。こ
のように、アクセス管理手段とSQL変換手段との接続
をRPCを用いて行い、しかもアクセス管理手段への処
理依頼と、SQL変換手段への処理依頼の各RPCのパ
ラメータ仕様を同一とする事によって、ターゲットDB
MSが明確でしかも単一の場合には、ユーザー・アプリ
ケーション・ソフトウェアから、アクセス管理手段を介
すること無く直接SQL変換手段へアクセスすることが
できるので、オーバーヘッドを低減することができる。
Cのパラメータとしたアクセスを受け付け、ターゲット
のDBMSの種類を決定し、DBMSの種類に対応した
SQL変換手段に標準仕様のSQLをパラメータとした
RPCを発行する。SQL変換手段は、アクセス管理手
段から発行されたRPCによって引き渡された標準仕様
のSQLを、ターゲットDBMSが用いる非標準仕様の
SQLに変換し、DBMSへのアクセスを実行する。こ
のように、アクセス管理手段とSQL変換手段との接続
をRPCを用いて行い、しかもアクセス管理手段への処
理依頼と、SQL変換手段への処理依頼の各RPCのパ
ラメータ仕様を同一とする事によって、ターゲットDB
MSが明確でしかも単一の場合には、ユーザー・アプリ
ケーション・ソフトウェアから、アクセス管理手段を介
すること無く直接SQL変換手段へアクセスすることが
できるので、オーバーヘッドを低減することができる。
【0018】また、アクセス管理手段とSQL変換手段
は、複数の情報処理装置上に置くことができ、第一の情
報処理装置上のアクセス管理手段から他の情報処理装置
上のSQL変換手段へRPCによる処理依頼を行うこと
もできる。これによって、処理負荷を複数の情報処理装
置に分散できる。
は、複数の情報処理装置上に置くことができ、第一の情
報処理装置上のアクセス管理手段から他の情報処理装置
上のSQL変換手段へRPCによる処理依頼を行うこと
もできる。これによって、処理負荷を複数の情報処理装
置に分散できる。
【0019】また、アクセス管理手段が搭載されたすべ
ての情報処理装置上にすべての種類のDBMSに対応し
たSQL変換手段を搭載しなくてもよく、どれかの情報
処理装置上に必要な種類のSQL変換手段を用意して置
けばよいので、導入、保守が容易となる。
ての情報処理装置上にすべての種類のDBMSに対応し
たSQL変換手段を搭載しなくてもよく、どれかの情報
処理装置上に必要な種類のSQL変換手段を用意して置
けばよいので、導入、保守が容易となる。
【0020】また、ユーザー・アプリケーション・ソフ
トウェアが搭載された情報処理装置上で動作し、ユーザ
ー・アプリケーション・ソフトウェアから発行されるS
QLをRPCを用いて他の情報処理装置に実行依頼する
クライアントSQL処理手段は、ユーザー・アプリケー
ション・ソフトウェアから発行されるSQLをパラメー
タとするRPCを、単一のDBMSに対するものである
ときはターゲットDBMSと同一情報処理装置上のSQ
L変換手段に発行し、単一のDBMSに対するものでな
いときはターゲットDBMSとは別のゲートウェイ情報
処理装置上のアクセス管理手段に発行するように動作す
る。これによって、単一のDBMSに対してのアクセス
は、ゲートウェイ情報処理装置を介することによるオー
バーヘッドを生じることなく実行することができる。
トウェアが搭載された情報処理装置上で動作し、ユーザ
ー・アプリケーション・ソフトウェアから発行されるS
QLをRPCを用いて他の情報処理装置に実行依頼する
クライアントSQL処理手段は、ユーザー・アプリケー
ション・ソフトウェアから発行されるSQLをパラメー
タとするRPCを、単一のDBMSに対するものである
ときはターゲットDBMSと同一情報処理装置上のSQ
L変換手段に発行し、単一のDBMSに対するものでな
いときはターゲットDBMSとは別のゲートウェイ情報
処理装置上のアクセス管理手段に発行するように動作す
る。これによって、単一のDBMSに対してのアクセス
は、ゲートウェイ情報処理装置を介することによるオー
バーヘッドを生じることなく実行することができる。
【0021】さらに、非標準SQL変換手段は、非標準
SQLを用いたユーザー・アプリケーション・ソフトウ
ェアからのアクセスを、アクセス管理手段が処理できる
標準仕様のSQLに変換する。これによって、非標準S
QLを用いたユーザー・アプリケーション・ソフトウェ
アから、別の非標準SQLを用いたDBMSへアクセス
できる。
SQLを用いたユーザー・アプリケーション・ソフトウ
ェアからのアクセスを、アクセス管理手段が処理できる
標準仕様のSQLに変換する。これによって、非標準S
QLを用いたユーザー・アプリケーション・ソフトウェ
アから、別の非標準SQLを用いたDBMSへアクセス
できる。
【0022】
【実施例】以下、本発明の第1の実施例を図1、図4お
よび図5を用いて説明する。
よび図5を用いて説明する。
【0023】図1は、本実施例における異種データベー
ス・アクセス・システムの一構成例である。110は、
アプリケーション・ソフトウェア111が動作するクラ
イアント情報処理装置、130はゲートウェイ情報処理
装置、120a、120bは、それぞれDBMS_A、
DBMS_Bが動作するサーバ情報処理装置、150は
RPC(Remote Procedure Cal
l)で呼び出す各サーバ・コンポーネントのネットワー
ク上の物理位置との対応情報を提供するネームサーバ1
51が動作するネームサーバ情報処理装置である。前記
各情報処理装置はLAN100で接続されている。DB
MS_A、DBMS_Bによって管理されているデータ
ベースのデータは、従来例と同様に外部記憶装置に格納
されるが、図1では該外部記憶装置を省略している。
(以下の実施例についても同様に省略する。) クライアント情報処理装置からサーバ情報処理装置への
アクセスは、アプリケーション・ソフトウェア111か
らのデータベース・アクセスは、SQL文に対応したR
PCを実行することによって行う。本実施例では、アプ
リケーション・ソフトウェア111が使用するSQL仕
様は、本システムでの標準仕様とし、各DBMS_A、
DBMS_BのSQL仕様は、標準仕様とは異なるもの
とする。このRPCを以下SQL_RPCと呼ぶ。クラ
イアント情報処理装置110上のRPCドライバ102
は、まずネームサーバ情報処理装置150上のネームサ
ーバ151に、SQL_RPCを処理するサーバのネッ
トワーク・アドレスとサーバ・コンポーネントへの接続
のためのポート番号を問い合わせる。SQL_RPCを
処理するサーバは、ゲートウェイ情報処理装置130上
のアクセス管理コンポーネント112vであるので、前
記問い合わせに対して、ネームサーバ151はゲートウ
ェイ情報処理装置130のネットワーク・アドレス情報
とアクセス管理コンポーネント112vのポート番号を
返すように動作する。このアドレス情報とポート番号を
もとに、クライアント情報処理装置110上のRPCド
ライバ102は、ゲートウェイ情報処理装置130上の
アクセス管理コンポーネント112vとRPCの接続を
行い、SQL_RPCの処理をアクセス管理コンポーネ
ント112vへ依頼する。アクセス管理コンポーネント
112vは、SQL_RPCのパラメータに含まれるタ
ーゲットDBMSの名称から、使用すべきSQL変換コ
ンポーネントをネームサーバ151に問い合わせる。本
実施例では、SQL変換_Aコンポーネント115aま
たは、SQL変換_Bコンポーネント115bのネット
ワーク・アドレス情報とポート番号が返される。アクセ
ス管理コンポーネント112vは、ネームサーバ151
から返された情報をもとに、何れかのSQL変換コンポ
ーネントにSQL文の変換と、ターゲットDBMSへの
アクセス処理をRPCを用いて依頼する。
ス・アクセス・システムの一構成例である。110は、
アプリケーション・ソフトウェア111が動作するクラ
イアント情報処理装置、130はゲートウェイ情報処理
装置、120a、120bは、それぞれDBMS_A、
DBMS_Bが動作するサーバ情報処理装置、150は
RPC(Remote Procedure Cal
l)で呼び出す各サーバ・コンポーネントのネットワー
ク上の物理位置との対応情報を提供するネームサーバ1
51が動作するネームサーバ情報処理装置である。前記
各情報処理装置はLAN100で接続されている。DB
MS_A、DBMS_Bによって管理されているデータ
ベースのデータは、従来例と同様に外部記憶装置に格納
されるが、図1では該外部記憶装置を省略している。
(以下の実施例についても同様に省略する。) クライアント情報処理装置からサーバ情報処理装置への
アクセスは、アプリケーション・ソフトウェア111か
らのデータベース・アクセスは、SQL文に対応したR
PCを実行することによって行う。本実施例では、アプ
リケーション・ソフトウェア111が使用するSQL仕
様は、本システムでの標準仕様とし、各DBMS_A、
DBMS_BのSQL仕様は、標準仕様とは異なるもの
とする。このRPCを以下SQL_RPCと呼ぶ。クラ
イアント情報処理装置110上のRPCドライバ102
は、まずネームサーバ情報処理装置150上のネームサ
ーバ151に、SQL_RPCを処理するサーバのネッ
トワーク・アドレスとサーバ・コンポーネントへの接続
のためのポート番号を問い合わせる。SQL_RPCを
処理するサーバは、ゲートウェイ情報処理装置130上
のアクセス管理コンポーネント112vであるので、前
記問い合わせに対して、ネームサーバ151はゲートウ
ェイ情報処理装置130のネットワーク・アドレス情報
とアクセス管理コンポーネント112vのポート番号を
返すように動作する。このアドレス情報とポート番号を
もとに、クライアント情報処理装置110上のRPCド
ライバ102は、ゲートウェイ情報処理装置130上の
アクセス管理コンポーネント112vとRPCの接続を
行い、SQL_RPCの処理をアクセス管理コンポーネ
ント112vへ依頼する。アクセス管理コンポーネント
112vは、SQL_RPCのパラメータに含まれるタ
ーゲットDBMSの名称から、使用すべきSQL変換コ
ンポーネントをネームサーバ151に問い合わせる。本
実施例では、SQL変換_Aコンポーネント115aま
たは、SQL変換_Bコンポーネント115bのネット
ワーク・アドレス情報とポート番号が返される。アクセ
ス管理コンポーネント112vは、ネームサーバ151
から返された情報をもとに、何れかのSQL変換コンポ
ーネントにSQL文の変換と、ターゲットDBMSへの
アクセス処理をRPCを用いて依頼する。
【0024】SQL変換_Aコンポーネント115aま
たはSQL変換_Bコンポーネント115bが行った各
DBMSへのアクセス結果は、上述の経路を逆に辿り、
SQL変換_AコンポーネントまたはSQL変換_Bコ
ンポーネントによって、標準のデータ形式、および標準
のリターン・コードに変換した後、アクセス管理コンポ
ーネントを介してアプリケーション・ソフトウェア11
1に送られる。
たはSQL変換_Bコンポーネント115bが行った各
DBMSへのアクセス結果は、上述の経路を逆に辿り、
SQL変換_AコンポーネントまたはSQL変換_Bコ
ンポーネントによって、標準のデータ形式、および標準
のリターン・コードに変換した後、アクセス管理コンポ
ーネントを介してアプリケーション・ソフトウェア11
1に送られる。
【0025】図4は、SQL_RPCの処理を示すフロ
ーチャートである。まず、ステップ450で、ネームサ
ーバ情報処理装置150上のネームサーバ151に、S
QL_RPCを処理するサーバの物理位置すなわちネッ
トワーク・アドレスとサーバ・コンポーネントのポート
番号を問い合わせる。ネットワーク・アドレスとサーバ
・コンポーネントのポート番号をもとに、ステップ45
1でクライアント情報処理装置110上のRPCドライ
バは、ゲートウェイ情報処理装置130上のアクセス管
理コンポーネント112vとRPC接続を行い、SQL
_RPCの処理をアクセス管理コンポーネントへ依頼す
る。ステップ401以下は、アクセス管理コンポーネン
ト112vでの処理内容である。ステップ401では、
RPCのパラメータとして送られてきたSQL文を解析
し、アクセス先のテーブルが含まれるDBMSの名称を
得る。本実施例におけるアクセス管理コンポーネント1
12vは、単一のDBMS上のテーブルに対する操作だ
けでなく、複数のDBMS上に跨る複数のテーブルに対
するデータの結合などの操作を行えるようするため、ス
テップ402、403、404では、アクセス先がDB
MS_AとDBMS_Bの両方か、DBMS_Aだけ
か、DBMS_Bだけかをそれぞれ判断する。アクセス
先がDBMS_AとDBMS_Bの両方の場合はステッ
プ406で、SQL文をDBMS_Aに対するアクセス
と、DBMS_Bに対するアクセスに分割したSQL文
を作成する。そして、ステップ407ではDBMS_A
に対して、ステップ408ではDBMS_Bに対するS
QL文をパラメータとしたRPC(それぞれSQL_A
_RPC、SQL_B_RPCと呼ぶ)を実行し、その
結果を得る。ステップ409では、ステップ407、4
08で得た結果をマージし、分割前のSQL文に対応す
る結果を作成し、ステップ412でSQL_RPCを完
了する。アクセス先がDBMS_AあるいはDBMS_
Bだけであった場合は、ステップ410、411でそれ
ぞれSQL文をパラメータとしたRPC(SQL_A_
RPCまたはSQL_B_RPC)を発行し、アクセス
結果を得、ステップ412でSQL_RPCを完了す
る。なお、アクセス先がDBMS_AでもDBMS_B
でもない場合は、ステップ405でエラーコードをセッ
トし、SQL_RPCを終了する。
ーチャートである。まず、ステップ450で、ネームサ
ーバ情報処理装置150上のネームサーバ151に、S
QL_RPCを処理するサーバの物理位置すなわちネッ
トワーク・アドレスとサーバ・コンポーネントのポート
番号を問い合わせる。ネットワーク・アドレスとサーバ
・コンポーネントのポート番号をもとに、ステップ45
1でクライアント情報処理装置110上のRPCドライ
バは、ゲートウェイ情報処理装置130上のアクセス管
理コンポーネント112vとRPC接続を行い、SQL
_RPCの処理をアクセス管理コンポーネントへ依頼す
る。ステップ401以下は、アクセス管理コンポーネン
ト112vでの処理内容である。ステップ401では、
RPCのパラメータとして送られてきたSQL文を解析
し、アクセス先のテーブルが含まれるDBMSの名称を
得る。本実施例におけるアクセス管理コンポーネント1
12vは、単一のDBMS上のテーブルに対する操作だ
けでなく、複数のDBMS上に跨る複数のテーブルに対
するデータの結合などの操作を行えるようするため、ス
テップ402、403、404では、アクセス先がDB
MS_AとDBMS_Bの両方か、DBMS_Aだけ
か、DBMS_Bだけかをそれぞれ判断する。アクセス
先がDBMS_AとDBMS_Bの両方の場合はステッ
プ406で、SQL文をDBMS_Aに対するアクセス
と、DBMS_Bに対するアクセスに分割したSQL文
を作成する。そして、ステップ407ではDBMS_A
に対して、ステップ408ではDBMS_Bに対するS
QL文をパラメータとしたRPC(それぞれSQL_A
_RPC、SQL_B_RPCと呼ぶ)を実行し、その
結果を得る。ステップ409では、ステップ407、4
08で得た結果をマージし、分割前のSQL文に対応す
る結果を作成し、ステップ412でSQL_RPCを完
了する。アクセス先がDBMS_AあるいはDBMS_
Bだけであった場合は、ステップ410、411でそれ
ぞれSQL文をパラメータとしたRPC(SQL_A_
RPCまたはSQL_B_RPC)を発行し、アクセス
結果を得、ステップ412でSQL_RPCを完了す
る。なお、アクセス先がDBMS_AでもDBMS_B
でもない場合は、ステップ405でエラーコードをセッ
トし、SQL_RPCを終了する。
【0026】図5は、SQL_A_RPCおよびSQL
_B_RPCの処理を示すフローチャートである。
_B_RPCの処理を示すフローチャートである。
【0027】以下、SQL_A_RPCとSQL_B_
RPCを合わせてSQL_x_RPCと呼ぶ。SQL_
x_RPCが呼ばれると、まず、ステップ501でRP
Cドライバ102がSQL_x_RPCを処理するサー
バ・コンポーネント(本実施例ではSQL変換コンポー
ネント)のネットワーク・アドレス情報とポート番号
を、ネームサーバ151に問い合わせることによって取
得する。次にステップ502では、問合わせたネットワ
ーク・アドレス情報とポート番号によって得たSQL変
換コンポーネントに対し、SQL_x_RPCを引き渡
し、その処理を依頼する。ステップ503、504、5
05はSQL変換コンポーネントでの処理である。ステ
ップ503ではRPCのパラメータとして受け取った標
準仕様のSQL文をターゲットDBMSのSQL仕様に
変換する。次に変換によって作成したSQL文をステッ
プ504でターゲットDBMSに送り、ターゲットDB
MSでのSQL文の実行結果を得る。さらにステップ5
05で実行結果として得たデータおよびリターンコード
を、ターゲットDBMSのSQL仕様から標準のSQL
仕様に変換する。変換結果をリターンデータ、リターン
コードとしてステップ506でSQL_x_RPCを終
了する。
RPCを合わせてSQL_x_RPCと呼ぶ。SQL_
x_RPCが呼ばれると、まず、ステップ501でRP
Cドライバ102がSQL_x_RPCを処理するサー
バ・コンポーネント(本実施例ではSQL変換コンポー
ネント)のネットワーク・アドレス情報とポート番号
を、ネームサーバ151に問い合わせることによって取
得する。次にステップ502では、問合わせたネットワ
ーク・アドレス情報とポート番号によって得たSQL変
換コンポーネントに対し、SQL_x_RPCを引き渡
し、その処理を依頼する。ステップ503、504、5
05はSQL変換コンポーネントでの処理である。ステ
ップ503ではRPCのパラメータとして受け取った標
準仕様のSQL文をターゲットDBMSのSQL仕様に
変換する。次に変換によって作成したSQL文をステッ
プ504でターゲットDBMSに送り、ターゲットDB
MSでのSQL文の実行結果を得る。さらにステップ5
05で実行結果として得たデータおよびリターンコード
を、ターゲットDBMSのSQL仕様から標準のSQL
仕様に変換する。変換結果をリターンデータ、リターン
コードとしてステップ506でSQL_x_RPCを終
了する。
【0028】このように、アクセス管理コンポーネント
112v、SQL変換_Aコンポーネント115a、S
QL変換_Bコンポーネント115bを具備することに
よって、アプリケーション・ソフトウェア111から
は、仕様の異なる複数のDBMS上のテーブルを、その
仕様の違いを意識すること無く単一の標準仕様のSQL
文を用いてアクセスすることができる。
112v、SQL変換_Aコンポーネント115a、S
QL変換_Bコンポーネント115bを具備することに
よって、アプリケーション・ソフトウェア111から
は、仕様の異なる複数のDBMS上のテーブルを、その
仕様の違いを意識すること無く単一の標準仕様のSQL
文を用いてアクセスすることができる。
【0029】図10は、本実施例におけるゲートウェイ
情報処理装置130内のプログラムの動作の一例を示す
図である。ここでは、クライアント情報処理装置を2台
接続し、クライアント情報処理装置110aからはサー
バ情報処理装置120a上のDBMS_Aとサーバ情報
処理装置120b上のDBMS_Bを、クライアント情
報処理装置110bからはサーバ情報処理装置120b
上のDBMS_Bをアクセスする場合を示す。アクセス
管理コンポーネント112vは、クライアント情報処理
装置との接続単位にプロセスが生成される。SQL変換
_A 115a、SQL変換_B 115bについて
も、アクセス管理コンポーネントの各プロセスからのア
クセス要求がRPCを用いて発行される毎にプロセスが
生成される。また、データベース・ドライバA、データ
ベース・ドライバBは、それぞれSQL変換_A、SQ
L変換_Bの各1プロセスに対して1プロセスが生成さ
れるように動作する。これらのプロセスは、アクセスの
終了と共に消滅する。このようなプロセス生成・消滅を
ゲートウェイ情報処理装置130で行うことによって、
複数のクライアント情報処理装置から複数のサーバ情報
処理装置へのアクセスを同時に処理することができる。
情報処理装置130内のプログラムの動作の一例を示す
図である。ここでは、クライアント情報処理装置を2台
接続し、クライアント情報処理装置110aからはサー
バ情報処理装置120a上のDBMS_Aとサーバ情報
処理装置120b上のDBMS_Bを、クライアント情
報処理装置110bからはサーバ情報処理装置120b
上のDBMS_Bをアクセスする場合を示す。アクセス
管理コンポーネント112vは、クライアント情報処理
装置との接続単位にプロセスが生成される。SQL変換
_A 115a、SQL変換_B 115bについて
も、アクセス管理コンポーネントの各プロセスからのア
クセス要求がRPCを用いて発行される毎にプロセスが
生成される。また、データベース・ドライバA、データ
ベース・ドライバBは、それぞれSQL変換_A、SQ
L変換_Bの各1プロセスに対して1プロセスが生成さ
れるように動作する。これらのプロセスは、アクセスの
終了と共に消滅する。このようなプロセス生成・消滅を
ゲートウェイ情報処理装置130で行うことによって、
複数のクライアント情報処理装置から複数のサーバ情報
処理装置へのアクセスを同時に処理することができる。
【0030】図18は、第一の実施例を用いたシステム
の他の構成例である。600aは、DBMS_Aを用い
たサーバ情報処理装置121aとDBMS_A専用のデ
ータベースドライバA、アプリケーション・ソフトウェ
アAが搭載されたクライアント情報処理装置110aか
ら構成される既存のシステム。600bは、DBMS_
Bを用いたサーバ情報処理装置121bと前記DBMS
_B専用のデータベースドライバB、アプリケーション
・ソフトウェアBが搭載されたクライアント情報処理装
置110bから構成される既存のシステムである。これ
らの既存のシステムに、上述のゲートウェイ情報処理装
置130、ネームサーバ情報処理装置150、クライア
ント情報処理装置110からなる付加システム500を
付加することによって、既存のシステム600a、60
0bの構成を何等変更することなく、追加したクライア
ント情報処理装置110から単一の標準仕様のSQL文
を用いて、仕様の異なる二つの既存のDBMSにアクセ
スすることができる。
の他の構成例である。600aは、DBMS_Aを用い
たサーバ情報処理装置121aとDBMS_A専用のデ
ータベースドライバA、アプリケーション・ソフトウェ
アAが搭載されたクライアント情報処理装置110aか
ら構成される既存のシステム。600bは、DBMS_
Bを用いたサーバ情報処理装置121bと前記DBMS
_B専用のデータベースドライバB、アプリケーション
・ソフトウェアBが搭載されたクライアント情報処理装
置110bから構成される既存のシステムである。これ
らの既存のシステムに、上述のゲートウェイ情報処理装
置130、ネームサーバ情報処理装置150、クライア
ント情報処理装置110からなる付加システム500を
付加することによって、既存のシステム600a、60
0bの構成を何等変更することなく、追加したクライア
ント情報処理装置110から単一の標準仕様のSQL文
を用いて、仕様の異なる二つの既存のDBMSにアクセ
スすることができる。
【0031】ところで、本発明ではアプリケーション・
ソフトウェア111からアクセス管理コンポーネント1
12vへのアクセスと、アクセス管理コンポーネントか
らのSQL変換コンポーネント115へのアクセスにR
PCを用いている。これによって、図1に示した本発明
による異種データベース・アクセス・システムは、ゲー
トウェイ情報処理装置130への負荷集中によるデータ
ベース・アクセス性能の低下を、ゲートウェイ情報処理
装置130の追加によって容易に実現できる。以下、ゲ
ートウェイ情報処理装置130を追加した場合の動作を
第2の実施例として図9を用いて説明する。
ソフトウェア111からアクセス管理コンポーネント1
12vへのアクセスと、アクセス管理コンポーネントか
らのSQL変換コンポーネント115へのアクセスにR
PCを用いている。これによって、図1に示した本発明
による異種データベース・アクセス・システムは、ゲー
トウェイ情報処理装置130への負荷集中によるデータ
ベース・アクセス性能の低下を、ゲートウェイ情報処理
装置130の追加によって容易に実現できる。以下、ゲ
ートウェイ情報処理装置130を追加した場合の動作を
第2の実施例として図9を用いて説明する。
【0032】図9に示す実施例では、SQL変換_Aコ
ンポーネント115aを具備したゲートウェイ情報処理
装置130aと、SQL変換_Bコンポーネント115
bを具備したゲートウェイ情報処理装置130bの2台
のゲートウェイ情報処理装置を用いる。クライアント情
報処理装置110上のRPCドライバ102は、第一の
実施例と同様、アプリケーション・ソフトウェア111
が発行するSQL_RPCを受け付けると、まず、SQ
L_RPCを処理するサーバの物理位置すなわちネット
ワーク・アドレスとポート番号をネームサーバ151に
問い合わせる。本実施例では、SQL_RPCを処理す
るサーバすなわちアクセス管理コンポーネント112v
は、ゲートウェイ情報処理装置130aと130bの両
方に搭載されており、ネームサーバからはRPCドライ
バ102の問合わせに対して2個のアクセス管理コンポ
ーネント112vの物理位置が返答される。クライアン
ト情報処理装置110上のRPCドライバ102は返答
された複数のアクセス管理コンポーネント112vの中
から処理を依頼するサーバを一つ選択する。
ンポーネント115aを具備したゲートウェイ情報処理
装置130aと、SQL変換_Bコンポーネント115
bを具備したゲートウェイ情報処理装置130bの2台
のゲートウェイ情報処理装置を用いる。クライアント情
報処理装置110上のRPCドライバ102は、第一の
実施例と同様、アプリケーション・ソフトウェア111
が発行するSQL_RPCを受け付けると、まず、SQ
L_RPCを処理するサーバの物理位置すなわちネット
ワーク・アドレスとポート番号をネームサーバ151に
問い合わせる。本実施例では、SQL_RPCを処理す
るサーバすなわちアクセス管理コンポーネント112v
は、ゲートウェイ情報処理装置130aと130bの両
方に搭載されており、ネームサーバからはRPCドライ
バ102の問合わせに対して2個のアクセス管理コンポ
ーネント112vの物理位置が返答される。クライアン
ト情報処理装置110上のRPCドライバ102は返答
された複数のアクセス管理コンポーネント112vの中
から処理を依頼するサーバを一つ選択する。
【0033】本実施例では、ゲートウェイ情報処理装置
130a上のアクセス管理コンポーネント112vが選
択された場合について以下説明する。
130a上のアクセス管理コンポーネント112vが選
択された場合について以下説明する。
【0034】アプリケーション・ソフトウェア111か
ら発行されるSQL_RPCは、まず、ゲートウェイ情
報処理装置130a上のアクセス管理コンポーネント1
12vに送られる。アクセス管理コンポーネントは、す
でに図4を用いて説明したように、ターゲットのDBM
Sに応じてSQL_A_RPCまたはSQL_B_RP
Cを発行する。図9で示したシステムでは、SQL_B
_RPCを処理するSQL変換_Bコンポーネント11
5bは、アクセス管理コンポーネント112aが存在す
るゲートウェイ情報処理装置130aとは別のゲートウ
ェイ情報処理装置130bに存在する。従って、SQL
_B_RPCは、LAN100を経由してゲートウェイ
情報処理装置130b上のSQL変換_Bコンポーネン
ト115bで実行される。
ら発行されるSQL_RPCは、まず、ゲートウェイ情
報処理装置130a上のアクセス管理コンポーネント1
12vに送られる。アクセス管理コンポーネントは、す
でに図4を用いて説明したように、ターゲットのDBM
Sに応じてSQL_A_RPCまたはSQL_B_RP
Cを発行する。図9で示したシステムでは、SQL_B
_RPCを処理するSQL変換_Bコンポーネント11
5bは、アクセス管理コンポーネント112aが存在す
るゲートウェイ情報処理装置130aとは別のゲートウ
ェイ情報処理装置130bに存在する。従って、SQL
_B_RPCは、LAN100を経由してゲートウェイ
情報処理装置130b上のSQL変換_Bコンポーネン
ト115bで実行される。
【0035】このように、本発明では、SQL変換コン
ポーネント115へのアクセスをRPCを用いて行い、
ゲートウェイ情報処理装置130上のRPCドライバ1
02が、処理を依頼するSQL変換コンポーネント11
5の選択を行うので、SQL変換コンポーネント115
が複数のゲートウェイ情報処理装置130上に分散して
いても、アプリケーション・ソフトウェア111がその
位置を意識することなくアクセスすることができる。し
たがって、システム内に存在する種々のDBMSに対応
したSQL変換コンポーネント115は、システム内の
どれかのゲートウェイ情報処理装置130にあればよ
く、すべてのSQL変換コンポーネント115を各ゲー
トウェイ情報処理装置130が持つ必要はない。これに
よって、各ゲートウェイ情報処理装置130への負荷集
中の回避、SQL変換コンポーネント115の導入やメ
ンテナンス工数の低減を図ることができる。
ポーネント115へのアクセスをRPCを用いて行い、
ゲートウェイ情報処理装置130上のRPCドライバ1
02が、処理を依頼するSQL変換コンポーネント11
5の選択を行うので、SQL変換コンポーネント115
が複数のゲートウェイ情報処理装置130上に分散して
いても、アプリケーション・ソフトウェア111がその
位置を意識することなくアクセスすることができる。し
たがって、システム内に存在する種々のDBMSに対応
したSQL変換コンポーネント115は、システム内の
どれかのゲートウェイ情報処理装置130にあればよ
く、すべてのSQL変換コンポーネント115を各ゲー
トウェイ情報処理装置130が持つ必要はない。これに
よって、各ゲートウェイ情報処理装置130への負荷集
中の回避、SQL変換コンポーネント115の導入やメ
ンテナンス工数の低減を図ることができる。
【0036】上述のネームサーバ151が、サーバ・コ
ンポーネントのネットワーク・アドレスとポート番号を
返答するためにネームサーバ情報処理装置150内に持
つサーバ情報テーブル1700の一例を図17に示す。
ンポーネントのネットワーク・アドレスとポート番号を
返答するためにネームサーバ情報処理装置150内に持
つサーバ情報テーブル1700の一例を図17に示す。
【0037】ここでは、1701の列にサーバ・コンポ
ーネントの名称、1072の列にそのネットワーク・ア
ドレス、1703の列にポート番号が格納されている。
なお、1704の列には、各コンポーネントのステータ
スが格納してあり、動作中のサーバは”RUN”、停止
中のサーバは”STOP”、故障中のサーバは”FAU
LT”となっている。
ーネントの名称、1072の列にそのネットワーク・ア
ドレス、1703の列にポート番号が格納されている。
なお、1704の列には、各コンポーネントのステータ
スが格納してあり、動作中のサーバは”RUN”、停止
中のサーバは”STOP”、故障中のサーバは”FAU
LT”となっている。
【0038】クライアント情報処理装置110上のRP
Cドライバ102はアクセス管理コンポーネント112
vの選択は、ゲートウェイ情報処理装置130aおよび
130b上のRPCドライバはSQL変換_AまたはS
QL変換_Bをそれぞれ選択するように実行するが、ネ
ームサーバ151への問い合わせの結果、複数の候補が
ネームサーバ151から返答されたときの選択方法の例
について以下に示す。
Cドライバ102はアクセス管理コンポーネント112
vの選択は、ゲートウェイ情報処理装置130aおよび
130b上のRPCドライバはSQL変換_AまたはS
QL変換_Bをそれぞれ選択するように実行するが、ネ
ームサーバ151への問い合わせの結果、複数の候補が
ネームサーバ151から返答されたときの選択方法の例
について以下に示す。
【0039】第一の選択方法は、複数の候補からランダ
ムに選択する方法である。図12に示すように、候補の
数が2以上のときは乱数を発生させ(ステップ120
2)、発生された乱数を候補の数Nで割りその剰余を求
め(1203)、剰余+1番目の候補をサーバコンポー
ネントとして選択(1204)すればよい。
ムに選択する方法である。図12に示すように、候補の
数が2以上のときは乱数を発生させ(ステップ120
2)、発生された乱数を候補の数Nで割りその剰余を求
め(1203)、剰余+1番目の候補をサーバコンポー
ネントとして選択(1204)すればよい。
【0040】第二の選択方法は、予め登録した優先順位
を用いる方法である。これは、サーバコンポーネントの
優先順位を例えば図13に示すようなテーブル形式で、
ファイルなどに予め格納しておき、ネームサーバ151
から返答された複数の候補の内、優先順位の高いサーバ
・コンポーネントを選択すればよい。ここで1301の
列は優先順位、1302の列はサーバ名称である。この
方法では、RPCを発行するコンポーネントと同じ情報
処理装置上にサーバコンポーネントが存在する場合は、
そのサーバ・コンポーネントを高い優先順位に設定する
ことができ、ネットワークを経由することによるオーバ
ーヘッドを抑えることができる。
を用いる方法である。これは、サーバコンポーネントの
優先順位を例えば図13に示すようなテーブル形式で、
ファイルなどに予め格納しておき、ネームサーバ151
から返答された複数の候補の内、優先順位の高いサーバ
・コンポーネントを選択すればよい。ここで1301の
列は優先順位、1302の列はサーバ名称である。この
方法では、RPCを発行するコンポーネントと同じ情報
処理装置上にサーバコンポーネントが存在する場合は、
そのサーバ・コンポーネントを高い優先順位に設定する
ことができ、ネットワークを経由することによるオーバ
ーヘッドを抑えることができる。
【0041】第三の方法は、各ゲートウェイサーバ情報
処理装置130の負荷の状態によって、選択する方法で
ある。この方法では、各ゲートウェイ・サーバのオペレ
ーティング・システム(OS)が提供するCPUや外部
記憶装置などの負荷状態を、問い合わせに対して返答す
る手段をサーバ・コンポーネントに設ける。この方法で
の選択フローを図14に示す。ステップ1401では、
サーバ・コンポーネント候補の数N、カウンタ用変数
c、最小負荷サーバ・ナンバー記憶変数n、最小負荷記
憶変数LMINを初期化する。ステップ1402では、
サーバ・コンポーネント候補が複数かどうかを調べ、1
個だけなら負荷を調べる必要がないのでステップ141
0に制御を移す。サーバ・コンポーネント候補が複数の
場合には、ステップ1403でc番目の候補のサーバ・
コンポーネントに負荷情報を問い合わせ、ステップ14
04でサーバ・コンポーネントから返された負荷状態を
示す数値を変数Lに格納する。次にステップ1405
で、それまでに調べた他のサーバの負荷の最小値LMI
Nとc番目の候補のサーバ・コンポーネントに負荷情報
である変数Lとを比較し、変数Lの方が小さければステ
ップ1406でLMINにLの値を格納し、ステップ1
407で最小負荷サーバ・ナンバーnに上記調査を行っ
たサーバ・コンポーネントの候補番号すなわちcの値を
格納する。ステップ1408では、カウンタ用変数cを
インクリメントし、ステップ1409で最後の候補まで
負荷の調査が終わったかどうかを調べ、まだの場合には
ステップ1403以下を繰り返すように動作する。この
ようにして、最小の負荷であったサーバ・コンポーネン
トの候補番号がnに格納されるので、ステップ1410
で候補番号で示されるサーバ・コンポーネントを選択し
処理を終了する。この方法によれば、負荷の小さな情報
処理装置上のサーバ・コンポーネントを選択できるの
で、負荷が一台の情報処理装置に集中することを回避で
き、高速に処理を実行できる。
処理装置130の負荷の状態によって、選択する方法で
ある。この方法では、各ゲートウェイ・サーバのオペレ
ーティング・システム(OS)が提供するCPUや外部
記憶装置などの負荷状態を、問い合わせに対して返答す
る手段をサーバ・コンポーネントに設ける。この方法で
の選択フローを図14に示す。ステップ1401では、
サーバ・コンポーネント候補の数N、カウンタ用変数
c、最小負荷サーバ・ナンバー記憶変数n、最小負荷記
憶変数LMINを初期化する。ステップ1402では、
サーバ・コンポーネント候補が複数かどうかを調べ、1
個だけなら負荷を調べる必要がないのでステップ141
0に制御を移す。サーバ・コンポーネント候補が複数の
場合には、ステップ1403でc番目の候補のサーバ・
コンポーネントに負荷情報を問い合わせ、ステップ14
04でサーバ・コンポーネントから返された負荷状態を
示す数値を変数Lに格納する。次にステップ1405
で、それまでに調べた他のサーバの負荷の最小値LMI
Nとc番目の候補のサーバ・コンポーネントに負荷情報
である変数Lとを比較し、変数Lの方が小さければステ
ップ1406でLMINにLの値を格納し、ステップ1
407で最小負荷サーバ・ナンバーnに上記調査を行っ
たサーバ・コンポーネントの候補番号すなわちcの値を
格納する。ステップ1408では、カウンタ用変数cを
インクリメントし、ステップ1409で最後の候補まで
負荷の調査が終わったかどうかを調べ、まだの場合には
ステップ1403以下を繰り返すように動作する。この
ようにして、最小の負荷であったサーバ・コンポーネン
トの候補番号がnに格納されるので、ステップ1410
で候補番号で示されるサーバ・コンポーネントを選択し
処理を終了する。この方法によれば、負荷の小さな情報
処理装置上のサーバ・コンポーネントを選択できるの
で、負荷が一台の情報処理装置に集中することを回避で
き、高速に処理を実行できる。
【0042】第四の選択方法は、各ゲートウェイサーバ
情報処理装置130からの応答時間をもとに選択する方
法である。この方法での選択フローを図15に示す。ス
テップ1501では、サーバ・コンポーネント候補の数
N、カウンタ用変数c、最小応答時間サーバ・ナンバー
記憶変数n、最小応答時間記憶変数RMINを初期化す
る。ステップ1502ではサーバ・コンポーネント候補
が複数かどうかを調べ、1個だけなら応答時間を調べる
必要がないのでステップ1510に制御を移す。サーバ
・コンポーネント候補が複数の場合には、ステップ15
03でc番目の候補のサーバ・コンポーネントに応答時
間計測のためのダミーのRPCを発行し、ステップ15
04でダミーRPCに対する応答時間を変数Rに格納す
る。次にステップ1505でそれまでに調べた他のサー
バ・コンポーネントの応答時間の最小値RMINと変数
Rとを比較し、変数Rの方が小さければステップ150
6でRMINにRの値を格納する。ステップ1507で
は最小応答時間サーバ・ナンバーnに調査を行ったサー
バ・コンポーネントの候補番号すなわちcの値を格納す
る。ステップ1508ではカウンタ用変数cをカウント
アップし、ステップ1509で最後の候補まで応答時間
の調査が終わったかどうかを調べ、まだの場合にはステ
ップ1503以下を繰り返すように動作する。このよう
にして最小の応答時間であったサーバ・コンポーネント
の候補番号がnに格納されるので、ステップ1510で
候補番号で示されるサーバ・コンポーネントを選択し処
理を終了する。上述の応答時間は、サーバ・コンポーネ
ントが搭載された情報処理装置の負荷状態及び情報処理
装置までの通信経路の距離、通信経路の混み具合などを
反映したものであるので、応答時間が最小のサーバ・コ
ンポーネントを採用することによって、最適な処理を行
うことができる。
情報処理装置130からの応答時間をもとに選択する方
法である。この方法での選択フローを図15に示す。ス
テップ1501では、サーバ・コンポーネント候補の数
N、カウンタ用変数c、最小応答時間サーバ・ナンバー
記憶変数n、最小応答時間記憶変数RMINを初期化す
る。ステップ1502ではサーバ・コンポーネント候補
が複数かどうかを調べ、1個だけなら応答時間を調べる
必要がないのでステップ1510に制御を移す。サーバ
・コンポーネント候補が複数の場合には、ステップ15
03でc番目の候補のサーバ・コンポーネントに応答時
間計測のためのダミーのRPCを発行し、ステップ15
04でダミーRPCに対する応答時間を変数Rに格納す
る。次にステップ1505でそれまでに調べた他のサー
バ・コンポーネントの応答時間の最小値RMINと変数
Rとを比較し、変数Rの方が小さければステップ150
6でRMINにRの値を格納する。ステップ1507で
は最小応答時間サーバ・ナンバーnに調査を行ったサー
バ・コンポーネントの候補番号すなわちcの値を格納す
る。ステップ1508ではカウンタ用変数cをカウント
アップし、ステップ1509で最後の候補まで応答時間
の調査が終わったかどうかを調べ、まだの場合にはステ
ップ1503以下を繰り返すように動作する。このよう
にして最小の応答時間であったサーバ・コンポーネント
の候補番号がnに格納されるので、ステップ1510で
候補番号で示されるサーバ・コンポーネントを選択し処
理を終了する。上述の応答時間は、サーバ・コンポーネ
ントが搭載された情報処理装置の負荷状態及び情報処理
装置までの通信経路の距離、通信経路の混み具合などを
反映したものであるので、応答時間が最小のサーバ・コ
ンポーネントを採用することによって、最適な処理を行
うことができる。
【0043】応答時間によるサーバ・コンポーネントの
選択は、ブロードキャスト通信を使うことによって、上
記方法よりも簡単に行うこともできる。この方法での選
択フローを図16に示す。ステップ1601で、処理可
能なサーバ・コンポーネントを募集するブロードキャス
トRPCを発行し、ステップ1602で応答を待つ、最
初に応答があった時点でステップ1603を実行し応答
したサーバ・コンポーネントのサーバ名を取得し、この
サーバ・コンポーネントを実際に処理を依頼するサーバ
として採用する。なお、二番目以降に応答したサーバ・
コンポーネントは無視される。このブロードキャストR
PCを用いて処理を依頼するサーバ・コンポーネントを
選択することによって、図15で説明した応答時間を比
較する方法と同様、サーバ・コンポーネントが搭載され
た情報処理装置の負荷状態及び情報処理装置までの通信
経路の距離、通信経路の混み具合などを反映した選択が
行える。なお、このブロードキャストRPCはネットワ
ークに接続されたすべてのサーバに対して発行される
が、マルチキャストRPCを用いればネームサーバ15
1から得たサーバ・コンポーネントの候補だけに発行す
ることもできる。
選択は、ブロードキャスト通信を使うことによって、上
記方法よりも簡単に行うこともできる。この方法での選
択フローを図16に示す。ステップ1601で、処理可
能なサーバ・コンポーネントを募集するブロードキャス
トRPCを発行し、ステップ1602で応答を待つ、最
初に応答があった時点でステップ1603を実行し応答
したサーバ・コンポーネントのサーバ名を取得し、この
サーバ・コンポーネントを実際に処理を依頼するサーバ
として採用する。なお、二番目以降に応答したサーバ・
コンポーネントは無視される。このブロードキャストR
PCを用いて処理を依頼するサーバ・コンポーネントを
選択することによって、図15で説明した応答時間を比
較する方法と同様、サーバ・コンポーネントが搭載され
た情報処理装置の負荷状態及び情報処理装置までの通信
経路の距離、通信経路の混み具合などを反映した選択が
行える。なお、このブロードキャストRPCはネットワ
ークに接続されたすべてのサーバに対して発行される
が、マルチキャストRPCを用いればネームサーバ15
1から得たサーバ・コンポーネントの候補だけに発行す
ることもできる。
【0044】さらに、応答時間による選択操作を複数回
実施し、複数回の平均応答時間が最も短かったサーバ・
コンポーネントを選ぶようにすれば、一時的なネットワ
ークの混み具合の変化などによる影響を防止し、より最
適なサーバ・コンポーネントの選択を行うことができ
る。
実施し、複数回の平均応答時間が最も短かったサーバ・
コンポーネントを選ぶようにすれば、一時的なネットワ
ークの混み具合の変化などによる影響を防止し、より最
適なサーバ・コンポーネントの選択を行うことができ
る。
【0045】また、サーバ・コンポーネントがブロード
キャストまたはマルチキャストに対する応答時間をサー
バ・コンポーネントが搭載されている情報処理装置の負
荷状況に応じて変化させることで、ブロードキャストま
たはマルチキャストによるサーバ・コンポーネントの選
択を、より最適に行うことができる。
キャストまたはマルチキャストに対する応答時間をサー
バ・コンポーネントが搭載されている情報処理装置の負
荷状況に応じて変化させることで、ブロードキャストま
たはマルチキャストによるサーバ・コンポーネントの選
択を、より最適に行うことができる。
【0046】図20を用いてこの方法によるサーバ・コ
ンポーネントの処理フローを以下説明する。
ンポーネントの処理フローを以下説明する。
【0047】まず、ステップ2001で受信したブロー
ドキャスト・パケットがサーバ・コンポーネントの処理
対象かどうかを調べ、処理対象でなければ処理を終了す
る。処理対象であった場合には、ステップ2002でサ
ーバ・コンポーネントが搭載されている情報処理装置の
負荷状態を調べ、ステップ2003で負荷状態を数値化
したものを変数Lに代入する。ステップ2004、20
05では変数Lを0になるまでカウントダウンし、変数
Lに比例した時間だけ次の処理への移行を遅延させる。
遅延時間経過後、ステップ2006で処理可能であるこ
とを示す応答パケットを、処理を要求したクライアント
・コンポーネントに発行し、ブロードキャスト・パケッ
トの受信処理を終了する。
ドキャスト・パケットがサーバ・コンポーネントの処理
対象かどうかを調べ、処理対象でなければ処理を終了す
る。処理対象であった場合には、ステップ2002でサ
ーバ・コンポーネントが搭載されている情報処理装置の
負荷状態を調べ、ステップ2003で負荷状態を数値化
したものを変数Lに代入する。ステップ2004、20
05では変数Lを0になるまでカウントダウンし、変数
Lに比例した時間だけ次の処理への移行を遅延させる。
遅延時間経過後、ステップ2006で処理可能であるこ
とを示す応答パケットを、処理を要求したクライアント
・コンポーネントに発行し、ブロードキャスト・パケッ
トの受信処理を終了する。
【0048】これによって、上述のように最も早く応答
したサーバ・コンポーネントを選択する場合に、負荷状
態が最も軽い情報処理装置上のサーバ・コンポーネント
を選択することができる。
したサーバ・コンポーネントを選択する場合に、負荷状
態が最も軽い情報処理装置上のサーバ・コンポーネント
を選択することができる。
【0049】以上述べた各選択方法は、単独で用いても
よいし、組み合わせて使用してもよい。また、これらの
選択手段をネームサーバ151に具備し、複数候補があ
る場合にはそのうちの一つを選択してもよいし、優先順
位を付けてネームサーバ151への問い合わせ元に返答
するようにしてもよい。
よいし、組み合わせて使用してもよい。また、これらの
選択手段をネームサーバ151に具備し、複数候補があ
る場合にはそのうちの一つを選択してもよいし、優先順
位を付けてネームサーバ151への問い合わせ元に返答
するようにしてもよい。
【0050】次に、第3の実施例について図6、図7を
用いて以下説明する。
用いて以下説明する。
【0051】本実施例では、第1の実施例においてゲー
トウェイ情報処理装置130上で動作していたSQL変
換_Aコンポーネント、SQL変換_Bコンポーネント
を、それぞれサーバ情報処理装置120a、120bで
動作するようにした。すでに説明したように、SQL変
換_Aコンポーネント、SQL変換_Bコンポーネント
へのインタフェースはRPCを用いている。これによ
り、各コンポーネントのプログラムは、第1の実施例と
同じものを用いたまま、図1の構成を図6の構成に変更
することができる。本実施例においては、各サーバ情報
処理装置120a、120bがそれぞれSQL変換_A
コンポーネント、SQL変換_Bコンポーネントを具備
するので、ゲートウェイ情報処理装置130を介さなく
ても単一のSQL仕様で、異なるSQL仕様を持つDB
MS_A 121a、DBMS_B121bにアクセス
することができる。
トウェイ情報処理装置130上で動作していたSQL変
換_Aコンポーネント、SQL変換_Bコンポーネント
を、それぞれサーバ情報処理装置120a、120bで
動作するようにした。すでに説明したように、SQL変
換_Aコンポーネント、SQL変換_Bコンポーネント
へのインタフェースはRPCを用いている。これによ
り、各コンポーネントのプログラムは、第1の実施例と
同じものを用いたまま、図1の構成を図6の構成に変更
することができる。本実施例においては、各サーバ情報
処理装置120a、120bがそれぞれSQL変換_A
コンポーネント、SQL変換_Bコンポーネントを具備
するので、ゲートウェイ情報処理装置130を介さなく
ても単一のSQL仕様で、異なるSQL仕様を持つDB
MS_A 121a、DBMS_B121bにアクセス
することができる。
【0052】図7は、本実施例においてアプリケーショ
ン・ソフトウェア111から発行されるSQLをRPC
のパラメータとしてデータベースにアクセスするSQL
_API処理プログラム700の処理を示すフローチャ
ートである。
ン・ソフトウェア111から発行されるSQLをRPC
のパラメータとしてデータベースにアクセスするSQL
_API処理プログラム700の処理を示すフローチャ
ートである。
【0053】このSQL_API処理プログラム700
は、クライアント情報処理装置110上のRPCドライ
バ102に含まれる。まず、ステップ701でSQL文
を解析し、アクセス先のDBMS情報を得る。ステップ
702、703、704では、アクセス先がDBMS_
AとDBMS_Bの両方か、DBMS_Aだけか、DB
MS_Bだけかをそれぞれ判断する。アクセス先がDB
MS_AとDBMS_Bの両方の場合はステップ706
で、ステップ701で解析、分析されたSQL文をパラ
メータとするSQL_RPCを実行する。SQL_RP
Cは、アクセス管理コンポーネント112vで処理され
る。一方、アクセス先がDBMS_AあるいはDBMS
_Bだけであった場合は、ステップ707でSQL_A
_RPC、またはステップ708でSQL_B_RPC
を実行し、ゲートウェイ情報処理装置130を介するこ
と無くDBMS_AまたはDBMS_Bをアクセスす
る。このように、ゲートウェイ情報処理装置130をD
BMS_A、DBMS_Bの両方のデータを同時にアク
セスするSQL文を処理する場合にのみ使用する事によ
って、ゲートウェイ情報処理装置130を介することに
よって生じる性能低下を低減することができる。
は、クライアント情報処理装置110上のRPCドライ
バ102に含まれる。まず、ステップ701でSQL文
を解析し、アクセス先のDBMS情報を得る。ステップ
702、703、704では、アクセス先がDBMS_
AとDBMS_Bの両方か、DBMS_Aだけか、DB
MS_Bだけかをそれぞれ判断する。アクセス先がDB
MS_AとDBMS_Bの両方の場合はステップ706
で、ステップ701で解析、分析されたSQL文をパラ
メータとするSQL_RPCを実行する。SQL_RP
Cは、アクセス管理コンポーネント112vで処理され
る。一方、アクセス先がDBMS_AあるいはDBMS
_Bだけであった場合は、ステップ707でSQL_A
_RPC、またはステップ708でSQL_B_RPC
を実行し、ゲートウェイ情報処理装置130を介するこ
と無くDBMS_AまたはDBMS_Bをアクセスす
る。このように、ゲートウェイ情報処理装置130をD
BMS_A、DBMS_Bの両方のデータを同時にアク
セスするSQL文を処理する場合にのみ使用する事によ
って、ゲートウェイ情報処理装置130を介することに
よって生じる性能低下を低減することができる。
【0054】次に第4の実施例を説明する。上述の実施
例では、単一の仕様のSQLを用いたアプリケーション
・ソフトウェアから種々のSQL仕様のDBMSへのア
クセスを実現する例を示したが、本実施例では種々の異
なるSQL仕様を用いたアプリケーション・ソフトウェ
アからSQL仕様と同じまたは異なるDBMSへのアク
セスを実現する。
例では、単一の仕様のSQLを用いたアプリケーション
・ソフトウェアから種々のSQL仕様のDBMSへのア
クセスを実現する例を示したが、本実施例では種々の異
なるSQL仕様を用いたアプリケーション・ソフトウェ
アからSQL仕様と同じまたは異なるDBMSへのアク
セスを実現する。
【0055】図8に本実施例の一構成例を示す。本構成
例では、図1で示した第一の実施例に対してクライアン
ト情報処理装置110rとゲートウェイ情報処理装置1
30上の非標準SQL変換コンポーネント115rを追
加した。111rは、非標準のSQL仕様を用いたアプ
リケーション・ソフトウェアである。また、115rは
非標準のSQLを標準のSQLに変換する非標準SQL
変換コンポーネントである。アプリケーション・ソフト
ウェア111rから発行される非標準仕様のSQL文を
含むRPC(以下SQL_r_RPCと呼ぶ)は、上述
の実施例と同様に、RPCドライバ102、LANドラ
イバ123、LAN100を介して非標準SQL変換コ
ンポーネント115rで処理が行われる。非標準SQL
変換コンポーネント115rで非標準SQLから標準S
QLへと変換されたSQLは、アクセス管理コンポーネ
ント112vにRPCで送られる。以後の処理は第一の
実施例と同様であり、SQL変換コンポーネント115
でターゲットDBMSの仕様のSQLに変換された後、
DBMSをアクセスし、結果を得る。このように、非標
準SQLから標準SQLに変換するコンポーネントを設
けることによって、各種のSQL仕様を用いたアプリケ
ーション・ソフトウェア111rから、仕様の異なるS
QLを用いたDBMSをアクセスすることができる。
例では、図1で示した第一の実施例に対してクライアン
ト情報処理装置110rとゲートウェイ情報処理装置1
30上の非標準SQL変換コンポーネント115rを追
加した。111rは、非標準のSQL仕様を用いたアプ
リケーション・ソフトウェアである。また、115rは
非標準のSQLを標準のSQLに変換する非標準SQL
変換コンポーネントである。アプリケーション・ソフト
ウェア111rから発行される非標準仕様のSQL文を
含むRPC(以下SQL_r_RPCと呼ぶ)は、上述
の実施例と同様に、RPCドライバ102、LANドラ
イバ123、LAN100を介して非標準SQL変換コ
ンポーネント115rで処理が行われる。非標準SQL
変換コンポーネント115rで非標準SQLから標準S
QLへと変換されたSQLは、アクセス管理コンポーネ
ント112vにRPCで送られる。以後の処理は第一の
実施例と同様であり、SQL変換コンポーネント115
でターゲットDBMSの仕様のSQLに変換された後、
DBMSをアクセスし、結果を得る。このように、非標
準SQLから標準SQLに変換するコンポーネントを設
けることによって、各種のSQL仕様を用いたアプリケ
ーション・ソフトウェア111rから、仕様の異なるS
QLを用いたDBMSをアクセスすることができる。
【0056】次に第5の実施例について図11を用いて
以下説明する。本実施例ではRPCを用いたクライアン
トとRPCを用いないクライアントの両方を接続する。
図11は本実施例の一構成例であり、図1で示した第一
の実施例に対してクライアント情報処理装置110aを
追加した。クライアント情報処理装置110a上のアプ
リケーション・ソフトウェアAは、DBMS_A 12
1a用のデータベース・ドライバ122a用に作成され
たものであり、非標準のSQL仕様を用い、データベー
ス・ドライバ122aのAPIを介してデータベース・
アクセスを行う。一方、ゲートウェイ情報処理装置13
0上には、データベース・ドライバA122a経由でア
クセスする非標準SQL変換_RAコンポーネント11
5raを第一の実施例に追加した。アプリケーション・
ソフトウェアA 111aから発行されるDBMS_A
121aの仕様、すなわち非標準仕様のSQL文は、
データベース・ドライバ122a、LANドライバ12
3、LAN100を介してゲートウェイ情報処理装置1
30上の非標準SQL変換_RAコンポーネントで処理
が行われる。非標準SQL変換_RAコンポーネントで
非標準SQLから標準SQLへと変換されたSQL文
は、アクセス管理コンポーネントにRPCで送られる。
以後の処理は第一の実施例と同様であり、SQL変換コ
ンポーネントでターゲットDBMSの仕様のSQLに変
換された後、DBMS_AあるいはDBMS_Bをアク
セスし、結果を得る。このように非標準から標準に変換
するコンポーネントを第一の実施例に追加する事によっ
て、あるDBMS固有の非標準SQLおよび非標準デー
タベース・ドライバを用いたデータベース・アクセス
を、あるDBMS専用に構築されたクライアント情報処
理装置のプログラム構成を全く変更する事なく、DBM
Sとは異なるSQL仕様、通信プロトコル仕様のDBM
Sをアクセスする事ができる。
以下説明する。本実施例ではRPCを用いたクライアン
トとRPCを用いないクライアントの両方を接続する。
図11は本実施例の一構成例であり、図1で示した第一
の実施例に対してクライアント情報処理装置110aを
追加した。クライアント情報処理装置110a上のアプ
リケーション・ソフトウェアAは、DBMS_A 12
1a用のデータベース・ドライバ122a用に作成され
たものであり、非標準のSQL仕様を用い、データベー
ス・ドライバ122aのAPIを介してデータベース・
アクセスを行う。一方、ゲートウェイ情報処理装置13
0上には、データベース・ドライバA122a経由でア
クセスする非標準SQL変換_RAコンポーネント11
5raを第一の実施例に追加した。アプリケーション・
ソフトウェアA 111aから発行されるDBMS_A
121aの仕様、すなわち非標準仕様のSQL文は、
データベース・ドライバ122a、LANドライバ12
3、LAN100を介してゲートウェイ情報処理装置1
30上の非標準SQL変換_RAコンポーネントで処理
が行われる。非標準SQL変換_RAコンポーネントで
非標準SQLから標準SQLへと変換されたSQL文
は、アクセス管理コンポーネントにRPCで送られる。
以後の処理は第一の実施例と同様であり、SQL変換コ
ンポーネントでターゲットDBMSの仕様のSQLに変
換された後、DBMS_AあるいはDBMS_Bをアク
セスし、結果を得る。このように非標準から標準に変換
するコンポーネントを第一の実施例に追加する事によっ
て、あるDBMS固有の非標準SQLおよび非標準デー
タベース・ドライバを用いたデータベース・アクセス
を、あるDBMS専用に構築されたクライアント情報処
理装置のプログラム構成を全く変更する事なく、DBM
Sとは異なるSQL仕様、通信プロトコル仕様のDBM
Sをアクセスする事ができる。
【0057】なお、本実施例ではクライアント情報処理
装置110aとゲートウェイ情報処理装置130との接
続をデータベース・ドライバ_Aを用いて行ったが、こ
のドライバが上述のRPCとは異なる仕様のRPCを用
いていてもよい。
装置110aとゲートウェイ情報処理装置130との接
続をデータベース・ドライバ_Aを用いて行ったが、こ
のドライバが上述のRPCとは異なる仕様のRPCを用
いていてもよい。
【0058】図19は、上記第5の実施例を用いたシス
テムの他の構成例である。600aは、DBMS_Aを
用いたサーバ情報処理装置121aとDBMS_A専用
のデータベースドライバ、アプリケーション・ソフトウ
ェアが搭載されたクライアント情報処理装置110aか
ら構成される既存のシステム。600bは、DBMS_
Bを用いたサーバ情報処理装置121bとDBMS_B
専用のデータベースドライバ、アプリケーション・ソフ
トウェアが搭載されたクライアント情報処理装置110
bから構成される既存のシステムである。これらの既存
のシステムに、ゲートウェイ情報処理装置130、ネー
ムサーバ情報処理装置150からなる付加システム50
0を付加することによって、既存のシステム600a、
600bの構成を何等変更することなくクライアント情
報処理装置110aから、サーバ情報処理装置121b
に搭載されたクライアント情報処理装置110aとはS
QL仕様の異なるDBMS_Bをアクセスすることがで
きる。
テムの他の構成例である。600aは、DBMS_Aを
用いたサーバ情報処理装置121aとDBMS_A専用
のデータベースドライバ、アプリケーション・ソフトウ
ェアが搭載されたクライアント情報処理装置110aか
ら構成される既存のシステム。600bは、DBMS_
Bを用いたサーバ情報処理装置121bとDBMS_B
専用のデータベースドライバ、アプリケーション・ソフ
トウェアが搭載されたクライアント情報処理装置110
bから構成される既存のシステムである。これらの既存
のシステムに、ゲートウェイ情報処理装置130、ネー
ムサーバ情報処理装置150からなる付加システム50
0を付加することによって、既存のシステム600a、
600bの構成を何等変更することなくクライアント情
報処理装置110aから、サーバ情報処理装置121b
に搭載されたクライアント情報処理装置110aとはS
QL仕様の異なるDBMS_Bをアクセスすることがで
きる。
【0059】以上述べた実施例では、SQL仕様の異な
る2種類のDBMSが混在した場合について説明した
が、何種類のDBMSが混在してもよいし、SQL仕様
だけでなく、通信プロトコルが異なっていてもよい。ま
た、各情報処理装置がLANによって接続された例を示
したが、LANでなく電話回線などのWAN(Wide
Area Network)による接続、あるいはLA
NとWANを併用した接続環境にも本発明は適用でき
る。さらに、以上述べた実施例に於けるRPCは、同一
の情報処理装置内のプログラム間か、別の情報処理装置
上のプログラム間かに拘らず処理の依頼と処理結果の受
取が可能なインタフェース機構であれば何を用いてもよ
い。
る2種類のDBMSが混在した場合について説明した
が、何種類のDBMSが混在してもよいし、SQL仕様
だけでなく、通信プロトコルが異なっていてもよい。ま
た、各情報処理装置がLANによって接続された例を示
したが、LANでなく電話回線などのWAN(Wide
Area Network)による接続、あるいはLA
NとWANを併用した接続環境にも本発明は適用でき
る。さらに、以上述べた実施例に於けるRPCは、同一
の情報処理装置内のプログラム間か、別の情報処理装置
上のプログラム間かに拘らず処理の依頼と処理結果の受
取が可能なインタフェース機構であれば何を用いてもよ
い。
【0060】
【発明の効果】以上説明したように、本発明では、ター
ゲットDBMSが明確でしかも単一の場合には、ユーザ
ー・アプリケーション・ソフトウェアから、前記アクセ
ス管理手段を介すること無く直接SQL変換手段へアク
セスすることができるので、オーバーヘッドを低減する
ことができるという効果がある。
ゲットDBMSが明確でしかも単一の場合には、ユーザ
ー・アプリケーション・ソフトウェアから、前記アクセ
ス管理手段を介すること無く直接SQL変換手段へアク
セスすることができるので、オーバーヘッドを低減する
ことができるという効果がある。
【0061】また、本発明のアクセス管理手段とSQL
変換手段は、複数の情報処理装置上に置くことができ、
第一の情報処理装置上のアクセス管理手段から他の情報
処理装置上のSQL変換手段へRPCによる処理依頼を
行うこともできる。これによって、処理負荷を複数の情
報処理装置に分散できるという効果がある。
変換手段は、複数の情報処理装置上に置くことができ、
第一の情報処理装置上のアクセス管理手段から他の情報
処理装置上のSQL変換手段へRPCによる処理依頼を
行うこともできる。これによって、処理負荷を複数の情
報処理装置に分散できるという効果がある。
【0062】また、本発明では、アクセス管理手段が搭
載されたすべての情報処理装置上にすべての種類のDB
MSに対応したSQL変換手段を搭載しなくてもよく、
どれかの情報処理装置上に必要な種類のSQL変換手段
を用意して置けばよいので、導入、保守が容易であると
いう効果がある。
載されたすべての情報処理装置上にすべての種類のDB
MSに対応したSQL変換手段を搭載しなくてもよく、
どれかの情報処理装置上に必要な種類のSQL変換手段
を用意して置けばよいので、導入、保守が容易であると
いう効果がある。
【0063】さらに、本発明では、非標準SQLを用い
たユーザー・アプリケーション・ソフトウェアから、別
の非標準SQLを用いたDBMSへアクセスできるとい
う効果がある。
たユーザー・アプリケーション・ソフトウェアから、別
の非標準SQLを用いたDBMSへアクセスできるとい
う効果がある。
【図1】本発明の第一の実施例における異種データベー
ス・アクセス・システムの構成を示す図である。
ス・アクセス・システムの構成を示す図である。
【図2】従来の異種データベース・アクセス・アクセス
・システムの構成例を示す図である。
・システムの構成例を示す図である。
【図3】従来の異種データベース・アクセス・アクセス
・システムの他の構成例を示す図である。
・システムの他の構成例を示す図である。
【図4】本発明の第一の実施例においてクライアント情
報処理装置からアクセス管理コンポーネントに発行され
るRPCの処理を示すフローチャートである。
報処理装置からアクセス管理コンポーネントに発行され
るRPCの処理を示すフローチャートである。
【図5】本発明の第一の実施例においてアクセス管理コ
ンポーネントからSQL変換コンポーネントに発行され
るRPCの処理を示すフローチャートである。
ンポーネントからSQL変換コンポーネントに発行され
るRPCの処理を示すフローチャートである。
【図6】本発明の第三の実施例における異種データベー
ス・アクセス・システムの構成を示す図である。
ス・アクセス・システムの構成を示す図である。
【図7】本発明の第三の実施例におけるクライアントで
のSQL処理を示すフローチャートである。
のSQL処理を示すフローチャートである。
【図8】本発明の第四の実施例における異種データベー
ス・アクセス・システムの構成を示す図である。
ス・アクセス・システムの構成を示す図である。
【図9】本発明の第二の実施例における異種データベー
ス・アクセス・システムの構成を示す図である。
ス・アクセス・システムの構成を示す図である。
【図10】本発明の第一の実施例におけるゲートウェイ
情報処理装置130内のプログラムの動作を示す図であ
る。
情報処理装置130内のプログラムの動作を示す図であ
る。
【図11】本発明の第五の実施例における異種データベ
ース・アクセス・システムの構成を示す図である。
ース・アクセス・システムの構成を示す図である。
【図12】本発明の第二の実施例において、サーバ・コ
ンポーネントを乱数を用いて選択する場合の処理を示す
フローチャートである。
ンポーネントを乱数を用いて選択する場合の処理を示す
フローチャートである。
【図13】本発明の第二の実施例において、サーバ・コ
ンポーネントを選択するために用意した優先順位テーブ
ルの内容の一例を示す図である。
ンポーネントを選択するために用意した優先順位テーブ
ルの内容の一例を示す図である。
【図14】本発明の第二の実施例において、サーバ・コ
ンポーネントを負荷状態に応じて選択する場合の処理を
示すフローチャートである。
ンポーネントを負荷状態に応じて選択する場合の処理を
示すフローチャートである。
【図15】本発明の第二の実施例において、サーバ・コ
ンポーネントを応答時間に応じて選択する場合の処理を
示すフローチャートである。
ンポーネントを応答時間に応じて選択する場合の処理を
示すフローチャートである。
【図16】本発明の第二の実施例において、サーバ・コ
ンポーネントをブロードキャストRPCを用いて選択す
る場合の処理を示すフローチャートである。
ンポーネントをブロードキャストRPCを用いて選択す
る場合の処理を示すフローチャートである。
【図17】本発明のネームサーバが、サーバ・コンポー
ネントのネットワーク・アドレスとポート番号を返答す
るためにネームサーバ情報処理装置150内に持つテー
ブルの一例を示す図である。
ネントのネットワーク・アドレスとポート番号を返答す
るためにネームサーバ情報処理装置150内に持つテー
ブルの一例を示す図である。
【図18】本発明の第一の実施例を用いたシステムの他
の構成を示す図である。
の構成を示す図である。
【図19】本発明の第五の実施例における異種データベ
ース・アクセス・システムの他の構成を示す図である。
ース・アクセス・システムの他の構成を示す図である。
【図20】本発明の第二の実施例において、ブロードキ
ャストによる処理依頼への応答を、サーバ・コンポーネ
ントが動作する情報処理装置の負荷状態に応じて遅延さ
せるための処理を示す処理を示すフローチャートであ
る。
ャストによる処理依頼への応答を、サーバ・コンポーネ
ントが動作する情報処理装置の負荷状態に応じて遅延さ
せるための処理を示す処理を示すフローチャートであ
る。
100…LAN、102…RPCドライバ、110…ク
ライアント情報処理装置、111…アプリケーション・
ソフトウェア、112…アクセス管理コンポーネント、
115…SQL変換コンポーネント、120…サーバ情
報処理装置、121…DBMS、122…データベース
ドライバ、123…LANドライバ、124…外部記憶
装置、130…ゲートウェイ情報処理装置、150…ネ
ームサーバ情報処理装置、151…ネームサーバ・コン
ポーネント、1300…サーバ優先順位テーブル、17
00…サーバ情報テーブル
ライアント情報処理装置、111…アプリケーション・
ソフトウェア、112…アクセス管理コンポーネント、
115…SQL変換コンポーネント、120…サーバ情
報処理装置、121…DBMS、122…データベース
ドライバ、123…LANドライバ、124…外部記憶
装置、130…ゲートウェイ情報処理装置、150…ネ
ームサーバ情報処理装置、151…ネームサーバ・コン
ポーネント、1300…サーバ優先順位テーブル、17
00…サーバ情報テーブル
───────────────────────────────────────────────────── フロントページの続き (72)発明者 橋本 尚 神奈川県横浜市戸塚区戸塚町5030番地株式 会社日立製作所ソフトウェア開発本部内 (72)発明者 西山 英作 神奈川県横浜市戸塚区戸塚町5030番地株式 会社日立製作所ソフトウェア開発本部内 (72)発明者 日野 裕介 神奈川県横浜市戸塚区戸塚町5030番地株式 会社日立製作所ソフトウェア開発本部内
Claims (32)
- 【請求項1】ネットワーク上に接続された複数のデータ
ベースをそれぞれ管理するデータベース管理システムを
それぞれ有する第1の情報処理装置群と、前記ネットワ
ークに接続され前記データベース管理システムに対して
データベース・アクセス言語を用いて前記データベース
へのアクセスを依頼する複数のユーザー・アプリケーシ
ョン・ソフトウェアをそれぞれ有する第2の情報処理装
置群からなるデータベース・アクセス・システムにおい
て、 前記複数のユーザー・アプリケーション・ソフトウェア
のそれぞれが、前記複数のデータベースの一つに問合せ
するためのデータベース・アクセス言語を、前記問合せ
のあったデータベース管理システムが使用するデータベ
ース・アクセス言語へ変換するデータベース・アクセス
言語変換手段と、 前記ユーザー・アプリケーション・ソフトウェアからの
データベース・アクセスを受け付け、前記データベース
管理システムの種類毎に用意した複数のアクセス言語変
換手段の内の、前記データベース・アクセスのアクセス
先データベース管理システムに対応したデータベース・
アクセス言語に変換するデータベース・アクセス言語変
換手段に前記データベース・アクセスを依頼するアクセ
ス管理手段とを具備し、 前記ユーザー・アプリケーション・ソフトウェアからの
データベース・アクセスおよび前記アクセス管理手段か
ら前記データベース・アクセス言語変換手段への処理依
頼にリモート・プロシージャ・コールを用いたことを特
徴とする異種データベース・アクセス・システム。 - 【請求項2】請求項1記載の異種データベース・アクセ
ス・システムにおいて、前記ネットワークに接続され、
前記アクセス管理手段が搭載された情報処理装置とは異
なる他の情報処理装置上に前記データベース・アクセス
言語変換手段を設けたことを特徴とする異種データベー
ス・アクセス・システム。 - 【請求項3】請求項1記載の異種データベース・アクセ
ス・システムにおいて、前記アクセス管理手段を前記ネ
ットワーク上に接続された複数の情報処理装置上に設
け、前記情報処理装置群の内、ユーザー・アプリケーシ
ョン・ソフトウェアを搭載した情報処理装置上に前記複
数のアクセス管理手段から一つのアクセス管理手段を選
択するアクセス管理選択手段を設けたことを特徴とする
異種データベース・アクセス・システム。 - 【請求項4】請求項1記載の異種データベース・アクセ
ス・システムにおいて、前記データベース・アクセス言
語変換手段を、該データベース・アクセス言語変換手段
が対応する前記データベース管理システムと同一の情報
処理装置に搭載したことを特徴とする異種データベース
・アクセス・システム。 - 【請求項5】請求項1記載の異種データベース・アクセ
ス・システムにおいて、前記ユーザー・アプリケーショ
ン・ソフトウェアを搭載した情報処理装置上から、前記
アクセス管理手段への処理依頼のパラメータ仕様と、前
記データベース・アクセス言語変換手段への処理依頼の
パラメータ仕様とを同一としたことを特徴とする異種デ
ータベース・アクセス・システム。 - 【請求項6】請求項4または5記載の異種データベース
・アクセス・システムにおいて、前記ユーザー・アプリ
ケーション・ソフトウェアからのデータベース・アクセ
ス言語の文が、単一のデータベース管理システムに対す
るものである場合には直接前記データベース・アクセス
言語変換手段をアクセスし、複数のデータベース管理シ
ステムに対するものである場合には前記アクセス管理手
段をアクセスさせる処理手段を有することを特徴とする
異種データベース・アクセス・システム。 - 【請求項7】ネットワーク上に接続された複数のデータ
ベースをそれぞれ管理するデータベース管理システムを
それぞれ有する第1の情報処理装置群と、前記ネットワ
ークに接続され前記データベース管理システムに対して
データベース・アクセス言語を用いて前記データベース
へのアクセスを依頼する複数のユーザー・アプリケーシ
ョン・ソフトウェアをそれぞれ有する第2の情報処理装
置群からなるデータベース・アクセス・システムにおい
て、 前記複数のユーザー・アプリケーション・ソフトウェア
のそれぞれが、前記複数のデータベースの一つに問合せ
するための第1のデータベース・アクセス言語を、前記
問合せのあったデータベース管理システムが使用する第
2のデータベース・アクセス言語へ変換する第1のデー
タベース・アクセス言語変換手段と、 前記ユーザー・アプリケーション・ソフトウェアからの
データベース・アクセスを受け付け、前記データベース
管理システムの種類毎に用意した複数のアクセス言語変
換手段の内の、前記データベース・アクセスのアクセス
先データベース管理システムに対応したデータベース・
アクセス言語に変換するデータベース・アクセス言語変
換手段に前記データベース・アクセスを依頼するアクセ
ス管理手段と、 前記ユーザー・アプリケーション・ソフトウェアと異な
る他のユーザー・アプリケーション・ソフトウェアから
の第3のデータベース・アクセス言語を用いたデータベ
ース・アクセスを受け付け、前記第1のデータベース・
アクセス言語に変換し、前記アクセス管理手段に処理を
依頼する第2のデータベース・アクセス言御変換手段と
を具備することを特徴とする異種データベース・アクセ
ス・システム。 - 【請求項8】請求項7記載の異種データベース・アクセ
ス・システムにおいて、前記アクセス管理手段から前記
第1のデータベース・アクセス言語変換手段への処理依
頼にリモート・プロシージャ・コールを用いたことを特
徴とする異種データベース・アクセス・システム。 - 【請求項9】請求項7記載の異種データベース・アクセ
ス・システムにおいて、前記ユーザー・アプリケーショ
ン・ソフトウェアからのデータベース・アクセスおよび
前記アクセス管理手段から前記第1のデータベース・ア
クセス言語変換手段への処理依頼にリモート・プロシー
ジャ・コールを用いたことを特徴とする異種データベー
ス・アクセス・システム。 - 【請求項10】請求項7記載の異種データベース・アク
セス・システムにおいて、前記アクセス管理手段は、前
記第2のデータベース・アクセス言御変換手段と、前記
第1のデータベース・アクセス言語を用いたユーザー・
アプリケーション・ソフトウェアからの両方のデータベ
ース・アクセスを受け付けることを特徴とする異種デー
タベース・アクセス・システム。 - 【請求項11】請求項7記載の異種データベース・アク
セス・システムにおいて、かつ前記アクセス管理手段と
は異なる前記ネットワークに接続された情報処理装置上
に前記第1のデータベース・アクセス言語変換手段を設
けたことを特徴とする異種データベース・アクセス・シ
ステム。 - 【請求項12】請求項7記載の異種データベース・アク
セス・システムにおいて、複数の情報処理装置上に前記
第二のデータベース・アクセス言語変換管理手段を設
け、ユーザー・アプリケーション・ソフトウェアを搭載
した情報処理装置上に、前記複数の第2のデータベース
・アクセス言語変換管理手段から一つを選択する手段を
設けたことを特徴とする異種データベース・アクセス・
システム。 - 【請求項13】請求項7記載の異種データベース・アク
セス・システムにおいて、前記第1のデータベース・ア
クセス言語変換手段を、該第1のデータベース・アクセ
ス言語変換手段が対応する前記データベース管理ソフト
ウェアと同一の情報処理装置に搭載したことを特徴とす
る異種データベース・アクセス・システム。 - 【請求項14】請求項7記載の異種データベース・アク
セス・システムにおいて、前記第3のデータベース・ア
クセス言語と前記第2のデータベース・アクセス言語が
同じ仕様であることを特徴とする異種データベース・ア
クセス・システム。 - 【請求項15】請求項1記載の異種データベース・アク
セス・システムにおいて、同一のデータベース・アクセ
ス言語変換手段を複数の情報処理装置上に設け、前記ア
クセス管理手段が前記複数の情報処理装置上のデータベ
ース・アクセス言語変換手段から一つのデータベース・
アクセス言語変換手段を選択する言語変換選択手段を設
けたことを特徴とする異種データベース・アクセス・シ
ステム。 - 【請求項16】請求項15記載の異種データベース・ア
クセス・システムにおいて、前記言語変換選択手段は、
前記複数のデータベース・アクセス言語変換手段から乱
数を用いて一個のデータベース・アクセス言語変換手段
を選択することを特徴とする異種データベース・アクセ
ス・システム。 - 【請求項17】請求項15記載の異種データベース・ア
クセス・システムにおいて、前記言語変換選択手段は、
予め設定したデータベース・アクセス言語変換手段の優
先順位表を用いて、前記複数のデータベース・アクセス
言語変換手段から一つのデータベース・アクセス言語変
換手段を選択することを特徴とする異種データベース・
アクセス・システム。 - 【請求項18】請求項15記載の異種データベース・ア
クセス・システムにおいて、前記言語変換選択手段は、
前記複数のデータベース・アクセス言語変換手段に該デ
ータベース・アクセス言語変換手段が搭載されている情
報処理装置の負荷状況を問い合わせ、最も負荷の小さな
情報処理装置上のデータベース・アクセス言語変換手段
を選択することを特徴とする異種データベース・アクセ
ス・システム。 - 【請求項19】請求項15記載の異種データベース・ア
クセス・システムにおいて、前記言語変換選択手段は、
前記複数のデータベース・アクセス言語変換手段からの
応答時間を測定し、最も応答時間の短いデータベース・
アクセス言語変換手段を選択することを特徴とする異種
データベース・アクセス・システム。 - 【請求項20】請求項15記載の異種データベース・ア
クセス・システムにおいて、前記言語変換選択手段は、
前記複数のデータベース・アクセス言語変換手段からの
応答時間を各々複数回測定し、最も平均応答時間の短い
データベース・アクセス言語変換手段を選択することを
特徴とする異種データベース・アクセス・システム。 - 【請求項21】請求項15記載の異種データベース・ア
クセス・システムにおいて、前記言語変換選択手段は、
通信のブロードキャストを用いて前記変換が可能なデー
タベース・アクセス言語変換手段を募集し、最も早く応
答したデータベース・アクセス言語変換手段を選択する
ことを特徴とする異種データベース・アクセス・システ
ム。 - 【請求項22】請求項15記載の異種データベース・ア
クセス・システムにおいて、前記言語変換選択手段は、
通信のブロードキャストを用いて前記変換が可能なデー
タベース・アクセス言語変換手段を募集し、最も早く応
答したデータベース・アクセス言語変換手段を記憶する
操作を複数回行い、前記複数回の操作において最も早く
応答した回数が最も多いデータベース・アクセス言語変
換手段を選択することを特徴とする異種データベース・
アクセス・システム。 - 【請求項23】請求項3記載の異種データベース・アク
セス・システムにおいて、前記アクセス管理選択手段
は、前記複数のアクセス管理手段から乱数を用いて一個
のアクセス管理手段を選択することを特徴とする異種デ
ータベース・アクセス・システム。 - 【請求項24】請求項3記載の異種データベース・アク
セス・システムにおいて、前記アクセス管理選択手段
は、予め設定したアクセス管理手段の優先順位表を用い
て、前記複数のアクセス管理手段から一個のアクセス管
理手段を選択することを特徴とする異種データベース・
アクセス・システム。 - 【請求項25】請求項3記載の異種データベース・アク
セス・システムにおいて、前記アクセス管理選択手段
は、前記複数のアクセス管理手段に該アクセス管理手段
が搭載されている情報処理装置の負荷状況を問い合わ
せ、最も負荷の小さな情報処理装置上のアクセス管理手
段を選択することを特徴とする異種データベース・アク
セス・システム。 - 【請求項26】請求項3記載の異種データベース・アク
セス・システムにおいて、前記アクセス管理選択手段
は、前記複数のアクセス管理手段からの応答時間を測定
し、最も応答時間の短いアクセス管理手段を選択するこ
とを特徴とする異種データベース・アクセス・システ
ム。 - 【請求項27】請求項3記載の異種データベース・アク
セス・システムにおいて、前記アクセス管理選択手段
は、前記複数のアクセス管理手段からの応答時間を各々
複数回測定し、最も平均応答時間の短いアクセス管理手
段を選択することを特徴とする異種データベース・アク
セス・システム。 - 【請求項28】請求項3記載の異種データベース・アク
セス・システムにおいて、前記アクセス管理選択手段
は、通信のブロードキャストを用いて前記変換が可能な
アクセス管理手段を募集し、最も早く応答したアクセス
管理手段を選択することを特徴とする異種データベース
・アクセス・システム。 - 【請求項29】請求項3記載の異種データベース・アク
セス・システムにおいて、前記アクセス管理選択手段
は、通信のブロードキャストを用いて前記変換が可能な
アクセス管理手段を募集し、最も早く応答したアクセス
管理手段を記憶する操作を複数回行い、前記複数回の操
作において最も早く応答した回数が最も多いアクセス管
理手段を選択することを特徴とする異種データベース・
アクセス・システム。 - 【請求項30】異種データベース・アクセス・システム
の制御方法において、処理の依頼を行うクライアント・
プログラムと、前記処理を実行するサーバ・プログラム
を持つ処理システムにおいて、クライアント・プログラ
ムが発行する処理依頼の募集を行うブロードキャスト・
パケットを受け取ったサーバ・プログラムが応答パケッ
トを発行する際に、前記サーバ・プログラムが搭載され
ている情報処理装置の負荷状況を調べ、前記負荷に比例
した時間だけ前記応答パケットの発行を遅延させること
を特徴とした異種データベース・アクセス・システムの
制御方法。 - 【請求項31】請求項30記載の異種データベース・ア
クセス・システムの制御方法において、前記プログラム
間通信がネットワークを介して行われることを特徴とし
た異種データベース・アクセス・システムの制御方法。 - 【請求項32】請求項30記載の異種データベース・ア
クセス・システムの制御方法において、前記プログラム
間通信がリモート・プロシジャ・コールであることを特
徴とした異種データベース・アクセス・システムの制御
方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP31939493A JP3277654B2 (ja) | 1993-12-20 | 1993-12-20 | 異種データベース・アクセス・システム |
US08/355,891 US5721904A (en) | 1993-12-20 | 1994-12-14 | Database access system and method of controlling access management to a database access system for a plurality of heterogeneous database servers using SQL |
DE4445444A DE4445444A1 (de) | 1993-12-20 | 1994-12-20 | Datenbankzugriffssystem und Verfahren zum Steuern desselben |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP31939493A JP3277654B2 (ja) | 1993-12-20 | 1993-12-20 | 異種データベース・アクセス・システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH07175697A true JPH07175697A (ja) | 1995-07-14 |
JP3277654B2 JP3277654B2 (ja) | 2002-04-22 |
Family
ID=18109690
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP31939493A Expired - Fee Related JP3277654B2 (ja) | 1993-12-20 | 1993-12-20 | 異種データベース・アクセス・システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3277654B2 (ja) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09319757A (ja) * | 1996-05-29 | 1997-12-12 | N T T Data Tsushin Kk | 情報検索システム |
JPH1049409A (ja) * | 1996-08-01 | 1998-02-20 | Yasushi Seiki | 異種データベース統合システム |
JPH1049539A (ja) * | 1996-07-31 | 1998-02-20 | Matsushita Electric Ind Co Ltd | データベース管理システム |
WO1998040820A1 (en) * | 1997-03-12 | 1998-09-17 | Fujitsu Limited | A communications system for client-server data processing systems |
US6208428B1 (en) | 1997-05-21 | 2001-03-27 | Nec Corporation | Printing system and charging method thereof |
JP2001188861A (ja) * | 1999-09-17 | 2001-07-10 | Crossmar Inc | データ管理システムへのアクセス用クライアントアプリケーションプログラム用インターフェースシステムおよび方法 |
WO2005003977A1 (ja) * | 2003-07-02 | 2005-01-13 | Satoshi Yamatake | 画像データベースシステム |
JP2008527575A (ja) * | 2005-01-13 | 2008-07-24 | トムソン グローバル リソーシーズ | 複数のクエリ言語を用いて情報を検索するシステム、方法およびソフトウェア |
JP2008197974A (ja) * | 2007-02-14 | 2008-08-28 | Hitachi Software Eng Co Ltd | Dbアクセスの疎結合化システム |
JP2008250588A (ja) * | 2007-03-30 | 2008-10-16 | Nomura Research Institute Ltd | データ処理システム |
KR100906449B1 (ko) * | 2009-03-11 | 2009-07-08 | 주식회사 신시웨이 | 데이터베이스 툴 식별 장치 및 방법 |
JP2009271587A (ja) * | 2008-04-30 | 2009-11-19 | Toshiba Tec Corp | データ管理システム |
JP2010165043A (ja) * | 2009-01-13 | 2010-07-29 | Nec Corp | データベース検索システム、情報処理装置、データベース検索方法及びプログラム |
US7970686B1 (en) | 2000-09-15 | 2011-06-28 | Citigroup Global Markets, Inc. | System and method of interfacing for client application programs to access a data management system |
JP2018014133A (ja) * | 2010-10-12 | 2018-01-25 | クリニコンプ インターナショナル, インコーポレイテッドClinicomp International, Inc. | 標準化データベースアクセスシステムおよび方法 |
WO2018074479A1 (ja) * | 2016-10-20 | 2018-04-26 | 日本電信電話株式会社 | データ処理装置およびデータ処理方法 |
-
1993
- 1993-12-20 JP JP31939493A patent/JP3277654B2/ja not_active Expired - Fee Related
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09319757A (ja) * | 1996-05-29 | 1997-12-12 | N T T Data Tsushin Kk | 情報検索システム |
JPH1049539A (ja) * | 1996-07-31 | 1998-02-20 | Matsushita Electric Ind Co Ltd | データベース管理システム |
JPH1049409A (ja) * | 1996-08-01 | 1998-02-20 | Yasushi Seiki | 異種データベース統合システム |
WO1998040820A1 (en) * | 1997-03-12 | 1998-09-17 | Fujitsu Limited | A communications system for client-server data processing systems |
US6208428B1 (en) | 1997-05-21 | 2001-03-27 | Nec Corporation | Printing system and charging method thereof |
JP2001188861A (ja) * | 1999-09-17 | 2001-07-10 | Crossmar Inc | データ管理システムへのアクセス用クライアントアプリケーションプログラム用インターフェースシステムおよび方法 |
US7970686B1 (en) | 2000-09-15 | 2011-06-28 | Citigroup Global Markets, Inc. | System and method of interfacing for client application programs to access a data management system |
WO2005003977A1 (ja) * | 2003-07-02 | 2005-01-13 | Satoshi Yamatake | 画像データベースシステム |
US7716277B2 (en) | 2003-07-02 | 2010-05-11 | Satoshi Yamatake | Image database system |
JP2008527575A (ja) * | 2005-01-13 | 2008-07-24 | トムソン グローバル リソーシーズ | 複数のクエリ言語を用いて情報を検索するシステム、方法およびソフトウェア |
JP2008197974A (ja) * | 2007-02-14 | 2008-08-28 | Hitachi Software Eng Co Ltd | Dbアクセスの疎結合化システム |
JP2008250588A (ja) * | 2007-03-30 | 2008-10-16 | Nomura Research Institute Ltd | データ処理システム |
JP2009271587A (ja) * | 2008-04-30 | 2009-11-19 | Toshiba Tec Corp | データ管理システム |
JP2010165043A (ja) * | 2009-01-13 | 2010-07-29 | Nec Corp | データベース検索システム、情報処理装置、データベース検索方法及びプログラム |
KR100906449B1 (ko) * | 2009-03-11 | 2009-07-08 | 주식회사 신시웨이 | 데이터베이스 툴 식별 장치 및 방법 |
JP2018014133A (ja) * | 2010-10-12 | 2018-01-25 | クリニコンプ インターナショナル, インコーポレイテッドClinicomp International, Inc. | 標準化データベースアクセスシステムおよび方法 |
JP2020074216A (ja) * | 2010-10-12 | 2020-05-14 | クリニコンプ インターナショナル, インコーポレイテッドClinicomp International, Inc. | 標準化データベースアクセスシステムおよび方法 |
WO2018074479A1 (ja) * | 2016-10-20 | 2018-04-26 | 日本電信電話株式会社 | データ処理装置およびデータ処理方法 |
JPWO2018074479A1 (ja) * | 2016-10-20 | 2019-02-07 | 日本電信電話株式会社 | データ処理装置およびデータ処理方法 |
US11347765B2 (en) | 2016-10-20 | 2022-05-31 | Nippon Telegraph And Telephone Corporation | Data processing apparatus and data processing method |
Also Published As
Publication number | Publication date |
---|---|
JP3277654B2 (ja) | 2002-04-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5721904A (en) | Database access system and method of controlling access management to a database access system for a plurality of heterogeneous database servers using SQL | |
JP3277654B2 (ja) | 異種データベース・アクセス・システム | |
US7475058B2 (en) | Method and system for providing a distributed querying and filtering system | |
US7386554B2 (en) | Remote scoring and aggregating similarity search engine for use with relational databases | |
EP2546765B1 (en) | Storage-side storage request management | |
US6345266B1 (en) | Predicate indexing for locating objects in a distributed directory | |
US8645386B2 (en) | Processor implemented systems and methods for using the catalog part of an SQL identifier to expose/access heterogeneous data | |
US7191170B2 (en) | Predicate indexing of data stored in a computer with application to indexing cached data | |
US8286157B2 (en) | Method, system and program product for managing applications in a shared computer infrastructure | |
US7853570B2 (en) | Method and system for data processing with parallel database systems | |
US20040073549A1 (en) | Query resolution system | |
US20030187841A1 (en) | Method and structure for federated web service discovery search over multiple registries with result aggregation | |
US8578053B2 (en) | NAS load balancing system | |
US20030126196A1 (en) | System for optimizing the invocation of computer-based services deployed in a distributed computing environment | |
JP2006528387A5 (ja) | ||
KR19980087398A (ko) | 인터넷에서의 동적 경로배정 방법 및 장치 | |
AU2008214724A1 (en) | Web service discovery method and apparatus using natural language queries | |
WO2012041388A1 (en) | Generation of a query plan for accessing a database | |
JP2006526301A (ja) | ネットワークに対する知能型トラフィック管理システムおよびそれを利用した知能型トラフィック管理方法 | |
Rompothong et al. | A query federation of UDDI registries | |
EP1768035A1 (en) | LDAP to SQL database proxy system and method | |
CA2518894C (en) | Request routing system for and method of request routing | |
JPH07160557A (ja) | データベースアクセス処理方法 | |
Papadimos et al. | Mutant query plans | |
WO2016092604A1 (ja) | データ処理システムおよびデータアクセス方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |