JP2865500B2 - ファイル格納管理方法 - Google Patents

ファイル格納管理方法

Info

Publication number
JP2865500B2
JP2865500B2 JP26046992A JP26046992A JP2865500B2 JP 2865500 B2 JP2865500 B2 JP 2865500B2 JP 26046992 A JP26046992 A JP 26046992A JP 26046992 A JP26046992 A JP 26046992A JP 2865500 B2 JP2865500 B2 JP 2865500B2
Authority
JP
Japan
Prior art keywords
page
map
relation
meta
file
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP26046992A
Other languages
English (en)
Other versions
JPH06110744A (ja
Inventor
康弘 鈴木
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP26046992A priority Critical patent/JP2865500B2/ja
Priority to US08/129,853 priority patent/US5418949A/en
Publication of JPH06110744A publication Critical patent/JPH06110744A/ja
Application granted granted Critical
Publication of JP2865500B2 publication Critical patent/JP2865500B2/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/10File systems; File servers
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99956File allocation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はデータベース上の複数の
リレーションの関連性に応じて,データ格納ファイルに
近接配置する,いわゆるクラスタリングを促進したデー
タベースにおけるファイル格納管理方法に関する。
【0002】CAD等のエンジニアリング応用では,大
量のデータに対する加工と計算をしながら,高速のレス
ポンスが要求される。このため,従業員情報等の単純な
数値計算とか文字列を扱う事務処理に向いたリレーショ
ナル型データベース管理システム(イニシァルを取って
RDBMSと略称される)は不向きとされている。
【0003】
【従来の技術】従来のRDBMSでは,各データ毎の集
合を表すリレーションが,他のリレーションとは独立し
て格納管理されるのに対し,エンジニアリング応用で
は,各データ間の部品(Composite)としての
従属関係が多く,このような従属関係のあるリレーショ
ンを,主記憶に読込む際のオーバーヘッドがエンジニア
リング応用に不向きとされる大きな要因となっている。
【0004】近年登場したオブジェクト指向データベー
ス管理システム(OODBMSと略称される)は,この
ようなエンジニアリング応用を目指したもので,関連し
合うデータ同士を物理的に近接配置し,これらを極力一
括して主記憶上に読込むことによりレスポンスの向上を
図っている。例えば,フランスのAltairで開発さ
れたOODBMSであるO2(文献:Fernando Velez,
Guy Bernard, VineetaDaris : The O2 Object Manager
: an Overview, Proc. 15th VLDB Conf. 1989) や,そ
の中で利用されている米ウィスコンシン大学で開発され
たストレージ管理システムであるWiSS(文献:H-T.
Chou, David J.Dewiti,Rnady H,Katz,Anthony C.Klug:
Dsign and Implementation of the Wisconsin Storage
System,Software Practice and Experience, Vol.15 (1
0), PP.943 −962, 1985)では,上記のデータ間の関係
を,次のような方法で実現している。
【0005】(1) 関連し合うデータのレコードを極力同
一ぺージに配置するレコード・レベルでのクラスタリン
グ(近接配置)を用いる。 (2) 同一リレーション内のデータ間の連鎖を,アドレス
・リンク(チェーニング)で実現している。
【0006】
【発明が解決しようとする課題】クラスタリングの概念
を図19に示す。図19では,回路設計用CADで利用
される具体的なデータとして,電子回路上の部品素子を
表した「シンボル」と,部品が持つ「ピン」及びピ
ン間を接続する信号線による接続を表した「ネット」
という3種類のリレーションについてファイル上に格納
する例を示している。
【0007】ピンはシンボルに従属しており,「ピン i
s part of シンボル」の関係を持ち,親のシンボルの生
成と共に従属するピン群が生成され,同様に親のシンボ
ルの削除と共に従属するピン群は削除される,といった
静的に密接な関係を持っている。一方,ネットとピンも
その接続関係に応じて,複数ピンは一つのネットに従属
することもあるが,ネットの接続関係の変更によりその
従属関係は頻繁に変わりうる。従って,シンボルとピン
とは近接配置すべきだが,ネットはこれらとは近接配置
することは好ましくない。
【0008】図19の下段に示すように二次記憶装置
(磁気ディスク装置等)にデータベースを構成した例で
は,ネットはシンボルやピンとは全く別のぺージnに順
次ネット1,ネット2・・・の各ネットが格納され,シ
ンボルとピンについては「レコード・レベルのクラスタ
リング」が適用され,ぺージ7にシンボル1,シンボル
2及びそれに従属するピン群は同居することができる。
しかし,シンボル3とシンボル4のように,ページ7に
ピン群を格納するだけの領域が残っていなければ,別の
ページに格納されることになる。図19に示す例では,
ネットが格納されたページnと離れていることが望まし
いという条件を満たすページ8が別のページであり,こ
のページにシンボルとピン群が密集して格納される。
【0009】しかし,「レコードレベルのクラスタリン
グ」では,シンボルとピンを格納したページが互いに近
接配置されたり,ネットを格納したページがこれらのペ
ージと離れて配置されることは保障されない。すなわ
ち,ページ間におけるクラスタリングは保障されない。
【0010】一方,シンボル,ピン,ネットといったリ
レーションは,リレーション内でのデータの連鎖関係
が,レコード・アドレスまたはページ・アドレスによる
「アドレス・リンク」で表現されている。このアドレス
・リンクは,各リレーション内での順序関係が無いにも
関わらず使用され,もし,順序性を必要とする場合は,
B−トリー等の副次的インデクスで表現するのが一般的
である。
【0011】リレーション単位,あるいは関連し合う複
数リレーションを一括して主記憶に読込む場合,このア
ドレスによるリンクをたぐって行く(navigation) こと
になるが, アドレス・リンクがページの物理的格納順に
なっている保障は無い。また,アドレス・リンクは一種
類のリレーション内でのリンクだけを表現したものであ
り,従属関係のある複数のリレーションを読込む場合
は,そのリレーションの種類の回数だけアドレス・リン
クをたどる必要がある。
【0012】しかし,このような関連するリレーション
をもつ多数のレコードを保持する二次記憶装置への一回
のアクセスには物理的動作に時間がかかるので,アクセ
ス回数を極小化することが必要であり,クラスの親子関
係/包含関係により格納場所の同居・分離に関して極力
近傍に配置したり,離れて配置させる必要がある。
【0013】以上により,従来の「レコード・レベルの
クラスタリング」では,次のような問題がある。 (1) 関連し合うリレーションのデータを格納したページ
が近接配置されない。
【0014】(2) 「アドレス・リンク」により,関連し
合うリレーション単位のデータを一括して主記憶に読込
む際に,データの物理的格納順に読み出すことができ
ず,二次記憶装置におけるシーク(seek) 回数が増大す
る。
【0015】(3) 関連し合う複数リレーションのデータ
を一括して読込む際に,リレーションの種類の回数だけ
アドレス・リンクをたどるためのオーバーヘッドがあ
る。本発明はページ・レベルの高いクラスタリングと,
関連し合うリレーションの高速な読込みを実現するファ
イル格納管理方法を提供することを目的とする。
【0016】
【課題を解決するための手段】図1は本発明の原理構成
図である。図1において,1は1a〜1cの各ファイル
で構成する管理用ファイルであり,1aはリレーション
グループ定義,1bはメタマップファイル,1cはリレ
ーション別ページマップファイルである。2はデータフ
ァイルへのページの割り当て,ページの解放及び必要な
リレーションを含むページデータを読み出す各操作を行
うページ操作部である。
【0017】3はページ操作部2により制御されリレー
ション別ページマップファイル1cを用いた空きページ
マップ管理及びリレーション別ページマップ管理を行う
ページマップ管理手段,4はページ操作部2により制御
されメタマップファイル1bを使用した処理を行うメタ
マップ管理手段,5はページ操作部2により制御され各
リレーション識別(識別番号)について相互の関係を定
義したリレーショングループ定義ファイル1aを用いた
処理を行うリレーショングループ管理手段である。
【0018】6はデータファイルにページ単位でアクセ
スしてデータをロードまたはセーブする管理を行うペー
ジ管理手段,7はデータをページ単位で格納したデータ
ファイルである。
【0019】本発明は複数の種類のリレーションの間
で,相互に接近して格納すべきか,離して格納すべきか
の関係を定義したリレーション別グループマスクとして
設け,各種別のリレーション毎にそれぞれのリレーショ
ンのデータがどのページマップ(複数のデータページに
対し1つ設ける)に存在するか,しないかのデータ及び
空きが存在するページマップを表示するデータであるリ
レーション別メタマップ,及び複数のデータページ毎に
各ページに格納されたリレーションを表示するページマ
ップとを設けて,ページ操作を行う時に,リレーション
・グループ管理手段,メタマップ管理手段及びページマ
ップ管理手段を操作してページ割り当て,ページ解放及
びページ読込みの各処理を実行するものである。
【0020】
【作用】データファイル7には多数のデータぺージが設
けられ,各データぺージはデータ(リレーション別)が
格納されているか空き状態かの何れかである。リレーシ
ョン別ページマップファイル1cには,データファイル
7上の各データページの順番に対応して各ページの使用
/空き状態を表すと共に空きページの場合は空きの識別
(識別情報),使用ページの場合にはそのページが格納
しているデータが所属するリレーションの識別(番号
等)を組み合わせて記録したページマップ情報が格納さ
れている。
【0021】メタマップファイル1bには,ページマッ
プ情報を格納した上記リレーション別ページマップファ
イル1cのページマップ・ページの順番に対応して空き
ページ及び各リレーション毎のデータの存在の有無を表
したフラグを記録したメタマップ情報が格納されてい
る。リレーショングループ定義ファイル1aは,各リレ
ーションが他のリレーションと互いに関連し合い近接配
置すべきリレーション(フレンド・リレーション)か,
互いに関連性がなく近接配置すべきでないリレーション
(排他リレーション)かの関係を表す情報を格納してい
る。
【0022】ページ操作部2は,要求に応じてデータを
データファイルに格納するためのページの割り当て,デ
ータページを空きにするためのページ解放及び必要なリ
レーションに該当するページの読込みの各操作を行う。
これらの各操作は,ページマップ管理手段3,メタマッ
プ管理手段4,リレーション・グループ管理手段5及び
ページ管理手段6を制御することにより実行される。
【0023】ページマップ管理手段3はリレーション別
ページマップファイル1cのページマップ情報について
ロード,セーブし,空きページ及びリレーション別のペ
ージのファイル上での所在を探査し,ページ操作部2の
ページ割り当て,解放の操作に応じてリレーション別の
ページの割り当て及び解放を行い,読込みの操作におい
て一括して読込むための読込み対象となるページのアド
レス・リストを作成する。
【0024】メタマップ管理手段4は,メタマップファ
イル1bを用いて,ページ割り当ての操作において,割
り当てられたページマップ・ページの空きページ数を調
べ空きページがなくなると,対応した空き表示を無し状
態にし,割り当て対象リレーションのページが新規に割
り当てられた時は該当するリレーションに対するメタマ
ップ情報中のページマップ番号(ページマップ・ペー
ジ)に対応したフラグをデータが存在する状態に更新す
る。ページ解放の操作では,解放対象のリレーションの
ページが無くなったことを検出すると,メタマップ情報
中のページマップ番号に対応するフラグを無しの状態に
し,空きページが新規に発生した場合も該当するフラグ
を存在状態にする。
【0025】リレーション・グループ管理手段5は,リ
レーショングループ定義ファイル1aを管理し,ページ
の割り当てにおいて,割り当て対象となるリレーション
に対応するフレンド・リレーショングループと排他リレ
ーショングループ及び空きリレーショングループ(空き
データページを表すページマップを示す)のデータを取
り出し,ページ操作部2に通知する。
【0026】上記メタマップ管理手段4はページ割り当
ての時,リレーション・グループ管理手段5からの前記
のフレンド・リレーション,排他リレーション及び空き
リレーショングループの情報を受けて,論理演算を行っ
てフレンドメタマップと排他メタマップを作成し,更に
空きリレーショングループの情報を用いて,割り当て対
象のリレーションを割り当てるページマップを探索す
る。ページマップが探索されると,ページ操作部2に通
知される。ページ操作部2がページマップ管理手段3に
探索されたページマップを送ると,ページマップ管理手
段3はリレーション別ページマップファイル1cを用い
て該当するページマップから空きデータページを探索す
る。割り当てるべきデータページを決定してページ操作
部2に通知する。このデータページはページ操作部2に
送られ,ページ管理手段6がページ操作部2からデータ
ページが通知される。ページ管理手段6はデータファイ
ル7から該当するデータページを読込んで,ページバッ
ファ(図示しない主記憶内のバッファ)に格納される。
【0027】また,ページ操作部2におけるページ解放
及びページ読込みの各操作も,それぞれ各ファイルの管
理手段3〜6による各ファイルを用いた動作により実現
される。
【0028】
【実施例】図2は本発明の実施例のシステム構成図であ
る。図2において,10はCPU及び主記憶を含む処理
装置,16は管理データ及びデータページを格納する二
次記憶装置,17はディスプレイ装置,18はキーボー
ドである。処理装置10内の11はメイン制御部,12
は各アプリケーションに対応する処理を行う応用処理
部,13はページ操作部,14a〜14dはグループマ
スクロード,メタマップロード/セーブ,ページ管理マ
ップロード/セーブ及びデータページロード/セーブの
それぞれを実行する処理部,15a〜15fは主記憶上
の複数のエリアにそれぞれ格納されたデータを表し,1
5eは共通制御テーブル,15fはページ・バッファ,
15aはグループマスク,15bはメタマップ,15c
はページ管理マップ,15dはページ・アドレス・リス
トである。
【0029】図2のシステムは,キーボード18とディ
スプレイ装置17により応用処理部12が,ページ操作
部13に対してリレーションのデータを格納するページ
の割り当て,解放,主記憶への一括読込みを要求する。
応用処理部12で加工,計算の対象となるリレーション
のデータは,主記憶上のページ・バッファ15f上に一
括して読み込まれる。共通制御テーブル15eは,応用
処理部12からのページ操作に対する,ページの割り当
て,解放,読込みのそれぞれのコマンド要求,ページ操
作対象となるリレーションの識別等の応用処理とページ
操作部に対しインタフェース情報,及び現在の状態に対
応する情報を簡易化するために設けられている。
【0030】図3は本発明による各管理情報相互の関係
及びデータページとの関係の説明図である。図3のA.
はリレーション別グループマスク(GMSK)であり,
これは各リレーション(例えば,「シンボル」,「ピ
ン」,「ネット」等)毎に,リレーションの個数だけ設
けられ,各GMSKのサイズはリレーション数(mとす
る)のビットのサイズを備える。各リレーションのGM
SKの各ビットはそのビット位置の番号に対応する他の
リレーションとの関係を表すフラグを構成する。各ビッ
トのフラグは,リレーション毎のページを近接配置すべ
きリレーション(これをフレンド・リレーションとい
う)か,近接配置すべきでないリレーション(これを排
他リレーションという)かを表し,例えばフレンド・リ
レーションの場合,フラグを“1”とし,排他リレーシ
ョンの場合はフラグを“0”とする。なお,リレーショ
ングループは,リレーショングループマスク定義という
場合もある。
【0031】図3のB.はリレーション別メタマップ
(MMAP)であり,これは空きページのためのリレー
ション0と,データページが存在するリレーションの数
分(m個)のメタマップが設けられる。リレーション1
〜リレーションmの各数値1,2・・mはリレーション
識別(情報)という。各MMAPのサイズは,各MMA
Pに属するページマップ(PMAP)のページ数に対応
したビットのサイズとなる。各ビット位置のフラグが,
対応するPMAP上に,それぞれ空きページ(“0”)
であるか,または当該リレーションのページが存在する
(“1”)か否か(“0”)を表している。
【0032】図3のC.は,ページマップ(PMAP)
であり,ある特定数(この例では,Sp個とする)のデ
ータページ単位で1ページを構成し,PMAPのページ
は全データベースに対応して管理できる数分設けられ,
図の例ではSm個(Pmaxをデータ・ページの最大数
として,Sm=Pmax/Sp)のPMAPが設けられ
ている。各PMAPには,Sp個の各データページにつ
いて,空きページなのか,またはどのリレーションに対
応したデータページなのかのリレーション識別を記録し
ている。この例では,空きページも一種のリレーション
として,リレーション0として表している。実際の応用
処理で利用されるデータが入るリレーションは,リレー
ション1以降となっている。図3のD.はデータページ
であり,各データページにはリレーションのデータが格
納されている。
【0033】図4は実施例の全体の処理のフローチャー
トである。この処理フローでは,説明を簡単にするため
に,リレーション・グループ(リレーショングループマ
スク定義)とメタマップの情報は充分小さいものとす
る。更にページマップの情報はリレーションのデータを
格納したページ・バッファ(図2の15f)とは独立し
て,常に1ページ分のページマップ情報しか主記憶に存
在せず,必要に応じてページマップのページをスワッピ
ング(使用しないページを二次記憶装置へ戻し,必要な
ページを主記憶へロード)し,当該ページマップのペー
ジに更新があった場合には,そのスワッピングのタイミ
ングで更新内容をページマップのファイルにセーブす
る。
【0034】図4において,リレーション・グループ
(リレーショングループマスク定義)16aとメタマッ
プ16bはシステム起動時に初期ロードにより二次記憶
装置(図2の16)から一括して主記憶にロードされる
(図4のS1〜S3)。必要なデータがロードされた
後,データ処理が行われる(図4のS4)。この時,応
用処理部(図2の12)によるコマンドを受付けて対応
するページ操作(割り当て,解放,読込み)が実行され
ると共に,応用処理固有のデータ操作(計算等)が行わ
れる(S5〜S7)。
【0035】一通りの応用処理が完了すると,主記憶上
に存在する更新データを一括セーブする(図4のS8〜
S11)。具体的には,現在ロードされているカレント
ページマップのページが更新されていればそれをセーブ
し,データページとページマップについては,この時点
で一括セーブされる。
【0036】以下,ページ操作における,ページの割り
当て,解放,読込みの各操作について図を用いて説明す
る。図5はページ割り当ての処理のフローチャート,図
6,図7はMMAP(リレーション別メタマップ)によ
るページ割り当てPMAP(ページマップ)の決定処理
のフローチャート,図8,図9はページ割り当て対象ペ
ージマップの決定の具体例を示す図,図10はカレント
PMAPのルックアップ処理のフローチャート,図11
は共通制御テーブル(図2の15e)の構成例である。
【0037】図5のページ割り当て処理において,最初
にページ割り当て対象PMAPの決定の処理(同図S
1)が,図6,図7に示す処理フローにより実行され
る。この処理では,以下に詳細に説明するように,割り
当て対象データ・ページを管理するPMAPのページ・
アドレスをPmとする。この時点で,当該PMAPに割
り当て対象リレーションが無ければ,すなわち〔MMA
P(リレーション別メタマップ)−r〕のビット位置P
mの値が0の時,当該MMAPのビット位置を“1”と
する。
【0038】図6,図7のページ割り当て処理のフロー
を図8,図9に示す具体例を参照しながら説明する。図
6において,最初に割り当て対象リレーションのGMS
Kを取得する(図6のS1)。すなわち,割り当てよう
とするリレーションが特定(リレーションの識別情報を
持つ)されているので,そのリレーションに対応するG
MSKを取り出す。GMSKは,リレーション識別の順
の配列であり,当該GMSKの各ビット値が0の時排他
リレーション,1の時フレンド・リレーション(近接配
置対象)である。
【0039】図8の例の場合,Aとして示すリレーショ
ン別グループマスク(GMSK)の場合,リレーション
1〜リレーション4までの4つ有る例であり,割り当て
対象となるリレーションがリレーション1であるものと
する。このリレーション1の内容はBとして示されてい
るように,各ビットのフラグは,リレーション1(自リ
レーション)とリレーション2との関係は,フラグが
“1”であるからフレンド・リレーション(近接配置対
象)であり,リレーション3,リレーション4との関係
はフラグが“0”であるから排他リレーションであるこ
とを表す。
【0040】次に,図6においてフレンド/排他メタマ
ップを作成する(同S2)。この処理の内容は,最初に
FMAP(フレンド・メタマップ)とXMAP(排他メ
タマップ)を0クリアする。次にGMSKのビット幅
分,以下の処理を繰り返す。但し,繰り返し回数をi
(最初i=1)とし,共通制御テーブル(図2の15
e,内容は後述する図11に示す))のカレントGMS
Kの各ビットiについて,図6のS4〜S7の処理を繰
り返す。
【0041】すなわち,MMAP−iを取り出し(同S
4),GMSKのビットiを識別し(同S5),“1”
ならはFMAPにMMAP−iを論理和し(同S6),
“0”ならFMAPにXMAP−iを論理和する(同S
7)。この処理の後,得られたXMAP(排他メタマッ
プ)を反転して(同S7),後の処理のため保存してお
く。
【0042】図8の例の場合,リレーション1のGMS
KはBに示すように「1100」であり,先頭のビット
が“1”であるから,FMAP(最初は0にクリアされ
ている)のビット列とCに示すMMAPのリレーション
1のビット列とを同じビット同士で論理和して,FMA
Pが得られる。この内容は,リレーション1の内容と同
じになる。次に図6のS4に戻って,「1100」の2
番目のビットを判断するとこれも“1”であるから,M
MAP(Cに示す)のリレーション2と先に得られたF
MAPと同様に論理和をとると,Dに示すフレンド・メ
タマップが得られる。GMSKの3番目のビットは
“0”であるから,XMAP(これも最初は0にクリア
されている)と論理和がとられる。次の4番目のビット
も“0”であるから,XMAPとの論理和がとられる
と,図8のEに示すようなXMAPが得られる。このX
MAPを反転する(図6のS8)ことによりFに示す排
他メタマップが得られる。
【0043】なお,フレンド・メタマップは,近接配
置すべき関係を持つ複数のリレーションの何れか一つが
格納されているページマップの番号(“1”となってい
るビット位置に対応)が表示される。また,排他メタマ
ップ(XMAPを反転したもの)は,排他関係のリレ
ーション(近接配置すべきでないリレーション)が格納
されているページマップの番号(“1”となっているビ
ット位置)が表示される。
【0044】図6に戻って,次にFMAPとXMAPの
論理積をとり,結果はフレンド排他メタマップ(FXM
APという)とする(図6のS9)。この例は図8にお
いてGに示すフレンド排他メタマップ(=&)と
して示される。このFXMAPは,フレンドの関係を持
つリレーションが存在するページマップと排他関係にあ
るリレーションが存在しないページマップが一致する位
置を表している。
【0045】次に図7に移行して,割り当て対象メタマ
ップ(AMAPという)を作成する(図7のS10)。
そのため,リレーション別メタマップのリレーション0
(空きのデータページを含むページマップの位置を表す
リレーション:MMAP−0で表示)と前記FXMAP
の論理積をとり,その結果が全て“0”か判別する(同
S11),この論理積の結果が“0”でない時は,AM
APとしてその論理積の結果を採用する(同S12)。
【0046】このS12の例は,図8のCに示すリレー
ション0のケース1の場合であり,図9のa.に示す例
である。すなわち,図8のCのリレーション0のケース
1のメタマップと,Gに示すFXMAPとを論理積す
ると,「10000000」となり,ページマップ1(先頭の1
のビット位置がページマップ1を表す)内の空きデータ
ページを探せば良いことが分かる。
【0047】次に図7のS11で“0”である場合,M
MAP−0とFMAPとを論理積して,結果が全て
“0”か判別する(図7のS12)。この結果“0”で
無ければ,この論理積の結果をAMAPとする(同S1
3)。この例は,図8のリレーション0のケース2の場
合であり,図9のb.に示す。すなわち,図8のCのケ
ース2のメタマップと,Gに示すFXMAPとの論理
積は全て“0”となるため,前記ケース2のメタマップ
と図8のDに示すFMAPとの論理積をとると,ペー
ジマップ2に対応するビットだけが“1”となり,この
ページマップ(PMAP)2内の空きデータページを探
すことにより決定する。
【0048】図7のS11,S13の何れの場合も論理
積が“0”となった場合,MMAP−0とXMAPとを
論理積する(同S15)。この結果が“0”でなけれ
ば,この論理積の結果をAMAPとする(同S16)。
この例は,図8のリレーション0のケース3の場合であ
り,図9のcに示す。すなわち,図8のリレーション0
のケース3のメタマップと図8のFXMAPとの論理
積及びFMAPとの論理積の何れの場合も結果は
“0”であるが,図8のFのXMAPとの論理積では
“0”とはならず,第8番目のビットのフラグが“1”
であるから,ページマップ(PMAP)8内の空きデー
タページを探すことになる。
【0049】次に図7において,上記S11,S13及
びS15の何れでも論理積が“0”となった時は,MM
AP−0が“0”か判断し(同S17),“0”でない
場合は,MMAP−0をそのままAMAP(割り当て対
象メタマップ)とする(同S18)。“0”の場合はデ
ータページの容量不足とする。この場合,フレンド・リ
レーションや排他リレーションの関係を無視して,空き
があればどこでもよいものとする場合である。この例
は,図8のCのリレーション0のケース4の場合であ
り,図9のdに示す。この場合,ページマップ(PMA
P)7内の空きデータページを探すことになる。
【0050】図7のS10〜S18により割り当て対象
メタマップ(AMAP)が作成されると,割り当て対象
PMAP(ページマップ)のページ・アドレスを決定す
る(図7のS19)。この場合,割り当て対象メタマッ
プ(AMAP)のビット値が“1”である位置が,割り
当て対象ページマップ(PMAP)のページ・アドレス
Pmとなる。次に当該PMAP内の割り当て対象リレー
ションの識別情報(リレーションを特定する名称または
番号)は新規に発生したか判断する(同S20)。すな
わち,リレーション・メタマップ(MMAP)のr(r
は割り当て対象リレーションの識別情報)のデータ(M
MAP−rで表す)のビット位置Pm(上記S19で決
定したページ・アドレス)の値が“0”か判断する(図
7のS20)。“0”の場合は,割り当て対象リレーシ
ョンに対するMMAPを更新する(同S21)。すなわ
ち,MMAP−rのビット位置Pmを“1”とする。も
し,ビット位置Pmの値が“1”の場合は終了する。
【0051】図5に戻って,ページ割り当て対象PMA
Pの決定(図5のS1)が終了すると,次にカレントP
MAPのルックアップ(Look Up)が行われる。ここで
は, 決定された割り当て対象データ・ページを管理する
PMAP(Pm)をカレントPMAPとする処理が行わ
れ,既にロード済のカレントPMAPと異なる場合はス
ワッピングされる。
【0052】このカレントPMAPのルックアップの処
理フローを図10に示す。ここで,図11に示す共通制
御テーブル(図2の15e)の構成例を説明する。この
テーブルに格納されているデータは,特定の状態におけ
るデータの例である。
【0053】図11の先頭のaはコマンド区分であり,
現在処理を行っているコマンドの種別を表し,この例で
は「割り当て(ALLOCATE) 」である。次のbはページ割
り当ての対象となるリレーション識別(識別情報)であ
り,この状態では「リレーション1」となっている。c
はカレント・データページのページ・アドレス,dはカ
レント・データページのバッファ・ポインタ,eはカレ
ントPMAPのページ・アドレス,fはカレントPMA
Pの更新フラグ,gはカレントGMSK,hはカレント
割り当て要求メタマップ,iはカレント読込み用メタマ
ップのそれぞれのデータが格納され,以下の各処理にお
いて参照及び更新される。
【0054】図10において,最初にカレントPMAP
が空きかを判断する(図10のS1)。この場合,共通
制御テーブル(図2の15e)に格納されているカレン
トPMAPのポインタがNULL(オール0)である
か,または最初のルックアップ要求であるかを識別す
る。カレントPMAPが空きの場合,後述するルックア
ップ要求のPMAPのロードのステップへ移行する。
【0055】カレントPMAPが空きで無い場合,カレ
ントPMAPのページ・アドレスがルック・アップ要求
のページ・アドレスと同じか判断し,同じ場合はリター
ン(終了)するが,同じでない場合は,カレントPMA
Pは更新されているか(共通制御テーブルのPMAP更
新フラグが“1”か)判断する(図10のS3)。更新
されている場合,カレントPMAPをセーブする(同S
4)。この場合,カレントPMAPのページ・アドレス
をシークし(図2の二次記憶装置16内),そのカレン
トPMAPの内容を書き込む。
【0056】更新されてない場合は,現在のカレントP
MAPの内容をセーブする必要がないので(二次記憶装
置に格納されている内容と同じ),ルックアップ要求の
PMAPをロードする(図10のS5)。すなわち,ル
ックアップ要求のPMAPのページ・アドレスにシーク
後,そのページ内容をリードして共通制御テーブルに格
納する。次に共通制御テーブルのPMAP更新フラグを
リセット(“1”)する(図10のS6)。
【0057】図5において,S2のカレントPMAPの
ルックアップ(上記の図9)の処理が終了すると,次に
カレントPMAP内の空きリレーション識別を探査する
(図5のS3)。この処理では,リレーション識別(識
別番号)が0のものを探し,最初に見つかった位置をP
0とする。次に,空きリレーション識別に割り当てリレ
ーション識別を設定する(図5のS4)。この処理は,
前記のP0の位置のリレーション識別に,割り当て対象
となるリレーション識別rを設定する。
【0058】続いてPMAP更新フラグを設定する(図
5のS5)。この処理では,共通制御テーブルのPMA
P更新フラグ(図11のf)を1とする。これにより,
次回の『カレントPMAPのルックアップ』時に,カレ
ントPMAPがスワッピングされる場合に,その内容が
セーブされる。
【0059】次にカレントPMAP内の空きリレーショ
ン識別が無くなったか判断する(図5のS6)。これ
は,上記S3のカレントPMAP内の空きリレーション
識別の探査時に,空きリレーション識別数を数え,その
数が1なら無くなったことを表すので,その数を識別す
る。無くなった場合,空きリレーションに対するMMA
P(MMAP−0)のビット位置Pmを0として,空き
リレーションに対するMMAPの更新を行う(図5のS
7)。この図5のS3〜S7で行われるページマップか
らのデータページの割り当ての例を図12,図13を用
いて説明する。
【0060】図12のa.はケース1の例で,ページマ
ップ(PMAP)1内の空きデータページを探す場合
で,この例ではデータページ1〜4の中でデータページ
3と4がリレーション0(空きリレーション)であるこ
とが分かり,この中のデータページ3をP0とし,該当
するデータページにリレーション識別としてリレーショ
ン1を設定する。この場合,このページマップにはまだ
空きデータページが残っているので,リレーション0の
メタマップ(MMAP)を更新しない。
【0061】b.はケース2の例であり,ページマップ
(PMAP)2内の空きデータを探すと,図に示すよう
にデータページ8がリレーション0であるから,このデ
ータページ8にリレーション1を設定する。この時,ペ
ージマップ2には,もう空きデータページが残っていな
いので(上記図5のS6の判断でYESの時),リレー
ション0のメタマップ(MMAP:図3の16b,図8
のC参照)の該当するビット位置を“1”にして更新す
る。
【0062】図13のc.はケース3の例であり,ペー
ジマップ(PMAP)8内の空きデータページを探す
と,全てリレーション0で,空きであるから先頭のデー
タページ29を選択し,そのデータページ29にリレー
ション1を設定する。この場合,このページマップ8に
は,初めてリレーション1のデータページが割り当てら
れたので,リレーション1のメタマップ(MMAP)を
更新してリレーション1のメタマップの第8ビットを
“1”にする。
【0063】図13のd.はケース4の例であり,ペー
ジマップ(PAMP)7内のデータページ28が空きリ
レーション0であるから,このデータページ28にリレ
ーション1を設定する。この場合,このページマップ7
には,もう空きデータページが残っていないので,リレ
ーション0のメタマップを更新して,該当する第7ビッ
トに“0”(塞がっている状態を表示)を設定する。ま
た,このページマップ7には,初めて,リレーション1
のデータページが割り当てられたので,リレーション1
のメタマップ(MMAP)を更新し,リレーション1の
メタマップの“0”を“1”に更新する。
【0064】次に図5において,割り当てられたデータ
ページ上のページアドレスを計算する(図5のS8)。
このカレント・データページ・アドレスPjは,次の計
算式により求められ,共通制御テーブルのカレント・デ
ータページ・アドレス(図11のc参照))に設定す
る。但し,SpはPMAPページ当たりのリレーション
識別の数である。
【0065】Pj=Pm×Sp+P0 次に割り当てられたページ・バッファ領域の確保を行う
(図5のS9)。これは,共通制御テーブルのカレント
・データページのバッファ・ポインタ(図11のd)に
確保された領域のポインタを設定し,ページ割り当て処
理が終了する。
【0066】次に,図4に示す全体の処理フローの中の
ページ操作におけるページ解放処理を,図14に示すペ
ージ解放処理のフローチャートを用いて説明する。最初
に解放対象データ・ページアドレスからPMAP(ペー
ジマップ)位置を決定する(図14のS1)。これは,
PMAPのページ・アドレスをPm,PMAP内のリレ
ーション識別の位置をP0とすると,次の計算式により
決定される。
【0067】Pm=Pj/Sp P0=Pj%Sp Pjはデータ・ページ・アドレス,SpはPMAPペー
ジ当たりのリレーション識別数である。
【0068】次にカレントPMAPをルックアップする
(図14のS2)。これは,解放対象データ・ページを
管理するPMAP(Pm)をカレントPMAPとし,既
にロード済のカレントPMAPと異なる場合は,スワッ
ピングされる。
【0069】次に,カレントPMAP内の解放対象デー
タ・ページのリレーション識別に空きリレーション識別
を設定する(図14のS3)。この処理は,カレントP
MAP内における解放対象データ・ページのリレーショ
ン識別の位置は,P0で示されるので,この位置のリレ
ーション識別の値は,解放対象リレーション識別の値r
から空きリレーション識別の値0に変える。
【0070】さらに,PMAP更新フラグを設定する
(図14のS4)。すなわち,共通制御テーブルのPM
AP更新フラグを1とし,これにより次回のカレントP
MAPのルックアップの時にカレントPMAPがスワッ
ピングされる場合に,その内容をセーブする。次にカレ
ントPMAP内の解放対象データ・ページのリレーショ
ン識別が無くなったか判断する(図14のS5)。すな
わち,この時点で,カレントPMAP内のリレーション
識別の値が,解放対象データ・ページのリレーション識
別の値rであるものの数を数え,その数が0なら無くっ
たことになる。
【0071】無くなった場合,解放対象データ・ページ
のリレーションに対するリレーション・メタマップ(M
MAP)の(MMAP−r)のビット位置Pmを0とす
る。次にカレントPMAP内の空きリレーション識別は
新規に発生したか判断する(図14のS7)。この時点
で,カレントPMAP内のリレーション識別の値が,空
きリレーション識別の値0であるものの数を数え,その
数が1なら新規に発生したことになる。
【0072】ここで,空きリレーションが新規に発生し
たことが分かると,空きリレーションに対するMMAP
を更新する(図14のS8)。すなわち空きリレーショ
ンに対するMMAP(MMAP−0)のビット位置Pm
を0にする。次に,カレントPMAP解放対象ページ・
バッファ領域を解放する(図14のS9)。すなわち,
共通制御テーブルのカレント・バッファ領域のポインタ
とカレント・データ・ページアドレスをNULL(不定
状態)とする。
【0073】上記に説明したデータページの解放処理の
具体例を図15に示す。図15のa.はケース1の例
で,ページマップ(PMAP)1内のデータページ3を
解放する場合である。図に示すように,データページ3
のリレーション1のデータが解放されると,このデータ
ページ3内のページ3のリレーション1を空きリレーシ
ョンを表すリレーション0にする。この時,PMAP1
には,もともと空きデータページが残っており,更にリ
レーション1のデータページが他のページ1に残ってい
るため,リレーション・メタマップのMMAP−0(空
きリレーションのメタマップ)やMMAP−1(リレー
ション1のメタマップ)の内容に変更が生じないので更
新されない。
【0074】図15のb.はケース2の例で,ページマ
ップ(PMAP)2内のデータページ8を解放する場合
である。この場合,図に示すようにページマップ2のデ
ータページ8からリレーション1が解放されて,リレー
ション0が設定されると,このページマップ2には新規
に空きデータページが発生したことになる。このため,
リレーション0のメタマップ(MMAP−0)が更新さ
れ,そのビット列の第2ビット目が“1”(空きがある
ことを表示)になる。
【0075】次に図16のc.はケース3の例で,ペー
ジマップ(PMAP)8内のデータページ29を解放す
る場合である。このデータページ29のリレーション1
を解放して,リレーション0に設定すると,PMAP8
にはもうリレーション1のデータページが残っていない
ので,リレーション1のメタマップ(MMAP−1)が
更新され,リレーション1のメタマップのビット列の最
終ビット(第8ビット)が“0”(リレーション1のデ
ータが格納されていないことを表示)となる。
【0076】図16のd.はケース4の例で,ページマ
ップ(PMAP)7内のデータページ28を解放する場
合である。このデータページ28のリレーション1をリ
レーション0(空きリレーション)に設定すると,この
ページマップ(PMAP)7には新規に空きデータペー
ジが発生したことになるので,リレーション0のメタマ
ップ(MMAP−0)が更新され,そのビット列の第7
ビットが“1”に設定される。
【0077】図4に示す全体の処理フローの中のページ
操作におけるページ読込み処理のフローチャートを図1
7に示す。最初に,メタマップ(MMAP)により読込
みページマップ(PMAP)を決定する(図17のS
1)。すなわち,読込み対象となる複数のリレーション
(例えば,rとs)に対するMMAPのビットの論理和
をとり,その内容を共通制御テーブルの読込み対象MM
AP(図11のi)に設定する。
【0078】次に,MMAPのビット幅だけ以下の処理
(S2〜S7)を繰り返す。この場合,各繰り返し回数
をiとし,共通制御テーブルの読込み用MMAPの各ビ
ットiについて,以下の処理を行う。
【0079】初めに,ビットiが0か判断する(図17
のS2)。0の場合は,次のビットについて処理を継続
し,1の場合は,カレントPMAPのルックアップを行
う(同S3)。この処理は,上記図10にフローチャー
トを示し説明したとおりであり,この場合,iをカレン
トPMAPのページアドレス(Pm)として,該当する
PMAPを主記憶に確保する。
【0080】次に読込み対象ページ数をリセットし(同
S4),カレントPMAP内の全リレーション識別につ
いて,以下の処理(S5,S6)を繰り返す。この時,
繰り返し回数をjとし,各リレーション識別をRjとす
る。
【0081】すなわち,リレーション識別が読込み対象
のリレーション識別か判断する(S5)。この判断は,
例えばRj=rまたは,Rj=sかの判断を行う。読込
み対象のリレーション識別である場合は,読込み対象ペ
ージ・アドレス・リスト(主記憶内に設けられた領域)
へ追加する。読込み対象でない場合は,カレントPMA
P内の次のリレーション識別について同じ処理を行う。
【0082】このS5,S6の処理をカレントPMAP
内の全リレーション識別について行った後,ページ・バ
ッファ(図2の15f)へのデータ・ページの読込みを
行う(図17のS7)。この場合,前記ページ・アドレ
ス・リストに格納されたデータ・ページについて,ペー
ジ・アドレスが連続していたり,アドレス間隔が小さい
場合,その単位でシークとリードを繰り返し,ページ・
バッファに読込む。MMAPの各ビットについて同様の
処理を繰り返して,ページ読込み処理が終了する。
【0083】図18は上記図17に説明したページ読込
み処理における読込み対象データページの決定の具体例
を示す。この例は,読込み対象のリレーション識別を,
リレーション1とリレーション2の2つとした場合であ
る。図に示すリレーション別メタマップ(MMAP)1
00から,リレーション1とリレーション2について論
理和を取ると,その結果の2つのリレーション1,2の
何れか一方を含むことを表すMMAP101が得られ
る。このMMAP101は,共通制御テーブルの読込み
対象MMAPとして設定される。この例では,リレーシ
ョン有無のビット列の中のビットが“1”となっている
ビット1,2,3及び5で表すPMAPが読込み対象と
なる。
【0084】図18の103は,MMAP101の先頭
のビット1により表すページマップ(PMAP)1を表
し,このPMAP1をカレントPMAPをルックアップ
(主記憶に確保)した上で読込み対象のリレーションが
存在するか否か識別する。この結果,データページ1に
リレーション1,データページ2にリレーション2が格
納されていることが識別される。この結果,レジスタ1
04に2ページが検出されたことを表す「2」を設定
し,ページ・アドレス・リスト105にデータページの
「1」,「2」を設定する。各ページ・アドレスはペー
ジ番号と対応付けられているので,ページ番号によりア
ドレスされる。
【0085】次にデータ・ページ・ファイル(二次記憶
装置内)102をシークして,ページ・アドレス・リス
ト105に格納された各ページ・アドレスからページ
1,2の2ページのデータをページ・バッファ(図2の
15f)に読込む。
【0086】このPMAP1の読込みが終了すると,次
にMMAP101のビットが“1”となっている次の第
2ビットを検出し,このビット位置に対応するPMAP
2をルックアップする。続いて,106で示すPMAP
2について上記と同様の処理を行う。この例では,PM
AP2内のデータページ5にリレーション1が存在する
ので,レジスタ107のページ数として1がセットさ
れ,ページ・アドレス・リスト108に5がセットさ
れ,データページ・ファイル102からデータページ5
が読み込まれる。他のPMAP3及びPMAP5につい
ても図18に示すようにそれぞれ読込みが行われる。
【0087】上記の実施例では,メタマップ情報(MM
AP)としてビット表現を用いたが,この代わりに各P
MAP内の空きページ及びリレーション毎のデータペー
ジの個数を管理するように構成してもよい。この場合,
PMAP単位でのページ割り当て,解放に伴う空きペー
ジ及び各リレーションのデータページの新規発生と残り
無しの判断,及びそれに伴うPMAP内でのデータペー
ジ数のカウント処理が省略できる。しかし,リレーショ
ン別メタマップ(MMAP)のサイズが極端に大きくな
る。例えば,PMAP毎に256ページのデータページ
の対応を記録するなら,MMAPは2の8乗,即ちビッ
ト表現に比べて8倍以上の大きさが必要になる。この場
合,MMAPを一括して主記憶上に常駐化することと,
MMAPのフレンド/排他メタマップ等のビット演算の
オーバーヘッドが増大する点で問題がある。
【0088】また,この実施例では1ページ内には1種
類のリレーションのデータ(レコード)しか格納しない
ことにしているが,レコードレベルのクラスタリングと
併用する場合には,1ページに複数リレーションのデー
タが混在することになる。これを実現するためには,同
一ページに混在可能なリレーションのグループをクラス
タリング・グループとしてリレーション・グループ,メ
タマップ,ページマップにおけるリレーションに対する
管理情報や処理を,このクラスタリング・グループに対
するものとし,且つ,データページ内のレコードに,そ
のレコードがどのリレーションに属するかの識別を持た
せることにより,上記に説明したと同様の操作と作用を
以て容易に拡張して適用できる。
【0089】
【発明の効果】本発明によれば空きぺージと共にリレー
ション別のぺージの所在をぺージマップ情報で管理して
いるため,各リレーションのデータを格納したぺージを
読込む際にぺージ(またはぺージ内のレコード)のアド
レス・リンクをたどることなく,ぺージマップに記録さ
れた当該リレーションをその物理的順序にそって読込む
ことができ,シーク回数を削減して,リレーション単位
のぺージ読込みを高速化できる。そして,ぺージマップ
上での空きぺージ及びリレーション別の存在有無をメタ
マップ管理情報で管理するため,読込み対象ぺージの存
在するぺージマップを迅速に探すことができる。
【0090】また,関連し合う複数リレーションについ
てのデータを格納したページを読込む場合も,メタマッ
プ同士の集合関係演算を行うことにより,同様にページ
マップを探すことにより実現できる。
【0091】さらに,リレーションのメタマップとして
互いに関連し合い近接配置すべきリレーション(フレン
ド・リレーション)と,関連性がなく近接配置すべきで
ないリレーション(排他リレーション)の各メタマップ
及び,空きページのメタマップについての集合関係演算
を行うことにより,ページ・レベルでのクラスタリング
を促進し,関連し合うデータが同一ページ内に収まらな
い場合でもクラスタリングを高めることができる。
【0092】また,上記フレンド・リレーションと排他
リレーションとの関係をリレーション・グループ情報で
管理しているため,相互に集合関係演算対象となるメタ
マップを容易に特定でき,ページ割り当て先ページマッ
プを迅速に決定することができる。
【0093】このようにして,ぺージ・レベルの高いク
ラスタリングと関連し合うリレーションの高速な読込み
を実現することができる。
【図面の簡単な説明】
【図1】本発明の原理構成図である。
【図2】本発明の実施例のシステム構成図である。
【図3】本発明による各管理情報相互の関係及びデータ
ページとの関係の説明図である。
【図4】実施例の全体の処理のフローチャートである。
【図5】ページ割り当ての処理のフローチャートであ
る。
【図6】MMAPによるページ割り当てPMAPの決定
処理のフローチャート(その1)である。
【図7】MMAPによるページ割り当てPMAPの決定
処理のフローチャート(その2)である。
【図8】ページ割り当て対象ページマップの決定の具体
例を示す図(その1)である。
【図9】ページ割り当て対象ページマップの決定の具体
例を示す図(その2)である。
【図10】カレントPMAPのルックアップ処理のフロ
ーチャートである。
【図11】共通制御テーブルの構成例である。
【図12】ページマップからのデータページの割り当て
の例を示す図(その1)である。
【図13】ページマップからのデータページの割り当て
の例を示す図(その2)である。
【図14】ページ解放処理のフローチャートである。
【図15】データページの解放処理の具体例を示す図
(その1)である。
【図16】データページの解放処理の具体例を示す図
(その2)である。
【図17】ページ読込み処理のフローチャートである。
【図18】読込み対象データページの決定の具体例を示
す図である。
【図19】クラスタリングの概念を示す図である。
【符号の説明】
1 管理用ファイル 1a リレーショングループ定義ファイル 1b メタマップファイル 1c リレーション別ページマップファイル 2 ページ操作部 3 ページマップ管理手段 4 メタマップ管理手段 5 リレーション・グループ管理手段 6 ページ管理手段 7 データファイル

