JPS628819B2 - - Google Patents

Info

Publication number
JPS628819B2
JPS628819B2 JP55171400A JP17140080A JPS628819B2 JP S628819 B2 JPS628819 B2 JP S628819B2 JP 55171400 A JP55171400 A JP 55171400A JP 17140080 A JP17140080 A JP 17140080A JP S628819 B2 JPS628819 B2 JP S628819B2
Authority
JP
Japan
Prior art keywords
record
file
valid
records
value
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
Application number
JP55171400A
Other languages
English (en)
Other versions
JPS5794840A (en
Inventor
Kazuya Kitamura
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
Fuji Facom Corp
Original Assignee
Fujitsu Ltd
Fuji Facom 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 Fujitsu Ltd, Fuji Facom Corp filed Critical Fujitsu Ltd
Priority to JP55171400A priority Critical patent/JPS5794840A/ja
Publication of JPS5794840A publication Critical patent/JPS5794840A/ja
Publication of JPS628819B2 publication Critical patent/JPS628819B2/ja
Granted 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

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)

Description

【発明の詳細な説明】 本発明は、フアイル装置のレコード格納方式、
特にキー部を有するレコードの参照・更新・追
加・削除がおこなわれるフアイルを効果的に検索
できるようにし、かつフアイルの格納効率を高め
るようにしたフアイル装置のレコード格納方式に
関するものである。
例えば、従業員に関するデータ・フアイルで該
フアイルの各レコードが従業員番号・従業員の氏
名・年令・所属・住所等から構成されている場合
に、従業員の氏名をキーにしてその従業員のレコ
ードにアクセスするとか、販売部とかいつた所属
をキーにしてその所属に該当するレコード群にア
クセスするとかいつたことがよく行われる。この
ような場合に従来はフアイルの編成として、例え
ば索引付き順(Indexed Sequential)編成とかハ
ツシング(Hashing)を利用した直接編成等を用
いるのが一般的であつた。索引付き順編成は、例
えば書物に索引を付して利用の便を図るのと同様
に、フアイルにも上記の従業員に関するデータ・
フアイルの例でいえば従業員番号とか所属とかい
つた必要なデータ項目対応に索引を用意し、例え
ば特定の従業員番号をキーにしてレコードにアク
セスする場合に、従業員番号の索引を参照してそ
の従業員番号のレコードの格納位置を決定し、目
的のレコードを求めるようにしたフアイル編成で
ある。しかしながら、この編成はフアイルを生成
した初期の段階では効率的であるが、後にレコー
ドの追加が多くなされるにつれてオーバフロー領
域へレコードが作成されていくこととなり、次の
参照・更新処理が遅くなつて能率が低下するよう
になるので、定期的に全体の再構成を行うことを
余儀なくされる。場合によつては、日に1回以上
の再構成が必要となることがあるが、この再構成
は全ての索引・レコード等を並べて直すものであ
るから、かなりの長時間を要する。従つて、特に
昼夜ともシステムを停止することなく長期間連続
運転するようないわゆる24時間稼動システムにお
いては必ずしも有効ではない。
ハツシングを利用した直接編成は、例えば従業
員番号等のキー値を予め定められた一定のアルゴ
リズムに従つてランダマイズし、そのランダマイ
ズされた値でもつてレコードの格納位置を決定す
る編成である。この編成では、例えば上記の例の
如く従業員番号をキー値としてランダマイズを行
つた場合、従業員番号をキーとしたレコードの参
照・更新は効率的であるが、例えば所属とか年令
とかの他のデータ項目をキーとしたアクセスはで
きないこととなる。
本発明は上記の欠点を解決し、有効なレコード
は常にフアイルの先頭から頭づめにされている状
態を作ることによつてフアイルの格納効率を高
め、また全くフアイルの再構成を必要とせずに効
果的にレコード検索を行い得るようにすることを
目的としている。そのため本発明におけるフアイ
ル装置のレコード格納方式は、一定長のレコード
を記憶領域に順番に格納すると共に、各レコード
中に1または複数のキー部を設け、該キー部の値
をもとにフアイル中のレコード格納域を検索して
該当するレコードにアクセスするようにされたフ
アイル装置の処理装置において、上記フアイル
内の有効なレコード数を指示する有効レコード数
指示部と、レコードの追加の場合に有効レコー
ド数にもとづいて決定されるレコード格納位置に
目的レコードを追加すると共に、上記有効レコー
ド数指示部の値を、追加する格納位置に対応する
値に更新する手段と、レコードの削除の場合に
削除対象となるレコードの格納位置を、該レコー
ドのキーにより検索し、当該格納位置に有効レコ
ードの範囲内における最終位置に格納される有効
レコードの内容を格納すると共に、上記有効レコ
ード数指示部の値を、削除した格納位置を除外し
た格納位置に対応する値に更新する手段とを備
え、有効レコードが常にフアイルの先頭から頭
づめにして格納されるよう構成したことを特徴と
している。以下図面を参照しつつ説明する。
第1図は本発明における一実施例構成の概略図
を示す。図中、1はデータ処理装置、2はフアイ
ル・アクセス要求元、3はフアイル・アクセス制
御部、4は最大レコード数指示部、5は有効レコ
ード数指示部、6はカレント・レコード指示部、
7はデータ・バツフア、8はキー付順編成フアイ
ル、9は補助記憶装置をそれぞれ表わす。
フアイル・アクセス要求元2が、レコードの参
照・更新・追加・削除等の要求を出すと、フアイ
ル・アクセス制御部3はそのフアイルに対する最
大レコード数指示部4、有効レコード数指示部
5、カレント・レコード指示部6を参照・更新し
つつ、補助記憶装置9内にあるキー付順編成フア
イル8の目的とするレコードにアクセスする。最
大レコード数指示部4にはそのフアイルに格納で
きる最大のレコード数、即ち該フアイルの大きさ
を1レコードの大きさで割つた値が格納され、そ
の値はフアイルの生成時に初期設定されて、特に
後になつてフアイルが連続的に拡張されるような
ことがない限り半固定的に保持される。有効レコ
ード数指示部5はそのフアイルに格納されている
有効なデータをもつレコード数を値として保持す
る。有効なレコードはフアイルの先頭から頭づめ
に順に格納されていくことから、レコード番号を
フアイルの先頭から順に「1」、「2」、「3」…と
付与するとすれば、有効レコード数指示部5の値
は最終の有効なレコード番号を示すものでもあ
る。また、有効レコード群の後方のフアイル8内
の斜線で図示された部分は空き領域を示す。カレ
ント・レコード指示部6は、現在処理中のレコー
ド番号を示すもので、フアイル・オープン時に通
常「1」に初期設定される。またフアイル・アク
セス要求元2の要求によつても任意の値に更新さ
れ得るものである。
第2図は本発明の一実施例におけるレコード追
加時の動作を説明する説明図である。今、フアイ
ル・アクセス要求元2がキー付順編成フアイル8
への新しいレコード10の追加要求をしたとす
る。フアイル・アクセス制御部3は次の如く処理
する。(なお、以下の(1)、(2)…等の処理は、図面
中の(1)、(2)…等に対応する。) (1) まず有効レコード数指示部5と最大レコード
数指示部4の値の大小を比較する。もし、有効
レコード数ERが最大レコード数MRに等しけ
れば、フアイル8は満杯になつていることを意
味し、新たにレコードを追加することはできな
いので、フアイル・アクセス要求元2へエラ
ー・リターンする。有効レコード数ERが最大
レコードMRより小さければ空き領域へのレコ
ード追加が可能であるから、次の処理を行う。
(2) 新しい有効レコードが増えることから、有効
レコード数指示部5の値に「1」加算する。
(3) 次に新しいレコード10をフアイル8に格納
するためのアドレス計算を行う。例えば、各レ
コードが固定長であるとすると、「1」加算後
の有効レコード数指示部5の値に1レコードの
大きさを掛けることによつて、それまでの有効
レコードの格納されている最終位置の次の位
置、即ちフアイル8内の空き領域の先頭位置で
あるフアイル内相対アドレスが得られる。
(4) 処理(3)で求められたフアイル内相対アドレス
の箇所にデータ・バツフア7を経由して新しい
レコードを書き込むことによつてフアイル・ア
クセス要求元2のレコード追加要求処理を完了
する。
第3図は本発明の一実施例におけるレコード参
照時の動作を説明する説明図である。フアイル・
アクセス要求元2がキー付順編成フアイル8内の
キー「KEYx」を持つレコードの参照要求をした
とすると、フアイル・アクセス制御部3は次の如
く処理する。なお、キーが複数指定された場合も
同様である。また、レコードの参照ではなく更新
の場合にもほぼ同様である。
(5) カレント・レコード指示部6と有効レコード
数指示部5との値の大小を比較する。もし、カ
レント・レコード番号CRが有効レコード数ER
より大きければ、目的レコードが見付けられな
かつたことを意味するので、フアイル・アクセ
ス要求元2へエラー・リターンする。カレン
ト・レコード番号CRが有効レコード数以内で
あれば、次の処理を行う。
(6) カレント・レコード番号CRに1レコードの
大きさを掛けてカレント・レコードのフアイル
内相対アドレスを求める。
(7) 処理(6)で求めたカレント・レコードの格納場
所から、データ・バツフア7上へカレント・レ
コードを読み出す。なお、既にカレント・レコ
ードを含む複数のレコードの集合が1群として
データ・バツフア上に読み上げられている場合
には、必ずしもその都度フアイル8にアクセス
する必要はないことは言うまでもない。
(8) 次にカレント・レコードのキー「KEYi」と
フアイル・アクセス要求元2が指定した
「KEYx」とを比較する。フアイル・アクセス
要求元2がキーを複数指定している場合には、
そのキーとカレント・レコードの対応するそれ
ぞれのキーとをすべて比較する。もし、カレン
ト・レコードのキー「KEYi」と指定したキー
「KEYx」が一致しないときには、次のレコー
ドを探索すべく、カレント・レコード指示部6
の値に「1」加算して上記(5)の処理から同様に
処理を繰り返す。
(9) もし、カレント・レコードのキー「KEYi」
が指定キー「KEYx」と同じであれば、そのカ
レント・レコードが参照の目的レコードである
から、そのカレント・レコードをフアイル・ア
クセス要求元2へ引き渡す。
第4図は本発明の一実施例におけるカレント・
レコード指示部6の示すレコードを削除する場合
についての動作を説明する説明図である。フアイ
ル・アクセス要求元2がカレント・レコードの削
除要求をしたとすると、フアイル・アクセス制御
部3は次の如く処理する。
(10) 有効レコード数指示部5の値に1レコードの
大きさを掛けて、最終の有効レコードのフアイ
ル内相対アドレスを求める。
(11) 処理(10)で求めたフアイル内相対アドレスから
フアイル8の最終有効レコードをデータ・バツ
フア7上へ読み上げると共に、その有効レコー
ドが格納されていた場所を例えばゼロ・クリア
する。
(12) 次にカレント・レコード指示部6の値に1レ
コードの大きさを掛けてカレント・レコードの
フアイル内相対アドレスを求める。
(13) 処理(12)で求めたカレント・レコードの格納
場所に、処理(11)で読み上げたデータ・バツフア
7上の有効レコードを重ね書きする。こうする
ことによつて現カレント・レコードの内容は消
滅し実質的に削除されたことになる。
(14) 有効レコード数指示部5の値を「1」減算
する。
以上の様に処理することによつて第4図図示の
キー付順編成フアイル8は同図のフアイル8′の
ように変化することとなる。即ち、削除すべきレ
コードの格納箇所に最終有効レコードが上書きさ
れ、もとの最終有効レコードの位置には例えばゼ
ロが書き込まれた状態となる。従つて、フアイル
8′についても以前同様、空き領域は連続して有
効レコード群の後に続くことになる。空き領域を
例えばゼロとなるようにしたのは、フアイルのオ
ープン時、またはシステムに障害が発生してダウ
ンした場合の立上げ時に、レコードがゼロ・クリ
アされている箇所を捜すことによつて容易に有効
レコード数指示部5の値を復元できるようにする
ためである。
なお本発明は単一のプロセツサを有するデータ
処理システムにおける場合に限定されず、例えば
フアイル・アクセス制御を専用のデータ処理プロ
セツサで処理するような複数のプロセツサを有す
るシステムにおける場合も含むことは言うまでも
ない。
以上説明した如く本発明によれば、レコードの
削除・追加等がいかに繰り返されてもフアイルの
再構成は全く必要とせず、特に24時間稼動システ
ムにおいて適しているのみならず、フアイルの先
頭から有効レコードを頭づめしていることや、索
引その他の冗長な情報を必要としないこと等のた
めにフアイル容量の大きな節約を図ることが可能
となる。またフアイルに関しての冗長な情報がな
く簡明な構成を採つていることから障害時のダウ
ン対策も容易となる。
【図面の簡単な説明】
第1図は本発明における一実施例構成の概略
図、第2図は本発明の一実施例におけるレコード
追加時の動作説明図、第3図は本発明の一実施例
におけるレコード参照時の動作説明図、第4図は
本発明の一実施例におけるレコード削除時の動作
説明図を示す。 図中、1はデータ処理装置、2はフアイル・ア
クセス要求元、3はフアイル・アクセス制御部、
4は最大レコード数指示部、5は有効レコード数
指示部、6はカレント・レコード指示部、7はデ
ータ・バツフア、8はキー付順編成フアイル、9
は補助記憶装置を夫々表わす。

