JPS63253431A - インバ−テツド構造のデ−タベ−ス検索方式 - Google Patents
インバ−テツド構造のデ−タベ−ス検索方式Info
- Publication number
- JPS63253431A JPS63253431A JP62088297A JP8829787A JPS63253431A JP S63253431 A JPS63253431 A JP S63253431A JP 62088297 A JP62088297 A JP 62088297A JP 8829787 A JP8829787 A JP 8829787A JP S63253431 A JPS63253431 A JP S63253431A
- Authority
- JP
- Japan
- Prior art keywords
- block
- record
- blocks
- pool
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 claims description 16
- 230000003247 decreasing effect Effects 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000002899 structure database search Methods 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、インバーテツド構造のデータベース検索方式
に関し、特に主メモリと外部メモリとのデータの入出力
回数を減じて処理速度を向上させたインバーテツド構造
のデータベース検索方式に関する。
に関し、特に主メモリと外部メモリとのデータの入出力
回数を減じて処理速度を向上させたインバーテツド構造
のデータベース検索方式に関する。
この種の処理方式は、インバーテツド構造のデータベー
ス11を検索する場合に使用される。インバーテツド構
造とは第3図に示すように、データレコードを識別する
索引とそれが抽出されたデータのレコード番号からなる
索引部をもつ構造のことを言い、検索処理を行う場合に
はレコード番号とデータからなるデータ部を検索するの
でなく、この索引部を検索することでデータベース11
へのアクセスを局所化させることが可能になる。
ス11を検索する場合に使用される。インバーテツド構
造とは第3図に示すように、データレコードを識別する
索引とそれが抽出されたデータのレコード番号からなる
索引部をもつ構造のことを言い、検索処理を行う場合に
はレコード番号とデータからなるデータ部を検索するの
でなく、この索引部を検索することでデータベース11
へのアクセスを局所化させることが可能になる。
第2図をもとに、索引がIn以上の値をもつデータレコ
ードを検索する場合の動作について説明する。
ードを検索する場合の動作について説明する。
まず、データベース11の索引部を検索してInを見つ
け、その索引レコードを読み出す。読み出した索引レコ
ードからレコード番号を取り出し、(外部メモリに格納
される)ファイル13のブロックに対応させたブロック
番号とブロック内のビット番号に変換する。(この変換
は、あらがしめ定められた方法で行われるが、例えば上
位N桁下値M桁のレコード番号のうち、上位N桁をファ
イル中のブロック番号に、下位M桁をブロック内のピッ
l一番号とするときもある)そして、中央処理装置内の
主メモリに格納されるカレントブロック12のビット番
号で示すビットをオンに設定する。これを、読み出した
索引レコード内の全てのレコード番号について行う。こ
のとき、ブロック番号の異なるレコードを検出した場合
には、それまでのカレントブロック12の内容をブロッ
ク番号で示すファイル13の位置に書き出した後に設定
する。
け、その索引レコードを読み出す。読み出した索引レコ
ードからレコード番号を取り出し、(外部メモリに格納
される)ファイル13のブロックに対応させたブロック
番号とブロック内のビット番号に変換する。(この変換
は、あらがしめ定められた方法で行われるが、例えば上
位N桁下値M桁のレコード番号のうち、上位N桁をファ
イル中のブロック番号に、下位M桁をブロック内のピッ
l一番号とするときもある)そして、中央処理装置内の
主メモリに格納されるカレントブロック12のビット番
号で示すビットをオンに設定する。これを、読み出した
索引レコード内の全てのレコード番号について行う。こ
のとき、ブロック番号の異なるレコードを検出した場合
には、それまでのカレントブロック12の内容をブロッ
ク番号で示すファイル13の位置に書き出した後に設定
する。
以上の処理を、索引がIn以上の値をもつ索引レコード
全てに対して行う、ただし、索引レコードの2個目以後
については、異なるブロック番号をもつレコード番号を
検出すると、カレントブロック12を書き出すとともに
既にファイル13にそのブロックが書き出されているか
否かを調べ、書き出されているならそのブロックを読み
出した後に設定処理を行う。
全てに対して行う、ただし、索引レコードの2個目以後
については、異なるブロック番号をもつレコード番号を
検出すると、カレントブロック12を書き出すとともに
既にファイル13にそのブロックが書き出されているか
否かを調べ、書き出されているならそのブロックを読み
出した後に設定処理を行う。
最後にカレントブロック12をファイル13に書き出し
て検索処理が完了し、検索されたデータレコードはファ
イル上にビットの集合として格納されていることになる
。このビット集合から実際のデータレコードを得るには
、今までと逆の処理を行う。ファイルからブロックを読
み、オンビットをみつけ、そのビットの位置を示す番号
とブロック番号とからレコード番号に変換して第3図で
示すデータ部にアクセスすればよい。
て検索処理が完了し、検索されたデータレコードはファ
イル上にビットの集合として格納されていることになる
。このビット集合から実際のデータレコードを得るには
、今までと逆の処理を行う。ファイルからブロックを読
み、オンビットをみつけ、そのビットの位置を示す番号
とブロック番号とからレコード番号に変換して第3図で
示すデータ部にアクセスすればよい。
従って、レコード番号がファイル内の異ったブロックに
対応するごとに、カレントブロックの内容が外部メモリ
中のファイルに転送される。
対応するごとに、カレントブロックの内容が外部メモリ
中のファイルに転送される。
上述した従来のインバーテツド構造のデータベース検索
方式の問題点は、読み出された索引レコードのレコード
番号がファイル内の異ったブロックに対応するごとに主
メモリ内のカレントブロックの内容が外部メモリ中のフ
ァイルに転送されるので、処理時間が長いすなわち処理
速度が遅いという点にある。
方式の問題点は、読み出された索引レコードのレコード
番号がファイル内の異ったブロックに対応するごとに主
メモリ内のカレントブロックの内容が外部メモリ中のフ
ァイルに転送されるので、処理時間が長いすなわち処理
速度が遅いという点にある。
本発明の目的は、上記欠点を解決したインバーテツド構
造のデータベース検索方式を提供することにある。
造のデータベース検索方式を提供することにある。
本発明のインバーテツド構造のデータベース検索方式は
、 インバーテツド構造のデータベースと、前記データベー
スから索引レコードを呼出してそのレコード番号を格納
する主メモリ装置内に格納されるブロック番号の定まら
ない複数個の第一のブロックを有するブロックブールと
、外部メモリ内に前記索引レコードのレコード番号に従
って格納されるブロック番号の定まった複数個の第二の
ブロックを有するファイルとを備え、 呼出された前記索引レコードのレコード番号と同一のブ
ロック番号を有するレコード番号が格納されている第一
のブロックの一つに格納し、前記索引レコードのレコー
ド番号と同一のブロック番号を有するレコード番号が格
納されている第一のブロックのないときは空いている第
一のブロックにレコード番号を格納し、 前記索引レコードのレコード番号と同一のブロツク番号
を有するレコード番号が格納されている第一のブロック
がなくかつ空いている第一のブロックがないときは、い
ずれか一つの第一のブロックをファイル内の該当する第
二のブロックに書き込み前記レコード番号を格納すべき
第二のブロックに格納されている内容を読み出して空い
ている第一のブロックに書き込むと共に前記レコード番
号を書き込むことを含んで構成される。
、 インバーテツド構造のデータベースと、前記データベー
スから索引レコードを呼出してそのレコード番号を格納
する主メモリ装置内に格納されるブロック番号の定まら
ない複数個の第一のブロックを有するブロックブールと
、外部メモリ内に前記索引レコードのレコード番号に従
って格納されるブロック番号の定まった複数個の第二の
ブロックを有するファイルとを備え、 呼出された前記索引レコードのレコード番号と同一のブ
ロック番号を有するレコード番号が格納されている第一
のブロックの一つに格納し、前記索引レコードのレコー
ド番号と同一のブロック番号を有するレコード番号が格
納されている第一のブロックのないときは空いている第
一のブロックにレコード番号を格納し、 前記索引レコードのレコード番号と同一のブロツク番号
を有するレコード番号が格納されている第一のブロック
がなくかつ空いている第一のブロックがないときは、い
ずれか一つの第一のブロックをファイル内の該当する第
二のブロックに書き込み前記レコード番号を格納すべき
第二のブロックに格納されている内容を読み出して空い
ている第一のブロックに書き込むと共に前記レコード番
号を書き込むことを含んで構成される。
次に、本発明について図面を参照して説明する。
第1図は本発明の一実施例の構成を示すブロック図であ
る。
る。
まず、本実施例の概要を述べる。本実施例の従来例との
構造上の違いはレコード番号を変換してビットを設定す
るブロックを1個から複数個に増やしたことである。こ
れによる動作の違いは、従来の場合であると、カレント
ブロックのブロック番号と異なるレコード番号を検出す
るごとにファイルとのデータの入出力を必要とするが、
本発明の場合は、中央処理装置内の主メモリに格納され
るブロックプール中の複数個のブロック番号と異なるレ
コード番号が現われるまで、ファイルとのデータの入出
力かを行なわない点である。本実施例はデータベース1
と、ブロックプール2と、ファイル3とを備えている。
構造上の違いはレコード番号を変換してビットを設定す
るブロックを1個から複数個に増やしたことである。こ
れによる動作の違いは、従来の場合であると、カレント
ブロックのブロック番号と異なるレコード番号を検出す
るごとにファイルとのデータの入出力を必要とするが、
本発明の場合は、中央処理装置内の主メモリに格納され
るブロックプール中の複数個のブロック番号と異なるレ
コード番号が現われるまで、ファイルとのデータの入出
力かを行なわない点である。本実施例はデータベース1
と、ブロックプール2と、ファイル3とを備えている。
第1図をもとに、〔従来の技術〕と同様に索引がIn以
上の値をもつデータレコードを検索する動作について説
明する。
上の値をもつデータレコードを検索する動作について説
明する。
まず、データベース1の索引部を検索してInを見つけ
、その索引レコードを読み出す。読み出した索引レコー
ドからレコード番号を取り出し、ブロックプール2内で
のブロック番号とブロック内のビット番号とに変換(こ
の方法は従来の技術と同様である)する。そして、ブロ
ックプール中に同一のブロックが存在しているが否かを
調べる。見つかったなら、そのブロックの該当ビット番
号で示すビットをオン(Oを1にする)にしてつぎのレ
コード番号の処理を行う。見っからながった場合には、
プール中に空ブロックがあるがどうかを調べ、存在した
ならこのブロックの該当ビット番号で示すビットをオン
にしてつぎのレコード番号の処理を行う。存在しなかっ
た場合(ブロックプール2のブロックは全て使用中であ
る)には、ブロックプール2から任意の1つのブロック
を運び、ファイル3上の対応するブロックに書き出すと
ともに、今度はファイル3に同一のブロックが格納され
ているかを調べ、格納されていたならそのブロックを読
み出し、ブロックプール2の空いたブロックに戻す。そ
して、このブロックのビットをオンにしてつぎのレコー
ド番号の処理を行う。
、その索引レコードを読み出す。読み出した索引レコー
ドからレコード番号を取り出し、ブロックプール2内で
のブロック番号とブロック内のビット番号とに変換(こ
の方法は従来の技術と同様である)する。そして、ブロ
ックプール中に同一のブロックが存在しているが否かを
調べる。見つかったなら、そのブロックの該当ビット番
号で示すビットをオン(Oを1にする)にしてつぎのレ
コード番号の処理を行う。見っからながった場合には、
プール中に空ブロックがあるがどうかを調べ、存在した
ならこのブロックの該当ビット番号で示すビットをオン
にしてつぎのレコード番号の処理を行う。存在しなかっ
た場合(ブロックプール2のブロックは全て使用中であ
る)には、ブロックプール2から任意の1つのブロック
を運び、ファイル3上の対応するブロックに書き出すと
ともに、今度はファイル3に同一のブロックが格納され
ているかを調べ、格納されていたならそのブロックを読
み出し、ブロックプール2の空いたブロックに戻す。そ
して、このブロックのビットをオンにしてつぎのレコー
ド番号の処理を行う。
以上について、索引がIn以上の値をもつ索引レコード
全てに対して行った後、ブロックプール2中で使用され
ているブロックをファイル3の対応するブロックに書き
出して検索処理を完了する。これにより、検索されたデ
ータレコードはファイル3上のビットの集合として得ら
れることになる。
全てに対して行った後、ブロックプール2中で使用され
ているブロックをファイル3の対応するブロックに書き
出して検索処理を完了する。これにより、検索されたデ
ータレコードはファイル3上のビットの集合として得ら
れることになる。
例えば索引Inのレコード番号が1と100万、I n
+1もまた同じであるという極端な場合でも、従来のカ
レントブロックが10万単位のレコード番号を収容でき
るとすると、検索処理が完了するまでに従来の技術では
ファイルへのデータの入出力が6回、本発明の一実施例
ではファイルへのデータの入出力が2回で済むことにな
る。
+1もまた同じであるという極端な場合でも、従来のカ
レントブロックが10万単位のレコード番号を収容でき
るとすると、検索処理が完了するまでに従来の技術では
ファイルへのデータの入出力が6回、本発明の一実施例
ではファイルへのデータの入出力が2回で済むことにな
る。
また、ブロックブール2内のブロックを複数個設けたこ
とにより、検索完了までにブロックプール2とファイル
3との間に、ブロックの書込みと読込みを行うデータの
入出力の回数が従来の技術に比し減少する。そして、ブ
ロックブール2内のブロックがファイル3内のブロック
に対応して存在すれば、データの入出力の回数は1回で
済むことになる。
とにより、検索完了までにブロックプール2とファイル
3との間に、ブロックの書込みと読込みを行うデータの
入出力の回数が従来の技術に比し減少する。そして、ブ
ロックブール2内のブロックがファイル3内のブロック
に対応して存在すれば、データの入出力の回数は1回で
済むことになる。
以上説明したように本発明は、
主メモリ内のブロックプール内のブロックを複数個設け
たことにより、検索完了までにブロックプールと外部メ
モリ内のファイルとの間にブロックの書込みと読込みを
行うデータの入出力の回数が減少し、処理速度が向上で
きるという効果がある。
たことにより、検索完了までにブロックプールと外部メ
モリ内のファイルとの間にブロックの書込みと読込みを
行うデータの入出力の回数が減少し、処理速度が向上で
きるという効果がある。
第1図は本発明の一実施例の構成を示すブロック図、第
2図は従来の技術による構成の一例を示すブロック図、
第3図はデータベースのインバーテツド構造を示す説明
図。 1・・・データベース、2・・・ブロックプール、3・
・・ファイル。
2図は従来の技術による構成の一例を示すブロック図、
第3図はデータベースのインバーテツド構造を示す説明
図。 1・・・データベース、2・・・ブロックプール、3・
・・ファイル。
Claims (1)
- 【特許請求の範囲】 インバーテッド構造のデータベースと、前記データベー
スから索引レコードを呼出してそのレコード番号を格納
する主メモリ装置内に格納されるブロック番号の定まら
ない複数個の第一のブロックを有するブロックプールと
、外部メモリ内に前記索引レコードのレコード番号に従
って格納されるブロック番号の定まった複数個の第二の
ブロックを有するファイルとを備え、 呼出された前記索引レコードのレコード番号と同一のブ
ロック番号を有するレコード番号が格納されている第一
のブロックの一つに格納し、前記索引レコードのレコー
ド番号と同一のブロック番号を有するレコード番号が格
納されている第一のブロックのないときは空いている第
一のブロックにレコード番号を格納し、 前記索引レコードのレコード番号と同一のブロック番号
を有するレコード番号が格納されている第一のブロック
がなくかつ空いている第一のブロックがないときは、い
ずれか一つの第一のブロックをファイル内の該当する第
二のブロックに書き込み前記レコード番号を格納すべき
第二のブロックに格納されている内容を読み出して空い
ている第一のブロックに書き込むと共に前記レコード番
号を書き込むことを特徴とするインバーテッド構造のデ
ータベース検索方式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP62088297A JPS63253431A (ja) | 1987-04-09 | 1987-04-09 | インバ−テツド構造のデ−タベ−ス検索方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP62088297A JPS63253431A (ja) | 1987-04-09 | 1987-04-09 | インバ−テツド構造のデ−タベ−ス検索方式 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPS63253431A true JPS63253431A (ja) | 1988-10-20 |
Family
ID=13938986
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP62088297A Pending JPS63253431A (ja) | 1987-04-09 | 1987-04-09 | インバ−テツド構造のデ−タベ−ス検索方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS63253431A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2000298668A (ja) * | 1999-04-12 | 2000-10-24 | Ntt Data Corp | 情報検索システムの情報格納装置及び方法 |
-
1987
- 1987-04-09 JP JP62088297A patent/JPS63253431A/ja active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2000298668A (ja) * | 1999-04-12 | 2000-10-24 | Ntt Data Corp | 情報検索システムの情報格納装置及び方法 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5293616A (en) | Method and apparatus for representing and interrogating an index in a digital memory | |
| JPS63253431A (ja) | インバ−テツド構造のデ−タベ−ス検索方式 | |
| JP2923952B2 (ja) | マージ処理方法 | |
| JPS6143338A (ja) | 連想技術を使用して稀薄なデータベースをサーチする方法 | |
| JP2604787B2 (ja) | 二次元データ格納方式 | |
| JPS59220838A (ja) | 連想メモリ装置 | |
| JPS6143339A (ja) | 連想マトリツクスのサーチ方法 | |
| JP2596332B2 (ja) | データ組合せ抽出方法およびその装置 | |
| JPH07101382B2 (ja) | マ−ジ処理装置 | |
| JP2507399B2 (ja) | デ―タベ―ス装置 | |
| JP3018579B2 (ja) | 名前検索処理装置 | |
| JPH048816B2 (ja) | ||
| JPH09330322A (ja) | データ検索装置 | |
| JPH0272481A (ja) | 論理式による文字列検索装置及び同装置の制御方式 | |
| JPH02127742A (ja) | 空き領域検索方式 | |
| JPH0145648B2 (ja) | ||
| JPH05165891A (ja) | データベースのデータ登録・検索方式 | |
| JPH04145579A (ja) | 内容検索装置 | |
| JPS6373327A (ja) | デ−タ内容検索処理装置 | |
| JPH0291725A (ja) | 併合処理方式 | |
| JPH02206829A (ja) | レコード群ソート方法 | |
| JPH03226829A (ja) | 情報処理装置 | |
| JPH01270127A (ja) | データ検索処理方式 | |
| JPH02120982A (ja) | データベース管理装置 | |
| JPS63276639A (ja) | レコ−ド追加処理方法 |