Claims (11)

    (57)【特許請求の範囲】
  1. 【請求項1】 複数リレーション毎のデータを格納する
    ファイル上のぺージの配置管理を行うファイルの格納管
    理方法において,各リレーションのデータをぺージ単位
    で格納したデータファイルと,空きページ及び各リレー
    ション別のデータを格納したデータページのファイル上
    での所在を表す情報を格納するぺージマップファイル
    と,空きページ及び各リレーションの各ページマップ上
    での所在の有無を表すメタマップ情報を格納したメタマ
    ップファイルと,各リレーションが他のリレーションと
    互いに関連し合い近接配置すべきリレーション(フレン
    ド・リレーション)か,互いに関連性がなく近接配置す
    べきでないリレーション(排他リレーション)かの関係
    を表す情報を格納したリレーショングループ定義ファイ
    ルとを備え,前記データファイルを管理するページ管理
    手段,ぺージマップファイルを管理するぺージマップ管
    理手段,メタマップファイルを管理するメタマップ管理
    手段,及びリレーショングループ定義ファイルを管理す
    るリレーション・グループ管理手段を備え,前記各ファ
    イルの管理手段を操作するページ操作部を備え,該ペー
    ジ操作部は,データをリレーション別のページへの割り
    当て,ページの解放及び読み込み対象となるリレーショ
    ンのページを探索して読込みの各操作を行うことを特徴
    とするファイル格納管理方法。
  2. 【請求項2】 請求項1において,前記ぺージマップフ
    ァイルには,ぺージの順番に対応して,各ぺージの使用
    /空き状態を表し,空きぺージの場合には空きぺージで
    ある識別を,使用ぺージの場合にはそのぺージが格納し
    ているデータが所属するリレーションの識別とを合わせ
    て記録し,前記ぺージマップ管理手段は,ページ操作部
    による読込み操作により特定リレーションのぺージを読
    込む時,前記ぺージマップファイルから使用ぺージの内
    読込み対象となる当該リレーションの識別を有するぺー
    ジの番号からそのぺージ・アドレスを順次探査し,ぺー
    ジ割り当ての操作によりぺージの割り当てを行う時に,
    前記ぺージマップファイルから空きぺージの識別を有す
    るぺージの番号からそのぺージ・アドレスを探索するこ
    とを特徴とするファイル格納管理方法。
  3. 【請求項3】 請求項1において,前記メタマップファ
    イルには,前記ぺージマップ情報を格納したぺージマッ
    プ・ぺージの順番に対応して空きぺージ及び各リレーシ
    ョン毎の存在有無を表したフラグが記録され,前記メタ
    マップ管理手段は,前記ページ操作部によるぺージ割り
    当て操作において,ぺージ割り当て時にぺージ割り当て
    先ぺージマップ・ぺージ内の空きぺージがなくなると,
    空きぺージに対する前記メタマップファイルの当該ぺー
    ジマップ・ぺージの番号に対応したフラグを無し状態と
    し,割り当て対象リレーションのページが当該ページマ
    ップ・ページ内に新規に割り当てられると当該リレーシ
    ョンに対する前記メタマップ情報の対応したフラグを存
    在状態にし,ページ解放の操作において,ページ解放し
    た時にページ割り当て先ページマップ・ページ内の解放
    対象リレーションのページが無くなると,当該リレーシ
    ョンに対する前記メタマップ情報の当該ページマップ・
    ページ番号に対応したフラグを無し状態にし,空きペー
    ジが当該ページマップ内に新規に発生すると,空きペー
    ジに対する前記メタマップ情報の当該ページマップ・ペ
    ージの番号に対応したフラグを存在状態にすることを特
    徴とするファイル格納管理方法。
  4. 【請求項4】 請求項3において,前記メタマップ管理
    手段は,リレーション単位のページ読込みにおいて,読
    込み対象のリレーションに対する前記メタマップ情報に
    記録された各ページマップ上での存在の有無に従い,当
    該リレーションのページが存在するページマップを特定
    することを特徴とするファイル格納管理方法。
  5. 【請求項5】 請求項3において,前記メタマップ管理
    手段は,複数リレーションのページ読込みに際し,読込
    み対象の複数リレーションに対する前記メタマップ情報
    間で論理和をとった結果のページマップ上での存在の有
    無に従い複数の当該リレーションのページが存在するペ
    ージマップを特定することを特徴とするファイル格納管
    理方法。
  6. 【請求項6】 請求項3において,前記メタマップ管理
    手段は,ページ操作部のページ割り当てにおいて,割り
    当て対象のリレーションと共に,フレンド・リレーショ
    ンに対する前記メタマップ情報間で論理和をとったフレ
    ンド・メタマップと,空きページに対する前記メタマッ
    プ情報間での論理積をとり,その結果に基づきページの
    存在するページマップを特定することを特徴とするファ
    イル格納管理方法。
  7. 【請求項7】 請求項6において,前記メタマップ管理
    手段は,ページ操作部のページ割り当てにおいて,排他
    リレーションに対する前記メタマップ情報間で論理和を
    とり,それを反転した結果(排他メタマップ)と,空き
    ページに対する前記メタマップ情報間で論理積をとり,
    その結果に基づき空きページの存在するページマップを
    決定することを特徴とするファイル格納管理方法。
  8. 【請求項8】 請求項7において,前記メタマップ管理
    手段は,ページ操作部のページ割り当てにおいて,前記
    フレンド・メタマップと前記排他メタマップとの論理積
    を取った結果であるフレンド排他メタマップと,空きペ
    ージに対する前記メタマップ情報間での論理積をとり,
    その結果に基づき,空きページの存在するページマップ
    を特定することを特徴とするファイルの格納管理方法。
  9. 【請求項9】 請求項8において,前記メタマップ管理
    手段は,ページ操作部のページ割り当てにおいて,最初
    に前記フレンド排他メタマップと空きページに対する前
    記メタマップ情報間での第1の論理積演算し,その結果
    空きページの存在するページマップが有ると,該ページ
    マップから割り当て対象ページを探索し,前記第1の論
    理積演算により空きページの存在するページマップが無
    いと,前記フレーム・メタマップまたは前記排他メタマ
    ップと空きページに対する前記メタマップ情報間での第
    2の論理積演算し,空きページが存在するページマップ
    が有ると該ページマップから割り当て対象ページを探索
    し,前記第2の論理積演算により空きページの存在する
    ページマップが無いと,単に空きページに対する前記メ
    タマップ情報に基づき割り当て対象ページを探査すべき
    ページマップを特定することを特徴とするファイル格納
    管理方法。
  10. 【請求項10】 請求項6乃至9において,前記リレー
    ショングループ管理手段は,前記リレーショングループ
    定義ファイルを管理し,ページ操作部のページ割り当て
    において,前記フレンドメタマップ及び前記排他メタマ
    ップを求めるための前記複数メタマップ情報間での論理
    和をとるため,割り当て対象リレーションに対するフレ
    ンド・リレーションのメタマップ情報と排他リレーショ
    ンのメタマップ情報とを特定することを特徴とするファ
    イル格納管理方法。
  11. 【請求項11】 一つのページ上に複数のリレーション
    のデータが混在する,レコード・レベルのクラスタリン
    グを行うファイルにおける複数リレーションのデータを
    格納するファイル上のページの配置管理を行うファイル
    格納管理方法において,同一ページに混在するリレーシ
    ョン同士をクラスタリング・グループとし,請求項1に
    記載の前記ページマップ管理手段,前記メタマップ管理
    手段及び前記リレーション・グループ管理手段における
    リレーションに対する操作及び管理を前記クラスタリン
    グ・グループに対して実行し,ページ内のレコードに
    は,各リレーションの識別を備えることを特徴とする請
    求項1に記載のファイル格納管理方法。
