JPH10187513A - クライアント/サーバ型データベースシステム - Google Patents

クライアント/サーバ型データベースシステム

Info

Publication number
JPH10187513A
JPH10187513A JP9010049A JP1004997A JPH10187513A JP H10187513 A JPH10187513 A JP H10187513A JP 9010049 A JP9010049 A JP 9010049A JP 1004997 A JP1004997 A JP 1004997A JP H10187513 A JPH10187513 A JP H10187513A
Authority
JP
Japan
Prior art keywords
client
data
server
database
access
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
Application number
JP9010049A
Other languages
English (en)
Other versions
JP3006527B2 (ja
Inventor
Kenjiro Kurihara
謙二郎 栗原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP9010049A priority Critical patent/JP3006527B2/ja
Publication of JPH10187513A publication Critical patent/JPH10187513A/ja
Application granted granted Critical
Publication of JP3006527B2 publication Critical patent/JP3006527B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 【課題】 クライアントとサーバ間のデータ通信による
オーバーヘッドを減少させると共に、クライアント間の
機密性を保持し、セキュリティの向上を図るクライアン
ト/サーバ型のデータベースシステムを提供する。 【解決手段】 共有メモリ部30が、クライアント10
に個別に対応して設けられた複数のローカルバッファ3
2と、クライアント10からのアクセス要求を対応する
ローカルバッファ32に供給するメモリ制御部31とを
備え、ローカルバッファ32が、既にアクセスされたデ
ータを格納する検索データ保持領域34と、クライアン
ト10からのアクセス要求に応じて検索データ保持領域
34を参照し、該検索データ保持領域34に目的のデー
タが保持されている場合は、サーバ20にアクセスする
ことなく、検索データ保持領域34に保持されているデ
ータを読み出してクライアント10に送るバッファ管理
部33とを備える。

Description

【発明の詳細な説明】
【0001】
【発明が属する技術分野】本発明は、サーバに設けられ
たデータベースに対して複数のクライアントからアクセ
スするクライアント/サーバ型データベースシステムに
関し、特にデータ通信におけるオーバヘッドの削減及び
セキュリティの向上を目的としたクライアント/サーバ
型データベースシステムに関する。
【0002】
【従来の技術】データベースシステムにおいて、複数の
アプリケーションプログラムからデータベースにアクセ
スする場合、複数のアプリケーションプログラムが同一
のデータベースレコードに同時にアクセスすることを認
めると不都合が生じ場合がある。例えば、データを参照
する場合には同時に複数のアクセスを認めても問題ない
が、データを更新する場合には更新処理を実行しようと
するアプリケーションプログラムのみにアクセスを認め
る必要がある。そこで、必要に応じて、所定のアプリケ
ーションプログラムがデータベースレコードを占有でき
るようにするため、当該アプリケーションプログラムが
データベースにアクセスしている間、他のアプリケーシ
ョンプログラムからのアクセスを排除する排他制御を行
う。
【0003】従来のデータベースシステムでは、システ
ムの性能を向上させるための種々の技術が提案されてい
る。この種の従来技術としては、例えば、特開平4−1
39545号公報に開示された技術がある。同公報のデ
ータベースシステムは、複数のアプリケーンョンプログ
ラムごとに個別にバッファ(ローカルバッファ)を設
け、データベースレコードをローカルバッファにコピー
し、当該ローカルバッファ上でデータベースレコードを
更新することにより、他のアプリケーンョンプログラム
から参照不可能な排他区間を短くし、アプリケーション
プログラムの待ち合わせ回数を減少させている。
【0004】上記の従来技術によれば、アプリケーショ
ンプログラムの待ち合わせ回数を減少させることにより
システムの性能の向上を図ることができる。しかし、上
記従来技術は、独立したデータベースシステムでは有効
に機能するが、サーバに設けられたデータベースに対し
て複数のクライアントからアクセスするクライアント/
サーバ型のデータベースシステムでは必ずしも有効では
なかった。すなわち、クライアント/サーバ型のデータ
ベースシステムは、クライアントからサーバにアクセス
する度にクライアントのアプリケーンョンプログラムと
サーバの管理プログラムとの間でI/Oを伴う通信が発
生する。このため、上記従来技術により排他区間を短く
しても、クライアントとサーバ間の通信のためのオーバ
ーヘッドの発生を回避することができなかった。
【0005】ところで、クライアント/サーバ型のデー
タベースシステムにおいて、クライアントからサーバの
データベースにアクセスする場合、従来のデータベース
システムは、システムバッファを使用してデータの送受
信を行っている。そこで、クライアントに障害が発生し
た場合、障害の原因を調査するための資料として、シス
テムバッファから、当該クライアントのサーバへのアク
セス履歴等の情報を取得する必要がある。しかし、シス
テムバッファの情報は各クライアント及びサーバにおい
て共有されているため、障害の発生した当該クライアン
ト以外のクライアントのアクセス履歴等の情報が当該ク
ライアントに関する資料と一緒に出力されていた。
【0006】
【発明が解決しようとする課題】上述したように、従来
のデータベースシステムは、クライアントとサーバとの
間のデータ通信のためのオーバーヘッドを回避できず、
システム全体の性能劣化を招来するという欠点があっ
た。
【0007】また、クライアントに障害が発生した場
合、システムバッファの内容が資料として出力されるた
め、当該システムバッファを共用している他のクライア
ントのデータに関する情報まで出力されてしまい、クラ
イアントどうしの機密性を保つことができないという欠
点があった。
【0008】本発明の目的は、上記従来の欠点を解決
し、クライアント/サーバ型のデータベースシステムに
おいて、クライアントとサーバ間のデータ通信によるオ
ーバーヘッドを減少させることができるクライアント/
サーバ型のデータベースシステムを提供することにあ
る。
【0009】また、本発明の他の目的は、クライアント
間の機密性を保持し、セキュリティの向上を図ることが
できるクライアント/サーバ型のデータベースシステム
を提供することにある。
【0010】
【課題を解決するための手段】上記の目的を達成する本
発明は、データベースを備えたサーバと、サーバに設け
られたデータベースにアクセスする複数のクライアント
と、該サーバ及び複数のクライアントの全てによって共
有される共有メモリ手段とを備えるクライアント/サー
バ型データベースシステムにおいて、前記共有メモリ手
段が、前記複数のクライアントに個別に対応して設けら
れた複数のローカルバッファ手段と、前記クライアント
からのアクセス要求を該クライアントに対応する前記ロ
ーカルバッファ手段に供給するメモリ制御手段とを備
え、前記ローカルバッファ手段が、対応する前記クライ
アントによって既にアクセスされたデータを格納する検
索データ保持手段と、前記クライアントからのアクセス
要求に応じて前記検索データ保持手段を参照し、該検索
データ保持手段に目的のデータが保持されている場合
は、前記サーバにアクセスすることなく、該検索データ
保持手段に保持されているデータを読み出して前記クラ
イアントに送るバッファ管理手段とを備えることを特徴
とする。
【0011】請求項2の本発明のクライアント/サーバ
型データベースシステムは、前記バッファ管理手段が、
前記検索データ保持手段に目的のデータが保持されてい
ない場合、前記サーバにアクセスして前記データベース
から目的のデータを取得し、該取得したデータを、前記
クライアントに送ると共に、前記検索データ保持手段に
格納することを特徴とする。
【0012】請求項3の本発明のクライアント/サーバ
型データベースシステムは、所定のクライアントに障害
が発生した場合に、該障害の発生したクライアントに対
応する前記ローカルバッファ手段のみから前記障害の発
生したクライアントに関する情報を読出すことを特徴と
する。
【0013】請求項4の本発明のクライアント/サーバ
型データベースシステムは、前記ローカルバッファ手段
から読出す前記障害の発生したクライアントに関する情
報が、該クライアントのアクセス履歴を含むことを特徴
とする。
【0014】
【発明の実施の形態】以下、本発明の実施例について図
面を参照して詳細に説明する。
【0015】図1は、本発明の1実施例によるクライア
ント/サーバ型データベースシステムの構成を示すブロ
ック図である。
【0016】図示のように、本実施例のデータベースシ
ステムは、データベース30を備えたサーバ20と、ネ
ットワークを介してサーバ20に接続されたクライアン
ト10と、クライアント10とサーバ20とに共有され
る共有メモリ部30とを備える。図には、簡単のためク
ライアント10を1つのみ記載しているが、サーバ20
は複数のクライアント10からのアクセスを受け付ける
ことができる。この場合、共有メモリ部30は、サーバ
20及び複数のクライアント10の全てに共有される。
なお、図1には本実施例の特徴的な構成のみを記載し、
他の一般的な構成については記載を省略してある。
【0017】クライアント10は、サーバ20のデータ
23にアクセスするためのアクセス実行部11を備え
る。アクセス実行部11は、ユーザアプリケーション1
2により制御され、データベース操作言語(DML)で
記述されたアクセスプログラムを実行することによって
サーバ20のデータ23にアクセスする。
【0018】サーバ20は、種々のデータを格納したデ
ータベース23と、クライアント10からのアクセス要
求に基づいてデータベース23に対するデータの入出力
を制御する入出力制御部21と、入出力制御部21の制
御によりデータベース23にアクセスするデータベース
アクセス部22とを備える。
【0019】共有メモリ部30は、サーバ20とサーバ
20に接続された全てのクライアント10とに共有さ
れ、クライアント10からサーバ20へのアクセスを仲
介する。図示のように、共有メモリ部30は、共有メモ
リ10全体の動作を制御するメモリ制御部31と、各ク
ライアント10に対応して複数設けられたローカルバッ
ファ32とを備える。
【0020】ローカルバッファ32は、データベース2
3から読み出された検索データを保持する検索データ保
持領域34を備えると共に、検索データ保持領域34の
記憶内容を管理するバッファ管理部33と、検索データ
保持領域34にデータの書込みを行うデータ書込部35
とを備える。
【0021】次に、図2及び図3のフローチャートを参
照して本実施例の動作について説明する。
【0022】まず、クライアント10のアクセス実行部
11が、DMLで記述されたアクセスプログラムを実行
して所望のデータベースレコードにアクセスするための
アクセスコマンドを発行する(ステップ201)。発行
されたアクセスコマンドは、共有メモリ30に送られ、
メモリ制御部31を介して、当該アクセスコマンドを発
行したクライアントに対応するローカルバッファ32に
供給される(ステップ202)。
【0023】ローカルバッファ32のバッファ管理部3
3は、メモリ制御部31からアクセスコマンドを受け取
ると、検索データ保持領域34を参照して、当該アクセ
スコマンドによって請求されたデータを検索する(ステ
ップ203)。当該データが検索データ保持領域34に
保持されているならば、当該データを検索データ保持領
域34から読み出して(ステップ204)、当該アクセ
スコマンドを発行したクライアント10に送る(ステッ
プ205)。
【0024】これに対し、検索データ保持領域34に当
該データが存在しない場合、バッファ管理部33は、サ
ーバ20の入出力制御部21に当該アクセスコマンドを
送る(ステップ301)。
【0025】入出力制御部21は、受け取ったアクセス
コマンドにしたがって、データベースアクセス部22を
制御してデータベース23を検索し、目的のデータを読
出す(ステップ302、303)。そして、読み込んだ
データを共有メモリ20に送り、当該アクセスコマンド
の送信もとであるローカルバッファ32のバッファ管理
部33に供給する(ステップ304)。
【0026】バッファ管理部33は、メモリ制御部31
から受け取ったデータをデータ書込部35を介して検索
データ保持領域34に書き込むと共に(ステップ30
5、306)、当該アクセスコマンドを発行したクライ
アント10に当該データを送る(ステップ205)。
【0027】以上の動作を、図4に示すように、データ
ベース23にデータ“AAA”、“BBB”、…、“Z
ZZ”が格納されており、ローカルバッファ32の検索
データ保持領域34にデータ“AAA”、“ZZZ”が
格納されており、クライアント10のアクセス実行部1
1がデータ“AAA”及びデータ“BBB”の転送を要
求するアクセスコマンドを発行した場合を例として、具
体的に説明する。
【0028】ステップ201で、アクセス実行部11が
データ“AAA”を取得するアクセスコマンドを発行す
ると、ステップ203で、ローカルバッファ32のバッ
ファ管理部33が検索データ保持領域34を参照しデー
タ“AAA”を検索する。検索データ保持領域34には
データ“AAA”が保持されているので、バッファ管理
部33は、ステップ204でデータ“AAA”を読出
し、ステップ205でクライアント10に送る。
【0029】次に、ステップ201で、アクセス実行部
11がデータ“BBB”を取得するアクセスコマンドを
発行すると、ステップ203で、ローカルバッファ32
のバッファ管理部33が検索データ保持領域34を参照
しデータ“BBB”を検索する。検索データ保持領域3
4にはデータ“BBB”が保持されていないので、ステ
ップ301で、バッファ管理部33はアクセスコマンド
をサーバ20に送る。次に、ステップ302〜304
で、データ“BBB”がデータベース23から読み出さ
れ、ローカルバッファ32に送られる。そして、バッフ
ァ管理部33が、ステップ305、306でデータ“B
BB”を検索データ保持領域34に格納し、ステップ2
05でクライアント10に送る。
【0030】以上の動作により、クライアント10が、
以前にアクセスしたデータに対して再度アクセスしよう
とする場合には、共有メモリ30の記憶容量の範囲内で
当該クライアント10に対応するローカルバッファ32
に保持されているデータを取得できるため、サーバ20
のデータベース23にアクセスする必要がない。また、
目的のデータがローカルバッファ32に保持されていな
い場合、データベース23から読み出した当該データを
ローカルバッファ32に格納するため、次のアクセスの
際には当該データをローカルバッファ32から読み出し
て供給することができる。これにより、クライアント1
0とサーバ20との間の通信量を減少させ、オーバーヘ
ッドを低減することができる。
【0031】さらに、当該ローカルバッファ32は各ク
ライアント10ごとに個別に設けられているため、他の
クライアント10とアクセス要求が競合して処理を待ち
合わせるといった事態が生じない。これにより、オーバ
ーヘッドやデッドロックを回避し、データベースシステ
ム全体の性能の向上を図ることができる。
【0032】次に、クライアントの障害に対する資料の
採取について説明する。
【0033】クライアント10に障害が発生した場合、
障害の原因を調査するため、当該クライアント10のア
クセス履歴等の情報が資料として採取される。この場
合、本実施例では、障害の発生したクライアント10に
対応するローカルバッファ32から情報が読み出され、
資料として採取される。上述したように、ローカルバッ
ファ32はクライアント10ごとに個別に設けられてお
り、検索データ保持領域34に格納されているデータは
対応するクライアント10によりアクセスされたデータ
のみである。したがって、当該ローカルバッファ32か
ら読み出される資料は当該クライアント10に関する情
報のみであり、他のクライアント10のアクセス履歴等
の情報が資料と一緒に採取されることはない。
【0034】以上好ましい実施例をあげて本発明を説明
したが、本発明は必ずしも上記実施例に限定されるもの
ではない。
【0035】
【発明の効果】以上説明したように、本発明のデータベ
ースシステムによれば、クライアントとサーバとの間の
通信によるオーバヘッドを削減し、かつ複数のクライア
ントによるアクセス要求の競合を回避することにより、
システム全体の性能の向上を図ることができるという効
果がある。
【0036】また、クライアントに障害が発生し、障害
の原因を調査するためにローカルバッファの内容を資料
として取得する場合に、障害を発生した当該クライアン
ト以外のクライアントに関する情報は読み出されないた
め、クライアント間の機密性が保持され、セキュリティ
の向上を図ることができるという効果がある。
【図面の簡単な説明】
【図1】 本発明の1実施例によるデータベースシステ
ムの構成を示すブロック図である。
【図2】 本実施例の動作を示すフローチャートであ
り、クライアントから共有メモリ部にアクセスした場合
の動作を示す。
【図3】 本実施例の動作を示すフローチャートであ
り、サーバの動作を示す。
【図4】 本実施例の具体的な動作例を説明するための
概略図。
【符号の説明】
10 クライアント 11 アクセス実行部 12 ユーザアプリケーション 20 サーバ 21 入出力制御部 22 データベースアクセス部 23 データベース 30 共有メモリ部 31 メモリ制御部 32 ローカルバッファ 33 バッファ管理部 34 検索データ保持領域 35 データ書込部

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 データベースを備えたサーバと、サーバ
    に設けられたデータベースにアクセスする複数のクライ
    アントと、該サーバ及び複数のクライアントの全てによ
    って共有される共有メモリ手段とを備えるクライアント
    /サーバ型のデータベースシステムにおいて、 前記共有メモリ手段が、 前記複数のクライアントに個別に対応して設けられた複
    数のローカルバッファ手段と、 前記クライアントからのアクセス要求を該クライアント
    に対応する前記ローカルバッファ手段に供給するメモリ
    制御手段とを備え、 前記ローカルバッファ手段が、 対応する前記クライアントによって既にアクセスされた
    データを格納する検索データ保持手段と、 前記クライアントからのアクセス要求に応じて前記検索
    データ保持手段を参照し、該検索データ保持手段に目的
    のデータが保持されている場合は、前記サーバにアクセ
    スすることなく、該検索データ保持手段に保持されてい
    るデータを読み出して前記クライアントに送るバッファ
    管理手段とを備えることを特徴とするクライアント/サ
    ーバ型データベースシステム。
  2. 【請求項2】 前記バッファ管理手段が、前記検索デー
    タ保持手段に目的のデータが保持されていない場合、前
    記サーバにアクセスして前記データベースから目的のデ
    ータを取得し、該取得したデータを、前記クライアント
    に送ると共に、前記検索データ保持手段に格納すること
    を特徴とする請求項1に記載のクライアント/サーバ型
    データベースシステム。
  3. 【請求項3】 所定のクライアントに障害が発生した場
    合に、該障害の発生したクライアントに対応する前記ロ
    ーカルバッファ手段のみから前記障害の発生したクライ
    アントに関する情報を読出すことを特徴とする請求項1
    または請求項2に記載のクライアント/サーバ型データ
    ベースシステム。
  4. 【請求項4】 前記ローカルバッファ手段から読出す前
    記障害の発生したクライアントに関する情報が、該クラ
    イアントのアクセス履歴を含むことを特徴とする請求項
    3に記載のクライアント/サーバ型データベースシステ
    ム。
JP9010049A 1996-12-27 1996-12-27 クライアント/サーバ型データベースシステム Expired - Lifetime JP3006527B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9010049A JP3006527B2 (ja) 1996-12-27 1996-12-27 クライアント/サーバ型データベースシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9010049A JP3006527B2 (ja) 1996-12-27 1996-12-27 クライアント/サーバ型データベースシステム

Publications (2)

Publication Number Publication Date
JPH10187513A true JPH10187513A (ja) 1998-07-21
JP3006527B2 JP3006527B2 (ja) 2000-02-07

Family

ID=11739553

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9010049A Expired - Lifetime JP3006527B2 (ja) 1996-12-27 1996-12-27 クライアント/サーバ型データベースシステム

Country Status (1)

Country Link
JP (1) JP3006527B2 (ja)

Also Published As

Publication number Publication date
JP3006527B2 (ja) 2000-02-07

Similar Documents

Publication Publication Date Title
JP2967521B2 (ja) データ処理システムのクライエント装置のアクセス制御システム
JP3066693B2 (ja) 分散データ処理システム
US7480654B2 (en) Achieving cache consistency while allowing concurrent changes to metadata
US6324581B1 (en) File server system using file system storage, data movers, and an exchange of meta data among data movers for file locking and direct access to shared file systems
US10831612B2 (en) Primary node-standby node data transmission method, control node, and database system
JP3503957B2 (ja) 遠隔データベースの制御方法及び装置
JPH0962558A (ja) データベース管理システム及び方法
US5715447A (en) Method of and an apparatus for shortening a lock period of a shared buffer
JP2781092B2 (ja) システム間排他制御方式
JP2006172067A (ja) データベース管理方法、システム及びプログラム
CN114816682A (zh) 分布式事务处理方法、系统及装置
JP3006527B2 (ja) クライアント/サーバ型データベースシステム
EP0551528B1 (en) Method and apparatus for reducing lock period of shared buffer
JP2746189B2 (ja) ファイルアクセス制御システム
JP2001318905A (ja) ディスク共有型分散サーバシステム
JPS63311450A (ja) ファイルアクセス排他制御方式
JPH07152651A (ja) 情報処理方法及び装置
US20250021256A1 (en) Hierarchical File Block Variant Tracking
JP2595332B2 (ja) ネットワーク・システムのデータ転送方式
JPH1055300A (ja) ファイルアクセス方法
JPS63311555A (ja) マルチプロセッサシステムにおける共有デ−タ制御方式
JP2523499B2 (ja) アクセス制御方法
JP2742246B2 (ja) ロックリクエスト制御機構
JPH02247748A (ja) マルチプロセッサによるデータベース処理方式
JPH0431936A (ja) 分散ファイルシステムのファイル管理方式