JPH0962570A - データベース管理装置及び方法 - Google Patents

データベース管理装置及び方法

Info

Publication number
JPH0962570A
JPH0962570A JP7243671A JP24367195A JPH0962570A JP H0962570 A JPH0962570 A JP H0962570A JP 7243671 A JP7243671 A JP 7243671A JP 24367195 A JP24367195 A JP 24367195A JP H0962570 A JPH0962570 A JP H0962570A
Authority
JP
Japan
Prior art keywords
page
cache
state
database
held
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
JP7243671A
Other languages
English (en)
Other versions
JP2964926B2 (ja
Inventor
Miki Watanabe
美樹 渡辺
Hiroshi Hayata
宏 早田
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
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 Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP7243671A priority Critical patent/JP2964926B2/ja
Priority to US08/632,069 priority patent/US5829022A/en
Publication of JPH0962570A publication Critical patent/JPH0962570A/ja
Application granted granted Critical
Publication of JP2964926B2 publication Critical patent/JP2964926B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/289Object oriented databases

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 【課題】 キャッシュのヒット率を高いレベルに維持す
ることができる別領域変換形式において、キャッシュ状
態の管理を容易化して処理時間を低減させ、延いては、
応用プログラムの実行効率を向上させる。 【解決手段】 オブジェクトへのアクセス要求がなされ
ると、当該オブジェクトがオブジェクトキャッシュ14
に保持されていない場合には、当該オブジェクトを含む
ページをデータベース10から読み出してページキャッ
シュ12に保持させ、当該ページからオブジェクトを読
み出してオブジェクトキャッシュ14に保持させる。ペ
ージ状態保持手段15にページキャッシュに保持してい
るページの状態を示すページキャッシュ状態を保持させ
るとともに、オブジェクト状態保持手段16にオブジェ
クトキャッシュに保持しているオブジェクトの状態を示
すオブジェクトキャッシュ状態を保持させ、これらを関
連付けることによって、ページキャッシュ状態と対応す
るオブジェクトキャッシュ状態とが一致しない場合に
は、状態同期手段19がこれら状態を一致させるための
同期処理を行う。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、オブジェクト指向
データベースにおいてキャッシュ管理を行う装置及び方
法に関し、特に、キャッシュに保持されたページ及びオ
ブジェクトの状態を管理する技術に関する。
【0002】
【従来の技術】サーバ・クライアント型のオブジェクト
指向データベース管理システムでは、サーバ・クライア
ント間のデータの転送をページ単位で行うページ・サー
バ方式が広く用いられており、その構成及び方法が”Bu
ilding an Object-Oriented Database System ( Morgan
Kaufman,1992. )”の第411頁〜第446頁の”Thre
e Workstation-Server Architectures”に開示されてい
る。ここに開示されている方法では、サーバからクライ
アント(ワークステーション)へページを転送する手順
として、クライアントがページに適切なロックをかける
と、サーバが、必要に応じてディスク(データベースを
構成する二次記憶装置)からページを読み出して、ペー
ジをクライアントに転送する。更に、或るオブジェクト
の内容を更新する際には、そのオブジェクトが存在する
ページをサーバからクライアントへ再び転送しなければ
ならないことも開示されている。
【0003】ここで、クライアントに転送されたページ
内のオブジェクトの内容は記憶装置での格納に適した表
現形式(以下、格納形式)となっていることから、この
オブジェクトをクライアントの応用プログラムで処理す
るためには、当該応用プログラムによる処理に利用でき
る表現形式(以下、計算可能形式)に変換する必要があ
る。
【0004】この変換方法として、”IEEE Transaction
s on Software Engineering ( Vol.18,No.8,1992 )”
の”Working with Persistent Object : To Swizzle or
Not to Swizzle (J. Eliot B. Moss)”には、2つの方
法が開示されている。その1つは、クライアントに読み
込まれた格納形式のページを保持するバッファ領域(以
下、ページキャッシュ)の中で、ページに含まれている
オブジェクトを計算可能形式に変換する方法(以下、そ
の場変換方式)であり、他の1つは、ページキャッシュ
とは別の領域に計算可能形式のオブジェクトを保持する
バッファ領域(以下、オブジェクトキャッシュ)を設
け、ページキャッシュに保持された格納形式のページか
ら、オブジェクトをオブジェクトキャッシュへ転送する
に際して、当該オブジェクトを計算可能形式に変換して
オブジェクトキャッシュに保持させるる方法(以下、別
領域変換方式)である。
【0005】また、クライアントの応用プログラムがオ
ブジェクトを利用するに際しては、同一のオブジェクト
についての内容の整合性を保証するために、計算可能形
式のオブジェクトが格納形式のページに含まれている対
応するオブジェクトと同一の内容であるかを管理する必
要がある。このような管理を実現する方法として、特開
平5−225034号公報には、オブジェクトキャッシ
ュに保持されたオブジェクトの状態を管理し、オブジェ
クトの状態が有効である場合と、無効である場合とで処
理を異ならせる方法が開示されている。
【0006】すなわち、この方法では、オブジェクトキ
ャッシュに保持されたオブジェクトを、オブジェクトの
データ部分に該当する揮発オブジェクトの領域と、当該
オブジェクトの管理情報部分に該当するハンドラの領域
から構成し、ハンドラ内に揮発オブジェクトの有効性を
示す領域を設けるようにしている。そして、アクセスの
ためにオブジェクトにロックをかけた際に、ハンドラ内
の有効性を示す領域を検査して、有効であると判定され
た場合には揮発オブジェクト内のデータをそのまま応用
プログラムで利用し、有効でないと判定された場合に
は、オブジェクトを二次記憶装置又はページキャッシュ
から読み直して、オブジェクトの内容を整合させた後に
応用プログラムで利用するようにしている。
【0007】
【発明が解決しようとする課題】上記したその場変換方
式と別領域変換方式とを比較すると、その場変換方式で
はキャッシュがあふれてページキャッシュ内のページを
キャッシュから追い出すと、そのページに存在する全て
のオブジェクトが追い出されることになるため、キャッ
シュのヒット率が著しく低下して、応用プログラムの実
行効率を低下させるという問題がある。これに対して、
ページキャッシュとオブジェクトキャッシュとを別々の
領域で独立に管理する別領域変換方式では、ページキャ
ッシュ内のページをキャッシュから追い出した場合に、
そのページに存在するオブジェクトの内でもオブジェク
トキャッシュに保持されているものはそのままオブジェ
クトキャッシュに保持されるため、キャッシュのヒット
率が著しく低下してしまうという事態は防止できる。
【0008】しかしながら、別領域変換方式は、ページ
キャッシュとオブジェクトキャッシュとに別々に格納形
式のページと計算可能形式のオブジェクトとを保持する
ようにしているため、これらキャッシュの状態(すなわ
ち、オブジェクト及びページの内容の整合性)を管理し
なければ、応用プログラムによるオブジェクトの支障の
ない利用を実現することができない。このため、ページ
キャッシュの状態とオブジェクトキャッシュの状態とを
管理しなければならないが、これらキャッシュの状態を
個別に管理しようとすると、両者の状態の組み合わせの
数の状態を管理しなければならなくなり、管理の処理が
繁雑になるとともに管理にかかる処理時間が増加して、
この点から、応用プログラムの実行効率を低下させてし
まうという問題があった。
【0009】本発明は上記従来の事情に鑑みなされたも
ので、キャッシュのヒット率を高いレベルに維持するこ
とができる別領域変換形式において、キャッシュ状態の
管理を容易化して処理時間を低減させ、延いては、応用
プログラムの実行効率を向上させることを目的とする。
【0010】
【課題を解決するための手段】応用プログラムで利用す
る等のために、オブジェクトへのアクセス要求がなされ
ると、当該オブジェクトがオブジェクトキャッシュに保
持されていない場合には、当該オブジェクトを含むペー
ジをデータベースから読み出してページキャッシュに保
持させるとともに、当該ページから前記アクセス要求を
受けたオブジェクトを読み出してオブジェクトキャッシ
ュに保持させる。また、ページ状態保持手段にページキ
ャッシュに保持しているページがデータベース上の対応
するページに一致しているかを示すページキャッシュ状
態を保持させるとともに、オブジェクト状態保持手段に
オブジェクトキャッシュに保持しているオブジェクトが
データベース上の対応するオブジェクトに一致している
かを示すオブジェクトキャッシュ状態を保持させる。
【0011】そして、ページ状態保持手段に保持されて
いるページキャッシュ状態と該ページから読み出された
オブジェクトについてオブジェクト状態保持手段に保持
されているオブジェクトキャッシュ状態とを関連付けて
管理し、ページキャッシュ状態と対応するオブジェクト
キャッシュ状態とが一致しない場合には、状態同期手段
がこれら状態を一致させるための同期処理を行う。この
同期処理は、例えばオブジェクトへのアクセス要求がな
される毎に行われ、また、処理の内容としては、データ
ベース判断手段によってアクセス要求を受けたオブジェ
クトを含むページキャッシュに保持されるページと、該
ページに対応するデータベース上のページとが一致して
いるか否かを判断し、一致していない場合には、状態更
新手段によって、ページ状態保持手段に保持されている
ページキャッシュ状態をデータベースと一致していない
状態である無効状態に設定し、更に、当該ページから読
み出されてオブジェクトキャッシュに保持されているオ
ブジェクトに対応してオブジェクト状態保持手段に保持
されているオブジェクトキャッシュ状態をデータベース
上の対応するオブジェクトと一致していない状態である
無効状態に設定する。
【0012】なお、ページ状態保持手段はページキャッ
シュ状態として、ページキャッシュに保持されるページ
と該ページに対応するデータベースに記憶されているペ
ージとが一致していることを示す有効状態(VALI
D)、一致していないことを示す無効状態(INVAL
ID)との他に、該ページに含まれるオブジェクトに対
してアクセス要求を受けていないことを示すロックなし
状態(UNLOCKED)も含んでおり、また、オブジ
ェクト状態保持手段はオブジェクトキャッシュ状態とし
て、オブジェクトキャッシュに保持されるオブジェクト
と該オブジェクトに対応する前記データベース上のオブ
ジェクトとが一致していることを示す有効状態(VAL
ID)と、一致していることを保証しないことを示す無
効状態(INVALID)との他に、オブジェクトキャ
ッシュ上にオブジェクトを読み込む領域が確保されたこ
とを示す未初期化状態(UNINITIALIZED)
を含んでおり、これら各状態はページキャッシュ状態と
オブジェクトキャッシュ状態とを管理するに際して設定
される。
【0013】また、本発明は、応用プログラムで利用す
るためにオブジェクトへアクセスする場合のみならず、
データベースから所望のオブジェクトを検索してディス
プレイ等に出力する場合にも応用させる。すなわち、入
力手段から入力された検索要求をアクセス要求として、
上記と同様な処理により、ページ及びオブジェクトをペ
ージキャッシュ及びオブジェクトキャッシュに保持させ
るとともに、これらページキャッシュ状態及びオブジェ
クトキャッシュ状態をページ状態保持手段及びオブジェ
クト状態保持手段に保持さる。そして、状態同期手段に
より同期処理を行って、検索要求に対応するオブジェク
トに対してオブジェクト状態保持手段に保持されている
オブジェクトキャッシュ状態をデータベース内の対応す
るオブジェクトと一致している状態にした後に、検索結
果出力手段がオブジェクトキャッシュから検索要求に対
応するオブジェクトを取り出して検索結果として出力す
る。
【0014】また、本発明は、単一の情報処理装置によ
るオブジェクト指向データベース管理システムとして構
成するばかりか、サーバ・クライアント型のデータベー
ス管理システムとして構成することができる。この場合
には、サーバ側には、オブジェクトを記憶するデータベ
ースと、データベースに対するオブジェクトのアクセス
要求を受ける第1の受信手段と、データベースから該ア
クセス要求に対応するオブジェクトを含むページを読み
出すデータベース読み出し手段と、読み出されたページ
を送信する第1の送信手段とを備え、クライアント側に
は、データベースに対するオブジェクトのアクセス要求
をサーバに対して送信する第2の送信手段と、アクセス
要求に応じてサーバから返送されたページを受信する第
2の受信手段と、サーバから受信したページを保持する
ページキャッシュと、アクセス要求に対応するオブジェ
クトをページキャッシュから読み出すページキャッシュ
読み出し手段と、ページキャッシュから読み出されたオ
ブジェクトを保持するオブジェクトキャッシュと、ペー
ジキャッシュに保持されるページと該ページに対応する
データベース上のページとが一致しているか否かを示す
ページキャッシュ状態を保持するページ状態保持手段
と、オブジェクトキャッシュに保持されるオブジェクト
と該オブジェクトに対応するデータベース上のオブジェ
クトとが一致しているか否かを示すオブジェクトキャッ
シュ状態を保持するオブジェクト状態保持手段と、ペー
ジキャッシュに保持されるページに対応してページ状態
保持手段に保持されているページキャッシュ状態と該ペ
ージから読み出されてオブジェクトキャッシュに保持さ
れるオブジェクトに対応してオブジェクト状態保持手段
に保持されているオブジェクトキャッシュ状態とを一致
させるための同期処理を行う状態同期手段とを備えて構
成する。
【0015】すなわち、本発明では、ページキャッシュ
内のページとオブジェクトキャッシュ内のオブジェクト
の関連付けを利用して、例えばオブジェクトにアクセス
するロックの時点で、これら両状態の同期をとるように
し、これによって、キャッシュの管理の際に考慮しなけ
ればならない状態の数を限定して、キャッシュの管理処
理を効率化する。また、これら状態の同期をとるまで
は、ページキャッシュの保持内容とオブジェクトキャッ
シュの保持内容をそれぞれ独立に管理でき、これによっ
て、オブジェクトをオブジェクトキャッシュ内に残した
まま、そのオブジェクトの存在するページをページキャ
ッシュから追い出すことができ、キャッシュの利用効率
を高めて高いヒット率を達成できる。
【0016】
【発明の実施の形態】まず、本発明の一実施例に係るデ
ータベース管理装置の構成を図1を参照して説明する。
データベース管理装置は、幾つかのオブジェクト含んだ
ページを記憶するデータベース10と、データベース1
0からアクセス要求に対応するオブジェクトを含むペー
ジを読み出すデータベース読み出し手段11と、読み出
されたページを保持するページキャッシュ12と、アク
セス要求に対応するオブジェクトをページキャッシュ1
2から読み出すページキャッシュ読み出し手段13と、
読み出されたオブジェクトを保持するオブジェクトキャ
ッシュ14と、ページキャッシュ12に保持されるペー
ジのページキャッシュ状態を保持するページ状態保持手
段15と、オブジェクトキャッシュ14に保持されるオ
ブジェクトのオブジェクトキャッシュ状態を保持するオ
ブジェクト状態保持手段16と、ページ状態保持手段1
5に保持されているページキャッシュ状態とオブジェク
ト状態保持手段16に保持されているオブジェクトキャ
ッシュ状態とを一致させるための同期処理を行う状態同
期手段17と、アクセス要求を入力するための入力手段
20と、アクセス結果をディスプレイ等に表示出力する
ための検索結果出力手段21と、を備えている。
【0017】データベース10は磁気ディスク装置等の
読み出し書き込み自在な2次記憶装置から構成されてお
り、幾つかのオブジェクトを含んだ固定長データである
ページを多数格納している。ページキャッシュ12及び
オブジェクトキャッシュ14はRAM等の読出し書き込
み自在な内部記憶手段から構成されており、ページキャ
ッシュ12は格納形式のページを格納し、オブジェクト
キャッシュ14は計算可能形式に変換されたオブジェク
トを格納する。ページ状態保持手段15及びオブジェク
ト状態保持手段16もRAM等の読出し書き込み自在な
内部記憶手段から構成されており、ページキャッシュ1
2に保持されたページ及びオブジェクトキャッシュ14
に保持されたオブジェクトのページキャッシュ状態及び
オブジェクトキャッシュ状態をそれぞれ格納する。な
お、これら手段12、14、15、16は、例えば、同
一の内部記憶手段に領域を分けて構成する、或いは、そ
れぞれ別個の内部記憶手段に構成する等、任意の形態で
構成することができる。
【0018】状態同期手段17は、オブジェクトへのア
クセス要求を受けたときに、該アクセス要求を受けたオ
ブジェクトを含むページキャッシュ12に保持されるペ
ージに対応してページ状態保持手段15に保持されてい
るページキャッシュ状態と、該ページから読み出されて
オブジェクトキャッシュ14に保持されているオブジェ
クトに対応してオブジェクト状態保持手段15に保持さ
れているオブジェクトキャッシュ状態とを一致させるも
のであり、この同期処理のために、データベース判断手
段18と状態更新手段19とを有している。
【0019】データベース判断手段18は、ページキャ
ッシュ12に保持されているアクセス要求を受けたオブ
ジェクトを含むページの内容と、該ページに対応するデ
ータベース10上のページの内容とが一致しているか否
かを判断する。また、状態更新手段19は、データベー
ス判断手段18により一致していないと判断された場合
に、ページ状態保持手段15に保持される前記ページの
ページキャッシュ状態をデータベース10上のページの
内容とと一致していない状態である無効状態(INVA
LID)に設定し、更に、当該ページから読み出されて
オブジェクトキャッシュ14に保持されているオブジェ
クトに対応してオブジェクト状態保持手段16に保持さ
れているオブジェクトキャッシュ状態をデータベース1
0上の対応するオブジェクトの内容と一致していない状
態である無効状態(INVALID)に設定する。
【0020】なお、ページ状態保持手段15にはページ
キャッシュ状態として、一致していないことを示す無効
状態(INVALID)の他に、一致していることを示
す有効状態(VALID)、及び、ページに含まれるオ
ブジェクトに対してアクセス要求を受けていないことを
示すロックなし状態(UNLOCKED)も設定され、
また、オブジェクト状態保持手段16にはオブジェクト
キャッシュ状態として、一致していることを保証しない
ことを示す無効状態(INVALID)の他に、一致し
ていることを示す有効状態(VALID)、及び、オブ
ジェクトキャッシュ14上にオブジェクトを読み込む領
域が確保されたことを示す未初期化状態(UNINIT
IALIZED)が設定される。このため、状態更新手
段19は、データベース判断手段18による判断結果に
基づいて、これら状態の更新処理や同期処理も行い、ペ
ージキャッシュ状態とオブジェクトキャッシュ状態とを
管理するための処理を行う。
【0021】上記した入力手段20は、ユーザがアクセ
ス要求を入力するキーボードやマウス等ばかりか、オブ
ジェクトを利用する応用プログラムからのアクセス要求
を入力するインタフェースも構成している。検索結果出
力手段21は、例えばユーザからアクセス要求として検
索要求が入力された際に利用され、状態同期手段17に
より同期処理が行われて、検索要求に対応するオブジェ
クトに対してオブジェクト状態保持手段16に保持され
ているオブジェクトキャッシュ状態がデータベース10
内の対応するオブジェクトの内容と一致している状態に
なったことに基づいて、オブジェクトキャッシュ14か
ら検索要求に対応するオブジェクトを取り出して検索結
果として出力する。
【0022】図2には、上記したデータベース管理装置
をサーバ・クライアント型のシステムとして構成した例
を示してあり、以下では、サーバ・クライアント型のシ
ステムとして構成したデータベース管理装置を例にとっ
て説明する。なお、図1に基づいて説明した部分を同一
部分には同一符号を付してある。データベース10への
直接的なアクセスを行うサーバSには、データベース読
出し手段11の他に、クライアントCとの間でネットワ
ークを介してページの送受信を行う通信手段25が備え
られている。
【0023】また、オブジェクトに対して直接的なアク
セスを行うクライアントCには、ページキャッシュ1
2、ページキャッシュ読み出し手段13、オブジェクト
キャッシュ14、ページ状態保持手段15、オブジェク
ト状態保持手段16、状態同期手段17、入力手段2
0、及び、検索結果出力手段21の他に、サーバSとの
間でネットワークを介してページの送受信を行う通信手
段26が備えられている。このようなサーバ・クライア
ント型の構成では、クライアントCがデータベース10
内に格納されている或るオブジェクトを利用する際に
は、そのオブジェクトが含まれているページの読み出し
をネットワークを介してサーバSに依頼する。サーバS
はクライアントCに要求されたページをデータベース1
0から読み出してその内容をクライアントCに転送する
こととなる。
【0024】上記したクライアントCの構成を大まかな
機能要素に分けると図3に示すような構成として捉える
ことができ、オブジェクトキャッシュ14に保持された
計算可能形式のオブジェクトを利用(参照)する応用プ
ログラム30、オブジェクトキャッシュ14の保持内容
を管理するオブジェクト管理部31、ページキャッシュ
12に保持保持された格納形式のページを管理するペー
ジキャッシュ管理部32、及び、サーバSに対する命令
やサーバSからの通知を送受信する通信制御部33を有
している。
【0025】オブジェクトキャッシュ管理部31はオブ
ジェクト状態保持手段16及び状態同期手段17を含ん
でおり、応用プログラム30からのアクセス要求(命
令)に基づいて、ページキャッシュ12の保持内容を参
照し、必要があればページキャッシュ管理部32へ同期
処理の命令を出して、オブジェクトキャッシュ14に保
持されているオブジェクトの状態を管理する。ページキ
ャッシュ管理部32はページ状態保持手段15及び状態
同期手段17を含んでおり、オブジェクトキャッシュ管
理部31から命令に基づいてサーバSへのページの読出
し命令等を送信する。なお、このサーバSへの命令及び
サーバSからの通知は、通信手段26を含む通信制御部
33を介して送受信される。
【0026】また、ページキャッシュ12とオブジェク
トキャッシュ14との格納内容は、図4に示すような相
互関係を有している。オブジェクトキャッシュ14内に
は計算可能形式に変換されたオブジェクト(1〜3)が
記憶されており、これらオブジェクトのクラス定義(1
〜2)もオブジェクトとして計算可能形式で記憶されて
いる。オブジェクトはそれぞれ1個のクラス定義を参照
しており、図示の例では、オブジェクト1とオブジェク
ト2はクラス定義1を参照し、オブジェクト3はクラス
定義2を参照している。なお、オブジェクトキャッシュ
14内のオブジェクト及びクラス定義は、オブジェクト
キャッシュ管理部31によって管理され、キャッシュが
一杯になる等のオブジェクトキャッシュ14の利用状況
に応じてオブジェクトキャッシュ14から追い出され
る。
【0027】ページキャッシュ12内にはサーバSから
読み込まれたページの内容(1〜n)とそのページ管理
情報が格納形式で記憶されており、各ページの管理情報
は対応するページがページキャッシュ12内に存在する
場合には当該ページのキャッシュ12内での場所を記憶
している。上記と同様にページキャッシュ12の利用状
況に応じて、ページの内容はページキャッシュ管理部3
2の管理の下でページキャッシュ12から追い出される
が、ページの内容が追い出されても、その管理情報のみ
はページキャッシュ12内に存在する。なお、オブジェ
クトキャッシュ14内のオブジェクトとそれらのオブジ
ェクトが入っていたページの管理情報の間には相互に参
照が設定され、オブジェクトとページとの状態の同期を
図る場合に利用される。
【0028】図5には、オブジェクトキャッシュ12内
の計算可能形式のオブジェクトとページキャッシュ14
内の管理情報の内容とを、オブジェクト1及びページ1
を例にとって詳細に示してある。オブジェクト1の領域
には、そのオブジェクトの形を表すクラス定義への参照
(識別子)、当該オブジェクトを含んでいるページへの
参照(識別番号)、そのページの管理情報へのアドレ
ス、そのオブジェクトのページ内での格納位置(オフセ
ット)、オブジェクトキャッシュ14の状態、及び、計
算可能形式に変換されたオブジェクトの各変数の値(オ
ブジェクトのデータ内容)が記憶されている。
【0029】オブジェクトのクラス定義1の領域には、
オブジェクト1と同様にヘッダ情報として、クラス定義
への参照(識別子)、ページ管理情報へのアドレス、オ
ブジェクトのページ内での格納位置(オフセット)、オ
ブジェクトキャッシュ14の状態が記憶され、更に、そ
のクラス定義の属性の型(クラス定義のデータ内容)が
記憶されている。ページ1の管理情報の領域には、その
ページのデータベース10における格納場所を示すペー
ジ番号、ページキャッシュ12にそのページが存在する
場合には当該ページの内容の格納場所(キャッシュの場
所)、ページキャッシュ12の状態が記憶され、更に、
そのページから読み出されたオブジェクトキャッシュ1
4内のオブジェクトへの参照(ポインタ)が記憶されて
いる。
【0030】なお、ページキャッシュ12に格納された
ページの領域には、幾つかの格納形式のオブジェクトが
記憶されている。上記したオブジェクトやクラス定義の
オブジェクトキャッシュ14の状態を保持する領域がオ
ブジェクト状態保持手段16を構成し、ページ管理情報
のページキャッシュ12の状態を保持する領域がページ
状態保持手段15を構成している。
【0031】オブジェクト及びクラス定義に含まれるオ
ブジェクトキャッシュの状態は、上記したように、無効
(INVALID)、有効(VALID)、未初期化
(UNINITIALIZED)の各状態に、図6に示
すようにその時の状況に応じて遷移する。すなわち、ま
ず、応用プログラム30等からアクセスされて、オブジ
ェクトの領域がオブジェクトキャッシュ14内に確保さ
れると、オブジェクトキャッシュの状態は”UNINI
TIALIZED”に初期化される。なお、この状態で
はオブジェクトの変数の領域は読み込まれていない。
【0032】そして、オブジェクトキャッシュ14内の
オブジェクトにロックをかけると、そのオブジェクトが
入っているページにロックがかかり、オブジェクトキャ
ッシュ14内のオブジェクトの変数値の領域に計算可能
形式に変換された値がページキャッシュ12から読み込
まれ、ページキャッシュ12に保持されているページの
オブジェクトとオブジェクトキャッシュ14に保持され
たオブジェクトの内容が一致することから、オブジェク
トキャッシュの状態は”VALID”に遷移する。な
お、図7に基づいて後述するように、ページキャッシュ
12の状態はロックをかけられた時点で”VALID”
に維持されるため、オブジェクトキャッシュの状態”V
ALID”は、オブジェクトキャッシュ14に保持され
たオブジェクトとデータベース10に格納されているペ
ージの対応するオブジェクトの内容が一致していること
を示している。
【0033】そして、”VALID”の状態でトランザ
クションが終了する等して該当するページのロックがは
ずされても、該当するページが他のクライアント等によ
って更新されなければ、次にこのオブジェクトにロック
をかけるまで”VALID”の状態に留まり、ロックを
かけてもその状態は変わらず、オブジェクトキャッシュ
14内の変数値もそのまま応用プログラム30で利用さ
れる。一方、該当するページが他のクライアント等によ
り更新された場合には、このオブジェクトへのロックに
基づいた対応するページへのロック操作により、ページ
キャッシュ12内の格納形式のページがデータベース1
0から読み直され、当該ページから読み出されたオブジ
ェクトを保持しているオブジェクトキャッシュ14の状
態が”INVALID”に遷移する。
【0034】また、オブジェクトに対するロックにより
対応するページの更新が検知された場合には、オブジェ
クトキャッシュの状態が”INVALID”に遷移され
ているが、この状態でオブジェクトにロックをかける
と、ページキャッシュ12内のの格納形式のオブジェク
トが読み直されてオブジェクトキャッシュ14に格納し
直され、オブジェクトキャッシュの状態が”VALI
D”に遷移する。なお、いずれの状態からでも、オブジ
ェクトキャッシュ14が一杯になる等してオブジェクト
キャッシュ14の空き領域を確保する必要が生じると、
不要なオブジェクトはオブジェクトキャッシュ14から
追い出され、その領域が開放される。
【0035】また、ページ管理情報に含まれるページキ
ャッシュの状態は、上記したように、無効(INVAL
ID)、有効(VALID)、ロックなし(UNLOC
KED)の各状態に、図7に示すようにその時の状況に
応じて遷移する。すなわち、まず、ページの領域がペー
ジキャッシュ12内に確保されると、ページキャッシュ
の状態は”UNLOCKED”に初期化される。
【0036】そして、この”UNLOCKED”の状態
では、サーバSにロックの要求を出すと、そのページの
ページキャッシュ12内の内容がサーバSが管理するデ
ータベース10に記憶されている対応するページの内容
と同じであれば”lockon valid cach
e”が、変更されて同じでなければ”lock on
invalid cache”がサーバSからクライア
ントCに通知される。この通知によってページキャッシ
ュ12内の該当するページの状態は”VALID”又
は”INVALID”に遷移する。なお、ページキャッ
シュの状態が”INVALID”に遷移する際には、そ
のページを参照しているオブジェクトキャッシュの状態
も”INVALID”に遷移するが、ページキャッシュ
12のページはロック操作”lock on inva
lid cache”に際してデータベース10から読
み直されて、ページキャッシュの状態は”VALID”
に遷移する。
【0037】すなわち、”INVALID”の状態はペ
ージキャッシュ12にページが存在しないか、存在して
もその内容がデータベース10に格納されているものと
異なることを意味しており、ロックの処理に伴って或い
は他からの要求により、サーバSによってデータベース
10から最新の当該ページの内容がページキャッシュ1
2に読み込まれる。一方、”VALID”の状態はペー
ジキャッシュ12の内容がデータベース10に格納され
ているものと同じであることを意味しており、ページキ
ャッシュの状態が”VALID”のときには、ロック操
作に伴って実施するキャッシュの更新処理は行わずに終
了する。
【0038】上記構成のデータベース管理装置によれ
ば、オブジェクトキャッシュ管理部31とページキャッ
シュ管理部32との協働によって、オブジェクトキャッ
シュの状態とページキャッシュの状態とを上記のように
遷移させる処理がなされ、この処理において、オブジェ
クトの状態とこれに対応するページキャッシュの状態と
を一致させる同期処理がなされる。次に、図8を参照し
てオブジェクトキャッシュ管理部31におけるオブジェ
クトの参照処理を、図9を参照してページキャッシュ管
理部32におけるページの参照処理を、図10を参照し
てオブジェクトキャッシュ管理部31におけるオブジェ
クトにロックをかけた際の処理を、図11を参照してペ
ージキャッシュ管理部32におけるページにロックをか
けた際の処理を、図12を参照してサーバSからページ
を読み出す際の処理を、図13を参照してページ領域の
開放を行う際の処理を、図14を参照してオブジェクト
をページに書き戻す際の処理を、図15を参照してオブ
ジェクトをキャッシュから追い出す際の処理を、それぞ
れ説明する。
【0039】オブジェクトキャッシュ管理部31におけ
るオブジェクトの参照の処理(図8)に際しては、応用
プログラム30からのアクセス要求(命令)により起動
される。そして、まず、目的のオブジェクトがオブジェ
クトキャッシュ14内に存在するか否かが判定され(ス
テップS1)、オブジェクトが存在する場合にはオブジ
ェクトキャッシュ管理部31における処理を特に行わず
に終了し、応用プログラム30が当該オブジェクトを利
用することとなる。なお、この判定は、例えば特許平5
−225034号公報に開示されているように、オブジ
ェクトキャッシュに保持したオブジェクトをの識別情報
をオブジェクトテーブルに保持しておき、このオブジェ
クトテーブルを検索することにより実施できる。
【0040】一方、目的のオブジェクトが存在しない場
合には、当該オブジェクトを含んでいるページを参照す
る処理がページ番号を引数として起動され(ステップS
2)、オブジェクトキャッシュ14内に当該オブジェク
トを保持するための領域を確保して(ステップS3)、
オブジェクトキャッシュの状態を”UNINITIAL
IZED”にする等の初期化を行って処理を終了する
(ステップS4)。
【0041】上記のページを参照する処理(ステップS
2)はページキャッシュ管理部32におけるページ参照
処理で行われ(図9)、まず、引数として渡されたペー
ジ番号に該当するページ管理情報をページキャッシュ1
2の中から検索することにより、対応するページがペー
ジキャッシュ12内にキャッシュされているか否かが判
定される(ステップS11)。この判定の結果、対応す
るページがキャッシュされている場合には、ページをデ
ータベース10から読み込む必要がないのでそのまま処
理を終了する一方、対応するページがキャッシュされて
いない場合には、ページキャッシュ12内にページを読
み込むための領域を確保し(ステップS12)、ページ
キャッシュの状態を”UNLOCKED”として処理を
終了する(ステップS13)。
【0042】次に、オブジェクトキャッシュ管理部31
におけるオブジェクトに対してロックをかける処理(図
10)に際しては、応用プログラム30からの命令で起
動される。そして、まず、ページキャッシュ管理部32
におけるページにロックをかける処理が起動され(ステ
ップS21)、この処理の結果、オブジェクトキャッシ
ュ14における状態が判定される(ステップS22)。
オブジェクトキャッシュの状態はページにロックをかけ
る処理の中から変更される可能性があり、状態が”VA
LID”であればそのまま終了する一方、”UNINI
TIALIZED”又は”INVALID”であれば、
ページキャッシュ12から格納形式の目的のオブジェク
トを読み込み、そのオブジェクトの内容を計算可能形式
に変換してオブジェクトキャッシュ14内に読み込んだ
後(ステップS23)、オブジェクトキャッシュの状態
を”VALID”に変更して処理を終了する(ステップ
S24)。なお、オブジェクトをオブジェクトキャッシ
ュ14内に読み込むに際して、オブジェクトのデータ部
分(変数値)が文字列等の可変長データである場合に
は、それを保持するための領域が当該オブジェクトの外
に確保される。このような処理によって、”VALI
D”の状態に対してロックがかけられることとなる。
【0043】上記のページにロックをかける処理(ステ
ップS21)はページキャッシュ管理部32において行
われ(図11)、まず、ページキャッシュの状態が判定
されて(ステップS31)、”UNLOCKED”の状
態以外の場合にはそのまま処理を終了する一方、”UN
LOCKED”の状態の場合には通信制御部33を介し
てサーバSにロックの要求がなされる(ステップS3
2)。サーバSはページキャッシュ12内のロック対象
のページの内容がデータベース10に記憶されているも
のと同じであるか否か判を判定し、同じであればキャッ
シュされている内容がそのまま使える旨を通知する”l
ock on valid cache”を、変更され
ていればキャッシュの内容を読み直す必要のある旨を通
知する”lock on invalid cach
e”をクライアントCへ返信する。
【0044】ページキャッシュ管理部32は通信制御部
33を介してサーバSからの通知を受け取り(ステップ
S33)、その値が”lock on valid c
ache”であればページキャッシュの状態を”VAL
ID”にして処理を終了する(ステップS34)。一
方、サーバからの通知が”lock on inval
id cache”の場合には、ページキャッシュ12
の保持内容がデータベース10に格納されているものと
異なるため、オブジェクトキャッシュ14の保持内容も
読み直す必要がある。この必要性をオブジェクトキャッ
シュ管理部31に通知するために、当該ページから参照
されているオブジェクトを保持するオブジェクトキャッ
シュの状態を”INVALID”に変更する(ステップ
S35)。そして、ページキャッシュの状態も”INV
ALID”に変更し(ステップS36)、サーバSに読
み出し要求を出して当該ページの内容を更新する処理を
行う(ステップS37)。
【0045】上記のサーバSへの読み出し要求に基づく
処理(ステップS37)では、ページキャッシュの状態
が判定され(ステップS41)、状態が”VALID”
の場合にはデータベース10からページの読み直しを行
う必要はないので処理を終了する。一方、状態が”IN
VALID”の場合には、データベース10から読み出
されたページをサーバSから読み込みんでページの内容
を更新し(ステップS42)、ページキャッシュの状態
を”VALID”に変更して処理を終了する(ステップ
S43)。
【0046】次に、ページキャッシュ管理部32におけ
るページキャッシュ12からページの領域を解放する処
理(図12)では、まず、解放対象のページをページキ
ャッシュ12からサーバSへ書き出し(ステップS5
1)、ページキャッシュの状態を”INVALID”に
する(ステップS43)。これによって、次にサーバS
にページの読み出し要求を出すと、図12に示したペー
ジの内容を更新する処理が起動され、サーバSから新た
にページの内容が読み込まれる。
【0047】次に、オブジェクトキャッシュ管理部31
におけるオブジェクトキャッシュ14の内容をページキ
ャッシュ12に書き出す処理(図14)では、まず、サ
ーバSに読み出し要求を出して上記したステップS37
の処理を行い(ステップS61)、ページキャッシュ1
4に対応するページを有効な状態で格納し直す。これに
よって、対象となるオブジェクトが含まれるべきページ
がページキャッシュ12から追い出されている場合にあ
っても、ページキャッシュ12内に対応するページの領
域が確保される。そして、オブジェクトキャッシュ14
に保持されている対象のオブジェクトの内容を格納形式
に変換した後、当該オブジェクトをページキャッシュ1
2に書き出して処理を終了する(ステップS62)。
【0048】次に、オブジェクトキャッシュ管理部31
におけるオブジェクトをオブジェクトキャッシュ14か
ら削除する処理(図15)では、まず、オブジェクトキ
ャッシュ14の状態が判定され(ステップS71)、状
態が”UNINITIALIZED”である場合には、
削除対象の内容がないのでそのまま処理を終了する。一
方、状態が”INVALID”又は”VALID”であ
る場合には、オブジェクトキャッシュ14の変数値の領
域に保持されている値(データ部分)を消去して処理を
終了する(ステップS72)。なお、変数値が文字列等
の可変長データで、変数値を保持するための領域がオブ
ジェクトの外に確保されている場合には、その領域の変
数値も消去して領域を開放する。
【0049】なお、上記の実施例では、オブジェクトキ
ャッシュ14に保持されたオブジェクトを応用プログラ
ム30がアクセスすることに起因して、オブジェクトキ
ャッシュの状態とページキャッシュの状態とを同期処理
するようにしたが、或る設定時間毎に周期的に同期処理
を行わせる等、他の要因に起因して同期処理を実行する
ようにしてもよい。また、上記の実施例では、オブジェ
クトキャッシュ14に保持されたオブジェクトを応用プ
ログラム30がアクセスして利用する例を示したが、ユ
ーザ等からの検索要求に基づいて、当該オブジェクトを
検索結果としてディスプレイ表示するようにしてもよ
い。また、本発明のデータベース管理装置は、サーバ・
クライアント型のシステムとして構成する以外に、1つ
の情報処理装置で構成することもでき、この場合でも上
記と同様な作用効果を得ることができる。
【0050】
【発明の効果】以上説明したように、本発明では、ペー
ジキャッシュ内のページとオブジェクトキャッシュ内の
オブジェクトの関連付けを利用して、例えばロック操作
の時点でページキャッシュの状態とオブジェクトキャッ
シュの状態を同期させるようにしたため、別領域変換方
式においてキャッシュの管理の際に考慮しなければなら
ない状態の数を削減することができ、短時間にして効率
のよい処理でキャッシュの管理が行え、延いては、オブ
ジェクトを利用する応用プログラム等の実行効率を向上
させることができる。
【0051】そして、別領域変換方式を支障なく採用す
ることが可能となることから、状態の同期をとるまでは
ページキャッシュとオブジェクトキャッシュの保持内容
を独立に管理でき、オブジェクトをキャッシュ内に残し
たまま、そのオブジェクトの存在するページをキャッシ
ュから追い出すことができ、キャッシュの利用効率を高
めるとともに高いヒット率を達成することができる。
【図面の簡単な説明】
【図1】 本発明の一実施例に係るデータベース管理装
置の構成図である。
【図2】 本発明の一実施例に係るデータベース管理装
置をサーバ・クライアント型のデータベース管理システ
ムとして構成した場合の構成図である。
【図3】 クライアントのキャッシュ管理にかかわる機
能的な構成を示す概念図である。
【図4】 オブジェクトキャッシュとページキャッシュ
との保持内容とそれらの相互関係を示す概念図である。
【図5】 オブジェクトキャッシュ内のオブジェクト及
びページキャッシュ内のページの管理情報の内部構造を
示す概念図である。
【図6】 オブジェクトキャッシュの状態の遷移を示す
概念図である。
【図7】 ページキャッシュ状態の遷移を示す概念図で
ある。
【図8】 オブジェクトの参照の処理の手順を示すフロ
ーチャートである。
【図9】 ページの参照の処理の手順を示すフローチャ
ートである。
【図10】 オブジェクトにロックをかける処理の手順
を示すフローチャートである。
【図11】 ページにロックをかける処理の手順を示す
フローチャートである。
【図12】 サーバにページの読み出し要求を出してペ
ージの内容を更新するための処理の手順を示すフローチ
ャートである。
【図13】 ページキャッシュからページの領域を開放
する処理の手順を示すフローチャートである。
【図14】 オブジェクトキャッシュの内容をページに
書き出す処理の手順を示すフローチャートである。
【図15】 オブジェクトをオブジェクトキャッシュか
ら削除する処理の手順を示すフローチャートである。
【符号の説明】
S・・・サーバ、 C・・・クライアント、 10・・
・データベース、11・・・データベース読み出し手
段、 12・・・ページキャッシュ、13・・・ページ
キャッシュ読み出し手段、14・・・オブジェクトキャ
ッシュ、 15・・・ページ状態保持手段、16・・・
オブジェクト状態保持手段、 17・・・状態同期手
段、18・・・データベース判断手段、 19・・・状
態更新手段、20・・・入力手段、 21・・・検索結
果出力手段、25、26・・・通信手段、 30・・・
応用プログラム、31・・・オブジェクトキャッシュ管
理部、32・・・ページキャッシュ管理部、

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 オブジェクトに記憶するデータベース
    と、 前記データベースに記憶されているオブジェクトへのア
    クセス要求に対して、該アクセス要求を受けたオブジェ
    クトを含む固定長のデータであるページを前記データベ
    ースより読み出すデータベース読み出し手段と、 前記データベース読み出し手段により読み出されたペー
    ジを保持するページキャッシュと、 前記ページキャッシュに保持されているページから前記
    アクセス要求を受けたオブジェクトを読み出すページキ
    ャッシュ読み出し手段と、 前記ページキャッシュ読み出し手段により読み出された
    オブジェクトを保持するオブジェクトキャッシュと、 前記ページキャッシュに保持されるページと該ページに
    対応する前記データベース上のページとが一致している
    か否かを示すページキャッシュ状態を保持するページ状
    態保持手段と、 前記オブジェクトキャッシュに保持されるオブジェクト
    と該オブジェクトに対応する前記データベース上のオブ
    ジェクトとが一致しているか否かを示すオブジェクトキ
    ャッシュ状態を保持するオブジェクト状態保持手段と、 前記ページキャッシュに保持されるページに対応して前
    記ページ状態保持手段に保持されているページキャッシ
    ュ状態と、該ページから読み出されて前記オブジェクト
    キャッシュに保持されているオブジェクトに対応して前
    記オブジェクト状態保持手段に保持されているオブジェ
    クトキャッシュ状態とを一致させる同期処理を行う状態
    同期手段と、 を有することを特徴とするデータベース管理装置。
  2. 【請求項2】 前記ページ状態保持手段はページキャッ
    シュ状態として、前記ページキャッシュに保持されるペ
    ージと該ページに対応する前記データベースに記憶され
    ているページとが一致していることを示す有効状態と、
    一致していないことを示す無効状態と、該ページに含ま
    れるオブジェクトに対して、アクセス要求を受けていな
    いことを示すロックなし状態を含み、 前記オブジェクト状態保持手段はオブジェクトキャッシ
    ュ状態として、前記オブジェクトキャッシュに保持され
    るオブジェクトと該オブジェクトに対応する前記データ
    ベース上のオブジェクトとが一致していることを示す有
    効状態と、一致していることを保証しないことを示す無
    効状態と、前記オブジェクトキャッシュ上にオブジェク
    トを読み込む領域が確保されたことを示す未初期化状態
    とを含むことを特徴とする請求項1に記載のデータベー
    ス管理装置。
  3. 【請求項3】 前記状態同期手段は、 前記オブジェクトへのアクセス要求を受けたときに、該
    アクセス要求を受けたオブジェクトを含む前記ページキ
    ャッシュに保持されるページに対応して前記ページ状態
    保持手段に保持されているページキャッシュ状態と、該
    ページから読み出されて前記オブジェクトキャッシュに
    保持されているオブジェクトに対応して前記オブジェク
    ト状態保持手段に保持されているオブジェクトキャッシ
    ュ状態とを一致させるものであることを特徴とする請求
    項1に記載のデータベース管理装置。
  4. 【請求項4】 前記状態同期手段は、 前記オブジェクトへのアクセス要求を受けたオブジェク
    トを含む前記ページキャッシュに保持されるページと、
    該ページに対応する前記データベース上のページとが一
    致しているか否かを判断するデータベース判断手段と、 前記データベース判断手段により、一致していないと判
    断された場合に、ページ状態保持手段に保持される前記
    ページのページキャッシュ状態をデータベースと一致し
    ていない状態である無効状態に設定し、更に前記ページ
    から読み出されて前記オブジェクトキャッシュに保持さ
    れているオブジェクトに対応して前記オブジェクト状態
    保持手段に保持されているオブジェクトキャッシュ状態
    をデータベース上の対応するオブジェクトと一致してい
    ない状態である無効状態に設定する状態更新手段と、 を有することを特徴とする請求項1に記載のデータベー
    ス管理装置。
  5. 【請求項5】 オブジェクトを記憶するデータベース
    と、 前記データベースより所望のオブジェクトを検索するた
    めの検索要求を入力する入力手段と、 前記入力手段により入力された検索要求に対応するオブ
    ジェクトを含む固定長のデータであるページを前記デー
    タベースより読み出すデータベース読み出し手段と、 前記データベース読み出し手段により読み出されたペー
    ジを保持するページキャッシュと、 前記ページキャッシュに保持されているページから前記
    入力手段により入力された検索要求に対応するオブジェ
    クトを読み出すページキャッシュ読み出し手段と、 前記ページキャッシュ読み出し手段により読み出された
    オブジェクトを保持するオブジェクトキャッシュと、 前記ページキャッシュに保持されるページと該ページに
    対応する前記データベース上のページが一致しているか
    否かを示すページキャッシュ状態を保持するページ状態
    保持手段と、 前記オブジェクトキャッシュに保持されるオブジェクト
    と該オブジェクトに対応する前記データベース上のオブ
    ジェクトとが一致しているか否かを示すオブジェクトキ
    ャッシュ状態を保持するオブジェクト状態保持手段と、 前記ページキャッシュに保持されるページに対応して前
    記ページ状態保持手段に保持されたいるページキャッシ
    ュ状態と、該ページから読み出されて前記オブジェクト
    キャッシュに保持されるオブジェクトに対応して前記オ
    ブジェクト状態保持手段に保持されているオブジェクト
    キャッシュ状態とを一致させるための同期処理を行う状
    態同期手段と、 前記状態同期手段により同期処理が行われて、前記入力
    手段により入力された検索要求に対応するオブジェクト
    に対して前記オブジェクト状態保持手段に保持されてい
    るオブジェクトキャッシュ状態が前記データベース内の
    対応するオブジェクトと一致している状態になったこと
    に基づいて、前記オブジェクトキャッシュから前記入力
    手段により入力された検索要求に対応するオブジェクト
    を取り出して検索結果として出力する検索結果出力手段
    と、 を有することを特徴とするデータベース管理装置。
  6. 【請求項6】 オブジェクトを記憶するデータベース
    と、 前記データベースに対するオブジェクトのアクセス要求
    を受ける第1の受信手段と、 前記データベースから該アクセス要求に対応するオブジ
    ェクトを含む固定長のデータであるページを読み出すデ
    ータベース読み出し手段と、 前記読み出し手段により読み出されたページを送信する
    第1の送信手段を有するサーバと、 データベースに対するオブジェクトのアクセス要求を前
    記サーバに対して送信する第2の送信手段と、 該第2の送信手段により送信された前記アクセス要求に
    応じて前記サーバの第1の送信手段の送信したページを
    受信する第2の受信手段と、 前記サーバから受信したページを保持するページキャッ
    シュと、 前記アクセス要求に対応するオブジェクトを前記ページ
    キャッシュより読み出すページキャッシュ読み出し手段
    と、 前記ページキャッシュ読み出し手段により読み出された
    オブジェクトを保持するオブジェクトキャッシュと、 前記ページキャッシュに保持されるページと該ページに
    対応する前記データベース上のページとが一致している
    か否かを示すページキャッシュ状態を保持するページ状
    態保持手段と、 前記オブジェクトキャッシュに保持されるオブジェクト
    と該オブジェクトに対応する前記データベース上のオブ
    ジェクトとが一致しているか否かを示すオブジェクトキ
    ャッシュ状態を保持するオブジェクト状態保持手段と、 前記ページキャッシュに保持されるページに対応して前
    記ページ状態保持手段に保持されているページキャッシ
    ュ状態と、該ページから読み出されて前記オブジェクト
    キャッシュに保持されるオブジェクトに対応して前記オ
    ブジェクト状態保持手段に保持されているオブジェクト
    キャッシュ状態とを一致させるための同期処理を行う状
    態同期手段とを有するクライアントと、 を有することを特徴とするデータベース管理装置。
  7. 【請求項7】 オブジェクトを記憶するデータベースの
    任意のオブジェクトへのアクセス要求を受け、 前記データベースより読み出され、前記アクセス要求を
    受けたオブジェクトを含む固定長のデータであるページ
    を保持するページキャッシュ上の、前記アクセス要求を
    受けたオブジェクトを含むページと、該ページに対応す
    るデータベース上のページが一致しているか否かを判断
    し、 一致していないと判断された場合に、前記ページキャッ
    シュ上の前記ページの状態を、該ページに対応するデー
    タベース上のページと一致していない状態を示す無効状
    態に設定し、更に、 前記ページキャッシュから読み出されたオブジェクトを
    保持するオブジェクトキャッシュ上で、前記ページより
    読み出されたオブジェクトの状態を該オブジェクトがデ
    ータベース上の対応するオブジェクトと一致していない
    状態である無効状態に設定することを特徴とするデータ
    ベース管理方法。
JP7243671A 1995-08-29 1995-08-29 データベース管理装置及び方法 Expired - Fee Related JP2964926B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP7243671A JP2964926B2 (ja) 1995-08-29 1995-08-29 データベース管理装置及び方法
US08/632,069 US5829022A (en) 1995-08-29 1996-04-15 Method and apparatus for managing coherency in object and page caches

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7243671A JP2964926B2 (ja) 1995-08-29 1995-08-29 データベース管理装置及び方法

Publications (2)

Publication Number Publication Date
JPH0962570A true JPH0962570A (ja) 1997-03-07
JP2964926B2 JP2964926B2 (ja) 1999-10-18

Family

ID=17107264

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7243671A Expired - Fee Related JP2964926B2 (ja) 1995-08-29 1995-08-29 データベース管理装置及び方法

Country Status (2)

Country Link
US (1) US5829022A (ja)
JP (1) JP2964926B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11327979A (ja) * 1998-03-27 1999-11-30 Navigation Technol Corp ナビゲーションシステムのための改良されたメモリ管理
JP2016522907A (ja) * 2013-04-15 2016-08-04 フェイスブック,インク. アプリケーションに適合したオブジェクトのプレインフレート
US10210590B2 (en) 2013-04-11 2019-02-19 Facebook, Inc. Application-tailored object re-use and recycling
US10354363B2 (en) 2013-04-11 2019-07-16 Facebook, Inc. Displaying a pre-fetched object comprising a first associated with a desired content and a second element associated with time-sensitive information associated with the desired content

Families Citing this family (84)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6463446B1 (en) 1998-02-26 2002-10-08 Sun Microsystems, Inc. Method and apparatus for transporting behavior in an event-based distributed system
US6272559B1 (en) 1997-10-15 2001-08-07 Sun Microsystems, Inc. Deferred reconstruction of objects and remote loading for event notification in a distributed system
US6393497B1 (en) 1998-03-20 2002-05-21 Sun Microsystems, Inc. Downloadable smart proxies for performing processing associated with a remote procedure call in a distributed system
US6226746B1 (en) 1998-03-20 2001-05-01 Sun Microsystems, Inc. Stack-based system and method to combine security requirements of methods
US6708171B1 (en) 1996-04-23 2004-03-16 Sun Microsystems, Inc. Network proxy
US6438614B2 (en) 1998-02-26 2002-08-20 Sun Microsystems, Inc. Polymorphic token based control
US6487607B1 (en) 1998-02-26 2002-11-26 Sun Microsystems, Inc. Methods and apparatus for remote method invocation
US6598094B1 (en) 1998-03-20 2003-07-22 Sun Microsystems, Inc. Method and apparatus for determining status of remote objects in a distributed system
US6182083B1 (en) 1997-11-17 2001-01-30 Sun Microsystems, Inc. Method and system for multi-entry and multi-template matching in a database
US6421704B1 (en) 1998-03-20 2002-07-16 Sun Microsystems, Inc. Method, apparatus, and product for leasing of group membership in a distributed system
US6832223B1 (en) 1996-04-23 2004-12-14 Sun Microsystems, Inc. Method and system for facilitating access to a lookup service
US6938263B2 (en) 1996-04-23 2005-08-30 Sun Microsystems, Inc. System and method for facilitating dynamic loading of “stub” information to enable a program operating in one address space to invoke processing of a remote method or procedure in another address space
US6185611B1 (en) 1998-03-20 2001-02-06 Sun Microsystem, Inc. Dynamic lookup service in a distributed system
US6237024B1 (en) 1998-03-20 2001-05-22 Sun Microsystem, Inc. Method and apparatus for the suspension and continuation of remote processes
US6446070B1 (en) 1998-02-26 2002-09-03 Sun Microsystems, Inc. Method and apparatus for dynamic distributed computing over a network
US6466947B2 (en) 1998-03-20 2002-10-15 Sun Microsystems, Inc. Apparatus and method for dynamically verifying information in a distributed system
US6560656B1 (en) 1998-02-26 2003-05-06 Sun Microsystems, Inc. Apparatus and method for providing downloadable code for use in communicating with a device in a distributed system
US6138238A (en) * 1997-12-11 2000-10-24 Sun Microsystems, Inc. Stack-based access control using code and executor identifiers
US6578044B1 (en) 1997-11-17 2003-06-10 Sun Microsystems, Inc. Method and system for typesafe attribute matching
US6247026B1 (en) 1996-10-11 2001-06-12 Sun Microsystems, Inc. Method, apparatus, and product for leasing of delegation certificates in a distributed system
US5832529A (en) 1996-10-11 1998-11-03 Sun Microsystems, Inc. Methods, apparatus, and product for distributed garbage collection
US6728737B2 (en) 1996-10-11 2004-04-27 Sun Microsystems, Inc. Method and system for leasing storage
US6237009B1 (en) 1996-10-11 2001-05-22 Sun Microsystems, Inc. Lease renewal service
US6233665B1 (en) * 1997-05-27 2001-05-15 Unisys Corporation Mapping shared DRAM address bits by accessing data memory in page mode cache status memory in word mode
US6253256B1 (en) 1997-10-15 2001-06-26 Sun Microsystems, Inc. Deferred reconstruction of objects and remote loading in a distributed system
KR20010034514A (ko) 1998-02-26 2001-04-25 케네쓰 올센 원격 메소드를 식별하는 해시 판정 방법 및 시스템
US6604127B2 (en) 1998-03-20 2003-08-05 Brian T. Murphy Dynamic lookup service in distributed system
US6233585B1 (en) * 1998-03-12 2001-05-15 Crossworlds Software, Inc. Isolation levels and compensating transactions in an information system
US6272593B1 (en) 1998-04-10 2001-08-07 Microsoft Corporation Dynamic network cache directories
US6877163B1 (en) 1999-06-14 2005-04-05 Sun Microsystems, Inc. Method and system for dynamic proxy classes
US6553409B1 (en) * 1999-07-09 2003-04-22 Microsoft Corporation Background cache synchronization
US7065574B1 (en) 2000-05-09 2006-06-20 Sun Microsystems, Inc. Messaging system using pairs of message gates in a distributed computing environment
US6868447B1 (en) 2000-05-09 2005-03-15 Sun Microsystems, Inc. Mechanism and apparatus for returning results of services in a distributed computing environment
US6789126B1 (en) 2000-05-09 2004-09-07 Sun Microsystems, Inc. Addressing message gates in a distributed computing environment
US6850979B1 (en) 2000-05-09 2005-02-01 Sun Microsystems, Inc. Message gates in a distributed computing environment
US6789077B1 (en) 2000-05-09 2004-09-07 Sun Microsystems, Inc. Mechanism and apparatus for web-based searching of URI-addressable repositories in a distributed computing environment
US8135796B1 (en) 2000-05-09 2012-03-13 Oracle America, Inc. Mechanism and apparatus for accessing and addressing services in a distributed computing environment
US7370091B1 (en) 2000-05-09 2008-05-06 Sun Microsystems, Inc. Method and apparatus for obtaining space advertisements
US6950875B1 (en) 2000-05-09 2005-09-27 Sun Microsystems, Inc. Message conductors in a distributed computing environment
US7188251B1 (en) 2000-05-09 2007-03-06 Sun Microsystems, Inc. System and method for secure message-based leasing of resources in a distributed computing environment
US6643650B1 (en) 2000-05-09 2003-11-04 Sun Microsystems, Inc. Mechanism and apparatus for using messages to look up documents stored in spaces in a distributed computing environment
US6973493B1 (en) 2000-05-09 2005-12-06 Sun Microsystems, Inc. Mechanism and apparatus for security of newly spawned repository spaces in a distributed computing environment
US7080078B1 (en) 2000-05-09 2006-07-18 Sun Microsystems, Inc. Mechanism and apparatus for URI-addressable repositories of service advertisements and other content in a distributed computing environment
US7716492B1 (en) 2000-05-09 2010-05-11 Oracle America, Inc. Method and apparatus to obtain service capability credentials
US7260543B1 (en) 2000-05-09 2007-08-21 Sun Microsystems, Inc. Automatic lease renewal with message gates in a distributed computing environment
US7010573B1 (en) 2000-05-09 2006-03-07 Sun Microsystems, Inc. Message gates using a shared transport in a distributed computing environment
US7243356B1 (en) 2000-05-09 2007-07-10 Sun Microsystems, Inc. Remote method invocation with secure messaging in a distributed computing environment
US6898618B1 (en) 2000-05-09 2005-05-24 Sun Microsystems, Inc. Client-specified display services in a distributed computing environment
US8001232B1 (en) 2000-05-09 2011-08-16 Oracle America, Inc. Event message endpoints in a distributed computing environment
US7200848B1 (en) 2000-05-09 2007-04-03 Sun Microsystems, Inc. Migrating processes using data representation language representations of the processes in a distributed computing environment
US6917976B1 (en) 2000-05-09 2005-07-12 Sun Microsystems, Inc. Message-based leasing of resources in a distributed computing environment
US7072967B1 (en) 2000-05-09 2006-07-04 Sun Microsystems, Inc. Efficient construction of message endpoints
US7016966B1 (en) 2000-05-09 2006-03-21 Sun Microsystems, Inc. Generating results gates in a distributed computing environment
US7395333B1 (en) 2000-05-09 2008-07-01 Sun Microsystems, Inc. Method and apparatus to obtain negotiated service advertisement
US6792466B1 (en) 2000-05-09 2004-09-14 Sun Microsystems, Inc. Trusted construction of message endpoints in a distributed computing environment
US6918084B1 (en) 2000-05-09 2005-07-12 Sun Microsystems, Inc. Spawning new repository spaces using information provided in advertisement schema messages
US6862594B1 (en) 2000-05-09 2005-03-01 Sun Microsystems, Inc. Method and apparatus to discover services using flexible search criteria
US7577834B1 (en) 2000-05-09 2009-08-18 Sun Microsystems, Inc. Message authentication using message gates in a distributed computing environment
US6970869B1 (en) 2000-05-09 2005-11-29 Sun Microsystems, Inc. Method and apparatus to discover services and negotiate capabilities
US8082491B1 (en) 2000-05-09 2011-12-20 Oracle America, Inc. Dynamic displays in a distributed computing environment
US6760815B1 (en) 2000-06-02 2004-07-06 Sun Microsystems, Inc. Caching mechanism for a virtual heap
US6865657B1 (en) 2000-06-02 2005-03-08 Sun Microsystems, Inc. Garbage collector for a virtual heap
US6854115B1 (en) 2000-06-02 2005-02-08 Sun Microsystems, Inc. Process persistence in a virtual machine
US6957237B1 (en) 2000-06-02 2005-10-18 Sun Microsystems, Inc. Database store for a virtual heap
US6763440B1 (en) 2000-06-02 2004-07-13 Sun Microsystems, Inc. Garbage collection using nursery regions for new objects in a virtual heap
US6609126B1 (en) * 2000-11-15 2003-08-19 Appfluent Technology, Inc. System and method for routing database requests to a database and a cache
EP1638020A3 (en) * 2000-12-22 2006-05-24 Research In Motion Limited Information browser system and method for a wireless communication device
US6904456B2 (en) * 2001-02-20 2005-06-07 Microsoft Corporation Lock-free cache management
US7660887B2 (en) 2001-09-07 2010-02-09 Sun Microsystems, Inc. Systems and methods for providing dynamic quality of service for a distributed system
US7756969B1 (en) 2001-09-07 2010-07-13 Oracle America, Inc. Dynamic provisioning of identification services in a distributed system
US7062515B1 (en) 2001-12-28 2006-06-13 Vignette Corporation System and method for the synchronization of a file in a cache
US7788681B1 (en) 2003-09-16 2010-08-31 Vignette Software, LLC System and method for incorporating web services in a web site
US7792874B1 (en) 2004-01-30 2010-09-07 Oracle America, Inc. Dynamic provisioning for filtering and consolidating events
US7421562B2 (en) * 2004-03-01 2008-09-02 Sybase, Inc. Database system providing methodology for extended memory support
GB0416852D0 (en) * 2004-07-29 2004-09-01 Ibm Controlling a transmission cache in a networked file system
US10089711B2 (en) * 2010-09-03 2018-10-02 Adobe Systems Incorporated Reconstructable digital image cache
US20130227143A1 (en) * 2012-02-27 2013-08-29 Verizon Patent And Licensing Inc. Method and system for providing transaction management in a request-oriented service architecture using meta-models
US20130227101A1 (en) * 2012-02-27 2013-08-29 Verizon Patent And Licensing, Inc. Method and system for providing transaction management in a request-oriented service architecture
WO2013140492A1 (ja) * 2012-03-19 2013-09-26 富士通株式会社 データアクセス方法およびプログラム
US9898520B2 (en) 2014-03-25 2018-02-20 Open Text Sa Ulc Systems and methods for seamless access to remotely managed documents using synchronization of locally stored documents
US11003632B2 (en) 2016-11-28 2021-05-11 Open Text Sa Ulc System and method for content synchronization
US11301431B2 (en) 2017-06-02 2022-04-12 Open Text Sa Ulc System and method for selective synchronization
US10691729B2 (en) * 2017-07-07 2020-06-23 Palantir Technologies Inc. Systems and methods for providing an object platform for a relational database
CN110413214B (zh) * 2018-04-28 2023-07-18 伊姆西Ip控股有限责任公司 用于存储管理的方法、设备和计算机程序产品

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3682880D1 (de) * 1985-11-28 1992-01-23 Canon Kk Dokumentverarbeitungssystem.
US5043871A (en) * 1986-03-26 1991-08-27 Hitachi, Ltd. Method and apparatus for database update/recovery
US5060144A (en) * 1989-03-16 1991-10-22 Unisys Corporation Locking control with validity status indication for a multi-host processor system that utilizes a record lock processor and a cache memory for each host processor
JP3453757B2 (ja) * 1989-05-29 2003-10-06 株式会社日立製作所 バッファ管理方法
US4969122A (en) * 1989-08-21 1990-11-06 Sun Microsystems, Inc. Apparatus for page tagging in a computer system
US5206941A (en) * 1990-01-22 1993-04-27 International Business Machines Corporation Fast store-through cache memory
DE69130086T2 (de) * 1990-06-15 1999-01-21 Compaq Computer Corp Mehrstufeneinschluss in mehrstufigen Cache-Speicherhierarchien
US5261069A (en) * 1990-08-13 1993-11-09 Hewlett-Packard Company Method of maintaining consistency of cached data in a database system
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
US5548740A (en) * 1992-02-10 1996-08-20 Sharp Kabushiki Kaisha Information processor efficiently using a plurality of storage devices having different access speeds and a method of operation thereof
JP3475429B2 (ja) * 1992-02-13 2003-12-08 富士ゼロックス株式会社 オブジェクト指向データベースおよび検索方法
EP0568231B1 (en) * 1992-04-29 1999-03-10 Sun Microsystems, Inc. Methods and apparatus for providing multiple outstanding operations in a cache consistent multiple processor computer system
US5450563A (en) * 1992-10-30 1995-09-12 International Business Machines Corporation Storage protection keys in two level cache system
JP3166943B2 (ja) * 1992-12-31 2001-05-14 ソニー株式会社 データベースアクセス処理方法
US5493728A (en) * 1993-02-19 1996-02-20 Borland International, Inc. System and methods for optimized access in a multi-user environment
JP3600257B2 (ja) * 1993-05-31 2004-12-15 富士通株式会社 情報処理装置及びキャッシュ制御装置
WO1995004960A2 (en) * 1993-08-02 1995-02-16 Persistence Software, Inc. Method and apparatus for managing relational data in an object cache

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11327979A (ja) * 1998-03-27 1999-11-30 Navigation Technol Corp ナビゲーションシステムのための改良されたメモリ管理
US10210590B2 (en) 2013-04-11 2019-02-19 Facebook, Inc. Application-tailored object re-use and recycling
US10354363B2 (en) 2013-04-11 2019-07-16 Facebook, Inc. Displaying a pre-fetched object comprising a first associated with a desired content and a second element associated with time-sensitive information associated with the desired content
US10896484B2 (en) 2013-04-11 2021-01-19 Facebook, Inc. Method and system of display object pre-generation on windows of idle time available after each frame buffer fill tasks
JP2016522907A (ja) * 2013-04-15 2016-08-04 フェイスブック,インク. アプリケーションに適合したオブジェクトのプレインフレート
US10126903B2 (en) 2013-04-15 2018-11-13 Facebook, Inc. Application-tailored object pre-inflation

Also Published As

Publication number Publication date
JP2964926B2 (ja) 1999-10-18
US5829022A (en) 1998-10-27

Similar Documents

Publication Publication Date Title
JPH0962570A (ja) データベース管理装置及び方法
US11269839B2 (en) Authenticated key-value stores supporting partial state
KR100592647B1 (ko) 서로 다른 클라이언트 사이의 데이터 동기화 시스템, 클라이언트들간의 업데이트 동기화 방법, 업데이트의 복제 방법, 및 컴퓨터 판독 가능 기록 매체
US5276835A (en) Non-blocking serialization for caching data in a shared cache
JP4195397B2 (ja) 集中キャッシュメモリのアトミックな更新方法
EP2857969A2 (en) Data processing management method, information processing apparatus, and data processing management program
US20020166022A1 (en) Access control method, access control apparatus, and computer-readable memory storing access control program
JP3481054B2 (ja) ゲートウェイ装置、クライアント計算機およびそれらを接続した分散ファイルシステム
CN109684335B (zh) 基于键值对的数据结构实现方法、装置、设备和存储介质
JP2004530216A (ja) 異なるブロックサイズのテーブルスペースの統合
JPH10222407A (ja) プロセスオーバーヘッド及びデータベースサーバからの冗長な検索を減少するように同じプロセスにおける多数のデータベーストランザクションを処理する方法
JP2002519765A (ja) トランザクションデータの高速記憶常駐処理方法および処理システム
JP2001508208A (ja) データ共用方法およびコンピュータアーキテクチャ
JPH0561662B2 (ja)
CN109656886B (zh) 基于键值对的文件系统实现方法、装置、设备和存储介质
JP2606222B2 (ja) ファイル名の長さ制限拡張方式
CN110032543A (zh) 一种存储文件系统的管理方法
JP2007287180A (ja) 分散ファイルシステム、分散ファイルシステムサーバ及び分散ファイルシステムへのアクセス方法
JPWO2007102536A1 (ja) 分散ファイル管理システム
JPH05225034A (ja) オブジェクト指向データベースシステムにおけるオブジェクト管理方法
JP2000235514A (ja) 情報検索方法及び情報検索システム並びに情報検索処理プログラムを記録した記録媒体
JPH06274401A (ja) 分散データベース制御方式
JP3485915B1 (ja) ゲートウェイ装置、クライアント計算機およびプロキシサーバ計算機
JPH07210526A (ja) 並列計算機
CN116821058B (zh) 元数据访问方法、装置、设备及存储介质

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070813

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080813

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090813

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100813

Year of fee payment: 11

LAPS Cancellation because of no payment of annual fees