JPH03282966A - ハッシュエントリ領域管理方法 - Google Patents

ハッシュエントリ領域管理方法

Info

Publication number
JPH03282966A
JPH03282966A JP2084394A JP8439490A JPH03282966A JP H03282966 A JPH03282966 A JP H03282966A JP 2084394 A JP2084394 A JP 2084394A JP 8439490 A JP8439490 A JP 8439490A JP H03282966 A JPH03282966 A JP H03282966A
Authority
JP
Japan
Prior art keywords
entry
block
data
data area
area
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.)
Pending
Application number
JP2084394A
Other languages
English (en)
Inventor
Masami Kito
木藤 政美
Koji Watabe
渡部 広史
Takehiko Nakasone
竹彦 中曽根
Yuji Kawamoto
川本 裕治
Chitose Sudo
須藤 千歳
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 JP2084394A priority Critical patent/JPH03282966A/ja
Publication of JPH03282966A publication Critical patent/JPH03282966A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔目次〕 概要 産業上の利用分野 従来の技術(第6図) 発明が解決しようとする課題 課題を解決するための手段(第1図) 作用 実施例(第2図〜第5図) 発明の効果 〔概要〕 ハツシュエントリ領域管理方法に関し、データ領域を拡
張してもハツシュ論理を変更することなく管理すること
を目的とし、 入力された目的キー値によりハツシング処理を行ってア
クセス先のブロック番号を得るハツシング処理手段を有
するハツシュエントリ領域管理方法において、複数のブ
ロック区分を有する1次エントリ領域と、1次エントリ
領域と同一の数のブロック区分を有する2次エントリ領
域を設け、1次エントリ領域のブロック番号のブロック
区分に格納できないデータを、2次エントリ領域の同じ
ブロック番号のブロック区分に格納するように管理する
よう構成する。
〔産業上の利用分野〕
本発明はハツシュエントリ領域管理方法に関し、特にデ
ータベースにおけるデータへのエントリに使用する応用
プログラムのハツシュ論理に影響を与えることなく、デ
ータ領域の拡張を可能にするようにしたものである。
〔従来の技術〕
ハツシュエントリはデータをデータベースに格納すると
きの手法の1つであり、データの属性にとられれずに無
作為に、平均的に各ブロックに格納される論理である。
例えば第6図に示す如く、データ領域1.2に形成され
たブロック0.1.2.3をハツシュの論理によりデー
タエントリされるエントリ範囲とすると、各ブロックO
〜3に略平均的にデータエントリされるように構成され
ている。
〔発明が解決しようとする課題〕 ところで、従来のハツシュエントリでは、エントリがオ
ーバフローするとき、新しくブロックを追加して、例え
ば第6図の例ではデータ領域3のブロック4を追加して
、ハツシュのエントリ範囲を拡張することが必要である
。このような場合、最初はエントリ範囲がブロック0〜
304個のブロックだったものがブロック0〜4の5個
の範囲に拡張されることになるので、このハツシュの範
囲が変化するため応用プログラム内のハツシュ論理をこ
れに応じて変更することが必要であった。
更に、この拡張された各ブロックO〜4内のデータを、
この変更後のハツシュ論理にしたがって、各ブロックに
データが平均的に格納するように格納しなおすことが必
要であった。
このため、7度全データを吸い上げて格納しなおすため
、再格納処理中はデータベースが運用停止となり、この
再格納処理中にエラーの発生もあり得るのでこのハツシ
ュ論理の変更に際しての信顧性の確認も必要となり、し
かもこの再格納処理のための費用も必要となるなど、利
用者に対する影響が多大であった。
したがって本発明の目的は、応用プログラムのハツシュ
論理を変更することなく、必要なデータ領域の追加を可
能とするハツシュエントリ領域管理方法を提供すること
である。
〔課題を解決するための手段〕
前記目的を達成するため、本発明では、第1図に示す如
く、ハツシュのエントリ範囲の大きさを例えばエントリ
・ブロック番号0〜3と決め、その2次エントリ (B
)の大きさを、これまた同じエントリ・ブロック番号0
〜3とする。2次エントリを更に拡張するときも、同し
エントリ・ブロック番号O〜3を割当てる。このように
拡張するとき同じエントリ・ブロック番号を割当てる。
なお第1図の例は、最初のエントリ範囲すなわち1次エ
ントリ範囲をA、2次エントリ範囲をB、Cとし、1次
エントリ範囲Aの次に2次エントリ範囲Bをアクセスし
、それから2次エントリ範囲Cをアクセスする。
このようなことを可能とするため、本発明では、エント
リ範囲指示テーブル(以下テーブルという)4を設け、
用意されたデータ領域の数及びそれぞれのアドレス情報
を格納してお(。そして目的キー値(例えば口座番号)
が入力されるハツシング部1、このハツシング部1から
出力されるハツシュキーによりアクセス先のブロック番
号を出力するアクセス先変換部2、このアクセス先変換
部2から伝達されたブロック番号によりハツシュエント
リ範囲をアクセスするファイルアクセス部3を有する。
〔作用〕
データをアクセスするとき、まず目的キー値例えば口座
番号を入力する。この目的キー値の数字は、ハツシング
部1によりハツシング関数により処理され、ハツシュキ
ーが出力される。このハツシュキーがアクセス先変換部
2に伝達されると、これによりアクセス先のブロック番
号例えば「2」が得られる。このとき、アクセス先変換
部2には、アクセス先のデータ領域におけるブロックの
数「4」が伝達されている。
前記アクセス先のブロック番号「2」がファイルアクセ
ス部3に伝達されると、ファイルアクセス部3は、テー
ブル4をアクセスしてまず1次エントリ範囲Aの先頭ア
ドレスを読み出し、これにもとづきデータ領域1のブロ
ック2をアクセスし、目的の口座番号のエントリの有無
をチエツクする。
もし、なければデータ領域の数がいくつあるのかをチエ
ツクし、2次エントリBであるデータ領域2の存在を検
出し、その先頭アドレスを読み出し、そのブロック2を
アクセスする。これにより目的のエントリが得られれば
、これに対し所定のアクセスが行われる。しかし目的の
エントリが得られなければ、同様にして2次エントリC
のデータ領域3のブロック2をアクセスする。このよう
にしてハツシュエントリ範囲を初めの通りのまま、デー
タ領域を拡張することが可能となる。
〔実施例〕
本発明の一実施例を第2図〜第5図にもとづき説明する
第2図は本発明の一実施例構成図、第3図はテーブル4
の説明図、第4図はデレクトリの説明図、第5図は本発
明の動作説明図である。
第2図において、第1図と同記号部は同一部分を示し、
1はハツシング部、2はアクセス先変換部、4はテーブ
ル、5はファイル構成情報設定部、6は格納先検出部、
7は格納先処理部、10はCPU、11はファイル制御
部、12はファイル、20.21はそれぞれ端末である
ハツシング部1は、端末20.21等から入力される例
えば口座番号の如き目的キー値が入力されたとき、これ
を基にハツシングしてハツシュキー算出を行い、得られ
たハツシュキーを出力するものである。
アクセス先変換部2は、前記ハツシング部1から伝達さ
れたハツシュキーにもとづきハツシュ関数処理を行って
その格納先のブロック番号に変換処理を行うものである
。この例では、格納先のブロック数が4であるので、数
値「4」が印加されている。
テーブル4は、第3図に示す如く、データ領域数(この
例では3)、各データ領域の容量ブロック数(この例で
昧4)、データ領域1〜3の先頭アドレス等が記入され
ている。この場合、データ領域1〜3の先頭アドレスと
しては、各データ領域のデレクトリの先頭アドレスが記
入されている。
従って、データ領域1 (1次エントリ)の先頭アドレ
スとしてはこのデータ領域1を含むデータセットのデレ
クトリである第1デレクトリaのアドレスが記入され、
データ領域2 (2次エントリ)の先頭アドレスとして
はこのデータ領域2を含むデータセットのデレクトリで
ある第2デレクトリbのアドレスが記入され、データ領
域3 (2次エントリ)の先頭アドレスとしては、この
データ領域3を含むデータセントのデレクトリである第
3デレクトリCのアドレスが記入される。
ファイル構成情報設定部5は、システムの立上り時にテ
ーブル4を設定する制御を行うものである。この場合、
データ領域数、その容量ブロック数、各データ領域の先
頭アドレス等は、予め例えばキーボード22よりオペレ
ータが入力する。
格納先検出部6は、前記アクセス先変換部2から伝達さ
れたブロック番号のブロックにアクセスするために必要
なデータ領域1.2.3の先頭アドレスをテーブル4に
アクセスしてこれを読み出し、格納処理部7に送出する
ものである。
格納処理部7は、前記格納先検出部6から伝達されたデ
ータ領域の先頭アドレス及びブロック番号と、ハツシン
グ部1より伝達される目的キー値によりファイル12に
対するアクセス要求電文を作成するものである。このア
クセス要求電文には、アクセス先データ領域及びその先
頭アドレス、ブロック番号、目的キー値等が記入されて
いる。勿論、読取か書込みかも指示されている。
ファイル制御部11は格納処理部7から伝達された指示
にもとづきファイル12をアクセス制御するものである
。そしてデータ領域1〜3の指定されたブロック番号の
領域に所定の目的キー値のエントリが検出できないとき
、あるいは指定されたブロック番号領域にエントリ記入
用の空部分が検出できないとき、これを格納処理部7に
報告する。
ファイル12は、データ領域1〜3が設けられ、またこ
れらに対する第1デレクトリa〜第3デレクトリCが設
けられている。第4図として示される第1デレクトリa
に代表されるように、各デレクトリにはそのブロックの
先頭アドレスが記入されている。
端末20.21は例えば口座番号の如き目的キー値やそ
のアクセス要求が出力されるものである。
キーボード22は、例えばテーブル4及びデータ領域1
〜3を初期設定するときに必要なデータを入力するもの
である。
次に本発明の動作を第5図に示すフローチャートにもと
づき説明する。
A、初期設定及び最初のデータ書込処理(第5図(A)
)■ システムの立上りに、ファイル構成情報設定部5
は、例えば第3図に示す如きテーブル4を作成する。そ
してこれに応じて、ファイル12でもAで示すデータ領
域1〜Cで示すデータ領域3及び、それぞれのデレクト
リa ”−cが作成される。このようにしてシステムが
立上がる。
■ 次に、例えば端末20より、口座番号の如き目的キ
ー値が入力されたとき、ハツシング部1はこれにもとづ
きハツシングし、ハツシュキー算出を行う。アクセス先
変換部2は、前記ハツシュキーにもとづき、ハツシュ関
数処理を行ってその格納先のブロック番号に変換し、か
くして格納標的ブロックが得られる。
■ 格納先検出部6は、このブロック番号により、テー
ブル4をアクセスし、先ずAで示すデータ領域1の先頭
アドレスつまりファイル12における第1デレクトリa
のアドレスを得、これを格納処理部7に送出する。格納
処理部7は、このとき、ハツシング部1より伝達された
目的キー値(この例では口座番号)及び書込みデータと
前記ブロック番号、及び第1デレクトリaのアドレスを
送出し、ファイル制御部11に書込み要求を行う。
これにもとづき、ファイル制御部11がデータ領域1の
該当ブロック番号のブロックをサーチし、空部分を検出
すればこれに口座番号等の必要事項を書棒み、正常通知
をCPUl0に行う。
■ しかし、このデータ領域1の該当ブロック番号のブ
ロックに空部分がなければ、ファイル制御部11はこれ
を格納処理部7に通知する。これにより格納処理部7は
格納先検出部6に対し、データ領域1の該当ブロック番
号を記憶させ、更に格納先検出部6に対しデータ領域1
の次のデータ領域2の有無をチエツクさせる。これによ
り格納先検出部6はデータ領域数が3であり、データ領
域1がアクセスずみであることより、■ Bで示すデータ領域2の先頭アドレス、この例では、第
2デレクトリbのアドレスを読出し、これを前記保持し
たブロック番号とともに格納処理部7に通知する。これ
により、今度は、データ領域2の同一ブロック番号のブ
ロックに対し、サーチが行われる。このようにしてサー
チ未ファイルの検出が行われ、これに対してアクセスが
行われる。そして、全データ領域の該当番号のブロック
をサーチした結果、空部分がなければ異常通知されるこ
とになる。
B1通常のアクセス処理(第5図(B))■ 例えば端
末21より、口座番号の如き目的キー値が入力されたと
き、ハツシング部1はこれによりハツシングしてハツシ
ュキー算出を行い、アクセス先変換部2はこのハツシュ
キーにもとづき格納先ブロック番号に変換し、これによ
り格納標的ブロックが得られる。
■ 格納先検出部6は、このブロック番号により、テー
ブル4をアクセスし、まずデータ領域1の先頭アドレス
を得、これを格納処理部7に送出する。格納処理部7は
、このときハツシング部1より伝達された目的キー値(
例えば口座番号)と書込みの場合は書込みデータと、前
記ブロック番号及びデータ領域1の先頭アドレスを送出
し、ファイル制御部11に対しアクセス要求を行う。
■ これにもとづき、ファイル制御部11がデータ領域
1の該当ブロック番号のブロックをサーチし、目的デー
タを検出すれば所定の処理を行い、正常通知をCPUl
0に行う。
■ しかし、デ二り領域1の該当ブロック番号のブロッ
クをアクセスしても目的キー値のデータが検出されなけ
れば、ファイル制御部11はこれを格納処理部7に通知
する。これにより格納処理部7は格納先検出部6に対し
、データ領域1の該当ブロック番号を記憶させ、格納先
検出部6に対し、データ領域10次に更にデータ領域の
有無をチエツクさせる。これにより格納先検出部6は、
データ領域数が3であり、アクセス済みのデータ領域が
1であることにより、全ファイルのサーチが完了してい
ないことを認識し、次のデータ領域であるデータ領域2
の先頭アドレスをテーブル4より読み出し、これを前記
保持したブロック番号とともに格納処理部7に通知する
。これにより、今度はデータ領域2の同一ブロック番号
のブロックに対し、サーチが行われることになる。この
ようにしてサーチ未ファイルの検出が行われ、これに対
してアクセスが行われ目的データの検出が行われること
になる。そして全データ領域の該当番号のブロックをサ
ーチした結果目的データが検出されなければ異常通知さ
れることになる。
なお、2次エントリ部分の複数の領域のうち、後段のも
ののブロック数を1次エントリ部分より少なくし、1次
エントリのブロック番号を2次エントリのどのブロック
番号に格納するのか対応表を設けて管理しておくことに
より、同様に管理することもできる。
なお、前記説明では、データ領域数が3、各領域のブロ
ック数が4であり、目的キーとじて口座番号を例として
説明したが、本発明は勿論これらにのみ限定されるもの
ではない。
〔発明の効果〕
本発明によれば、ハツシュエントリ手法のデータベース
へのデータ領域の追加が、応用プログラムのハツシュ論
理の変更な〈実施可能となる。これにより、従来のデー
タベースの再格納処理を実施する必要がなくなるために
、データ領域の拡張を、データベース第13用者に影響
な〈実施可能となり、データベースシステムの信顛性を
向上するものとなる。
【図面の簡単な説明】
第1図は本発明の原理説明図、 第2図は本発明の一実施例構成図、 第3図はテーブル説明図、 第4菌はデレクトリ説明図、 第5図は本発明の動作説明図、 第6図は従来例を示す。 一ハツシング部 ・−アクセス先変換部 ファイルアクセス部 テーブル

Claims (1)

  1. 【特許請求の範囲】 入力された目的キー値によりハッシング処理を行ってア
    クセス先のブロック番号を得るハッシング処理手段を有
    するハッシュエントリ領域管理方法において、 複数のブロック区分を有する1次エントリ領域と、 1次エントリ領域と同一の数のブロック区分を有する2
    次エントリ領域を設け、 1次エントリ領域のブロック番号のブロック区分に格納
    できないデータを、2次エントリ領域の同じブロック番
    号のブロック区分に格納するようにしたことを特徴とす
    る ハッシュエントリ領域管理方法。
JP2084394A 1990-03-30 1990-03-30 ハッシュエントリ領域管理方法 Pending JPH03282966A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2084394A JPH03282966A (ja) 1990-03-30 1990-03-30 ハッシュエントリ領域管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2084394A JPH03282966A (ja) 1990-03-30 1990-03-30 ハッシュエントリ領域管理方法

Publications (1)

Publication Number Publication Date
JPH03282966A true JPH03282966A (ja) 1991-12-13

Family

ID=13829356

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2084394A Pending JPH03282966A (ja) 1990-03-30 1990-03-30 ハッシュエントリ領域管理方法

Country Status (1)

Country Link
JP (1) JPH03282966A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08129551A (ja) * 1994-10-31 1996-05-21 Fujitsu Ltd ハッシュ方式
US6745191B2 (en) 1996-04-26 2004-06-01 Hitachi, Ltd. Parallel database record distribution method and parallel database management system
US9152341B2 (en) 2013-03-29 2015-10-06 Kabushiki Kaisha Toshiba Storage system, storage controller, and method for eliminating data duplication based on hash table

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08129551A (ja) * 1994-10-31 1996-05-21 Fujitsu Ltd ハッシュ方式
US6745191B2 (en) 1996-04-26 2004-06-01 Hitachi, Ltd. Parallel database record distribution method and parallel database management system
US9152341B2 (en) 2013-03-29 2015-10-06 Kabushiki Kaisha Toshiba Storage system, storage controller, and method for eliminating data duplication based on hash table

Similar Documents

Publication Publication Date Title
US6341308B1 (en) Input/output device information management system for multi-computer system
JP2000357115A (ja) ファイル検索装置及びファイル検索方法
JPH08129551A (ja) ハッシュ方式
JPH03282966A (ja) ハッシュエントリ領域管理方法
JP2924786B2 (ja) 疎結合多重計算機システムにおける共有ファイルの排他制御システム、排他制御方法、および排他制御プログラムを記憶する媒体
JPS62287350A (ja) インデツクス一括更新方式
JP3050194B2 (ja) ホスト間共用メモリファイル動的追加システム、ホスト間共用メモリファイル動的追加方法、およびホスト間共用メモリファイル動的追加プログラムを記録した記録媒体
JP2817911B2 (ja) キー付ファイルのアクセス制御方式
JP2748504B2 (ja) 入力処理装置
JP2689928B2 (ja) データベースシステムにおけるデータ格納装置
JPS6058492B2 (ja) デ−タベ−ス検索方式
JP2507399B2 (ja) デ―タベ―ス装置
JPH0869399A (ja) ファイル管理装置
JPH04199338A (ja) データベース管理システム
JP2891815B2 (ja) 疎結合システムの媒体名管理方式
JPH08190501A (ja) データベースのデータ格納方法
JP2003022202A (ja) レコード管理方法及びその実施装置並びにその処理プログラム
JPH04102140A (ja) システム間ファイル共用方式
JPS63150724A (ja) デ−タアクセス処理方式
JPH0756810A (ja) データ管理システム
JPH0793192A (ja) ファイル管理方法
JPS6358556A (ja) フアイルシステム
JPH0667946A (ja) 階層構造をもつデータベースにおける排他制御装置
JPH0916445A (ja) 元帳ファイルアクセス方法及びそれを適用したバンキングシステム
JPH06208497A (ja) データベース管理方法