JP26046992A 1992-09-30 1992-09-30 ファイル格納管理方法 Expired - Fee Related JP2865500B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP26046992A JP2865500B2 (ja) 1992-09-30 1992-09-30 ファイル格納管理方法
US08/129,853 US5418949A (en) 1992-09-30 1993-09-30 Page map, metamap, and relation group file management supervised by operation means for allocating, storing, and searching friendly and exclusive data items

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP26046992A JP2865500B2 (ja) 1992-09-30 1992-09-30 ファイル格納管理方法

Publications (2)

Publication Number Publication Date
JPH06110744A JPH06110744A (ja) 1994-04-22
JP2865500B2 true JP2865500B2 (ja) 1999-03-08

Family

ID=17348386

Family Applications (1)

Application Number Title Priority Date Filing Date
JP26046992A Expired - Fee Related JP2865500B2 (ja) 1992-09-30 1992-09-30 ファイル格納管理方法

Country Status (2)

Country Link
US (1) US5418949A (ja)
JP (1) JP2865500B2 (ja)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3666907B2 (ja) * 1994-10-20 2005-06-29 富士通株式会社 データベース用ファイル格納管理システム
US5915252A (en) * 1996-09-30 1999-06-22 International Business Machines Corporation Object oriented framework mechanism for data transfer between a data source and a data target
US5812130A (en) * 1996-12-06 1998-09-22 International Business Machines Corporation Data management system and method for concurrent engineering
US6035297A (en) * 1996-12-06 2000-03-07 International Business Machines Machine Data management system for concurrent engineering
US6088693A (en) * 1996-12-06 2000-07-11 International Business Machines Corporation Data management system for file and database management
US5826265A (en) * 1996-12-06 1998-10-20 International Business Machines Corporation Data management system having shared libraries
US5920873A (en) * 1996-12-06 1999-07-06 International Business Machines Corporation Data management control system for file and database
US5950201A (en) * 1996-12-06 1999-09-07 International Business Machines Corporation Computerized design automation method using a single logical PFVL paradigm
US5878408A (en) * 1996-12-06 1999-03-02 International Business Machines Corporation Data management system and process
US5920867A (en) * 1996-12-06 1999-07-06 International Business Machines Corporation Data management system having data management configuration
US5864875A (en) * 1996-12-06 1999-01-26 International Business Machines Corporation Data management system for problems, releases and parts
US6654747B1 (en) * 1997-12-02 2003-11-25 International Business Machines Corporation Modular scalable system for managing data in a heterogeneous environment with generic structure for control repository access transactions
US5966707A (en) * 1997-12-02 1999-10-12 International Business Machines Corporation Method for managing a plurality of data processes residing in heterogeneous data repositories
US6275830B1 (en) * 1998-03-18 2001-08-14 Oracle Corporation Compile time variable size paging of constant pools
US6327594B1 (en) 1999-01-29 2001-12-04 International Business Machines Corporation Methods for shared data management in a pervasive computing environment
US7660740B2 (en) * 2000-10-16 2010-02-09 Ebay Inc. Method and system for listing items globally and regionally, and customized listing according to currency or shipping area
US6449833B1 (en) * 2001-01-11 2002-09-17 Jessup Engineering Inc. Automation apparatus for installing and removing a metal finishing barrel locking cover
US7752266B2 (en) 2001-10-11 2010-07-06 Ebay Inc. System and method to facilitate translation of communications between entities over a network
US8078505B2 (en) 2002-06-10 2011-12-13 Ebay Inc. Method and system for automatically updating a seller application utilized in a network-based transaction facility
US7941348B2 (en) * 2002-06-10 2011-05-10 Ebay Inc. Method and system for scheduling transaction listings at a network-based transaction facility
US7302483B1 (en) * 2002-09-27 2007-11-27 At&T Bls Intellectual Property, Inc. Job analysis and workflow application
US7558265B2 (en) * 2003-01-31 2009-07-07 Intel Corporation Methods and apparatus to limit transmission of data to a localized area
US20040199421A1 (en) * 2003-04-04 2004-10-07 Oda Lisa Maureen Method and system to discharge a liability associated with a proprietary currency
US9881308B2 (en) 2003-04-11 2018-01-30 Ebay Inc. Method and system to facilitate an online promotion relating to a network-based marketplace
US7296043B2 (en) * 2003-05-30 2007-11-13 Microsoft Corporation Memory file size adjustment
US20070011130A1 (en) * 2003-06-03 2007-01-11 Shinji Yamabuchi Method for browsing contents using page storing file
US7742985B1 (en) 2003-06-26 2010-06-22 Paypal Inc. Multicurrency exchanges between participants of a network-based transaction facility
WO2005010766A1 (ja) * 2003-07-24 2005-02-03 Fujitsu Limited データ格納システム
US9189568B2 (en) 2004-04-23 2015-11-17 Ebay Inc. Method and system to display and search in a language independent manner
US7703673B2 (en) 2006-05-25 2010-04-27 Buchheit Brian K Web based conversion of non-negotiable credits associated with an entity to entity independent negotiable funds
US8668146B1 (en) 2006-05-25 2014-03-11 Sean I. Mcghie Rewards program with payment artifact permitting conversion/transfer of non-negotiable credits to entity independent funds
US8684265B1 (en) 2006-05-25 2014-04-01 Sean I. Mcghie Rewards program website permitting conversion/transfer of non-negotiable credits to entity independent funds
US10062062B1 (en) 2006-05-25 2018-08-28 Jbshbm, Llc Automated teller machine (ATM) providing money for loyalty points
US9704174B1 (en) 2006-05-25 2017-07-11 Sean I. Mcghie Conversion of loyalty program points to commerce partner points per terms of a mutual agreement
US8639782B2 (en) 2006-08-23 2014-01-28 Ebay, Inc. Method and system for sharing metadata between interfaces
US8223361B2 (en) * 2006-10-11 2012-07-17 Sharp Laboratories Of America, Inc. Empty job detection for direct print
US20080147479A1 (en) * 2006-12-19 2008-06-19 Ebay Inc. Proprietor currency assignment system and method
CN103186636A (zh) * 2011-12-31 2013-07-03 北大方正集团有限公司 一种移动设备中可阅读文件的加载方法及系统
US9654549B2 (en) 2015-05-18 2017-05-16 Somchai Akkarawittayapoom Systems and methods for creating user-managed online pages (MAPpages) linked to locations on an interactive digital map
US10296569B2 (en) 2015-05-18 2019-05-21 Somchai Akkarawittayapoom Systems and methods for creating user-managed online pages (MAPpages) linked to locations on an interactive digital map

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4536837A (en) * 1982-05-25 1985-08-20 Elxsi Improved disk file allocation and mapping system utilizing cylinder control blocks and file map having unbalanced tree structure
US4611272A (en) * 1983-02-03 1986-09-09 International Business Machines Corporation Key-accessed file organization
US4680703A (en) * 1984-06-25 1987-07-14 International Business Machines Corp. Data processing system with reorganization of disk storage for improved paging
JPS62209616A (ja) * 1986-03-11 1987-09-14 Fujitsu Ltd デ−タベ−ス集合演算処理方式
US4989134A (en) * 1987-03-20 1991-01-29 Hewlett-Packard Company Method and apparatus for enhancing data storage efficiency
US5280599A (en) * 1989-01-09 1994-01-18 Kabushiki Kaisha Toshiba Computer system with memory expansion function and expansion memory setting method
US5146580A (en) * 1989-10-25 1992-09-08 Microsoft Corporation Method and system for using expanded memory for operating system buffers and application buffers
US5204958A (en) * 1991-06-27 1993-04-20 Digital Equipment Corporation System and method for efficiently indexing and storing a large database with high data insertion frequency