Claims (1)

  1. 【特許請求の範囲】 1 一定長のレコードを記憶領域に順番に格納す
    ると共に、各レコード中に1または複数のキー部
    を設け、該キー部の値をもとにフアイル中のレコ
    ード格納域を検索して該当するレコードにアクセ
    スするようにされたフアイル装置の処理装置にお
    いて、 上記フアイル内の有効なレコード数を指示する
    有効レコード数指示部と、 レコードの追加の場合に有効レコード数にもと
    づいて決定されるレコード格納位置に目的レコー
    ドを追加すると共に、上記有効レコード数指示部
    の値を、追加する格納位置に対応する値に更新す
    る手段と、 レコードの削除の場合に削除対象となるレコー
    ドの格納位置を、該レコードのキーにより検索
    し、当該格納位置に有効レコードの範囲内におけ
    る最終位置に格納される有効レコードの内容を格
    納すると共に、上記有効レコード数指示部の値
    を、削除した格納位置を除外した格納位置に対応
    する値に更新する手段とを備え、 有効レコードが常にフアイルの先頭から頭づめ
    にして格納されるよう構成したことを特徴とする
    フアイル装置のレコード格納方式。
JP55171400A 1980-12-04 1980-12-04 Record storing system of file device Granted JPS5794840A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP55171400A JPS5794840A (en) 1980-12-04 1980-12-04 Record storing system of file device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP55171400A JPS5794840A (en) 1980-12-04 1980-12-04 Record storing system of file device

Publications (2)

Publication Number Publication Date
JPS5794840A JPS5794840A (en) 1982-06-12
JPS628819B2 true JPS628819B2 (ja) 1987-02-25

Family

ID=15922448

Family Applications (1)

Application Number Title Priority Date Filing Date
JP55171400A Granted JPS5794840A (en) 1980-12-04 1980-12-04 Record storing system of file device

Country Status (1)

Country Link
JP (1) JPS5794840A (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59103128A (ja) * 1982-10-11 1984-06-14 Fujitsu Ltd カ−ド・イメ−ジ処理デ−タ処理装置における処理結果出力方式
JPS62192826A (ja) * 1986-02-20 1987-08-24 Nec Corp ファイル書込み方式

Also Published As

Publication number Publication date
JPS5794840A (en) 1982-06-12

Similar Documents

Publication Publication Date Title
US5499367A (en) System for database integrity with multiple logs assigned to client subsets
JPH0916607A (ja) データベース管理システムにおけるインデクス管理方法
JPH02217940A (ja) データベース・アクセス・システム
JP3378594B2 (ja) データベース再配置を行う処理装置
JP3115599B2 (ja) 拡張テーブルを使用するページングシステム
JPS628819B2 (ja)
US7606789B2 (en) Data access and retrieval mechanism
JPH0962697A (ja) 商品コード検索方式
JPH05151056A (ja) データ管理装置
JPH0916440A (ja) ロギングシステム
JP2540821B2 (ja) デ―タベ―ス検索システム
JP2912657B2 (ja) ファイルアクセス処理装置
JP2687887B2 (ja) リレーショナルデータベースの管理方式
JP2871755B2 (ja) ダイナミック・ハッシュにおけるスプリット制御方法
JPH04336340A (ja) ディスクキャッシュアクセス制御方式
JPH04252342A (ja) 情報処理システムにおけるデータ保存管理装置
JPH08328929A (ja) データベース分割管理システム
JP2000066933A (ja) 時系列データ管理方式
JPH0727531B2 (ja) ファイル制御方式
JP2618029B2 (ja) インデクス付きファイルの分割処理方法
JP3398672B2 (ja) 中間データ格納装置
JPH06259293A (ja) 不要文書一括削除装置
JPH04205173A (ja) 情報検索システム
JPH03116252A (ja) ソースプログラムの世代管理方式
JPH0877205A (ja) リレーショナルデータベース管理システム