Also Published As

Publication number Publication date
US5418949A (en) 1995-05-23
JPH06110744A (ja) 1994-04-22

Similar Documents

Publication Publication Date Title
JP2865500B2 (ja) ファイル格納管理方法
EP0662228B1 (en) Apparatus for data storage and retrieval
US5261088A (en) Managing locality in space reuse in a shadow written B-tree via interior node free space list
US7647355B2 (en) Method and apparatus for increasing efficiency of data storage in a file system
US5548751A (en) Dynamic data storage system allowing variable size records and fields by using linked record segments
JP3218007B2 (ja) インデックスの管理装置,更新方法及び管理方法並びにコンピュータ読取可能な記憶媒体
JPS6037048A (ja) データ・ベースにデータを記憶する方法およびデータ・ベース・システム
JP3666907B2 (ja) データベース用ファイル格納管理システム
JP2675958B2 (ja) 情報検索用計算機システム及びその記憶装置の動作方法
JPH06103128A (ja) 記憶装置
JP2615046B2 (ja) レコード追加処理方法
JPS63239540A (ja) 記憶媒体におけるデ−タ管理方式
JPH07104804B2 (ja) データベース世代管理方法
JP2785966B2 (ja) 外部キー動的解決処理方法
JPH0474232A (ja) タスク実行方法及びキャッシュ装置の割り当て方法
KR20030044498A (ko) 주기억 장치 데이터베이스 관리 시스템의 자료 구조와블록 할당 및 레코드 검색 방법
JPH03296838A (ja) 履歴データ管理方式
JPH0264832A (ja) ディスク・キャッシュ・メモリ管理装置
JPH04199338A (ja) データベース管理システム
JPS63150724A (ja) デ−タアクセス処理方式
JPS63206837A (ja) 区分デ−タセツトアクセス方式
JPH06124307A (ja) データベース処理装置
JPH0756810A (ja) データ管理システム
JPH0371244A (ja) データ管理方式
JPH0298752A (ja) 二進木による二次記憶領域管理方法

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19981201

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

Free format text: PAYMENT UNTIL: 20071218

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20081218

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees