JPH03231339A - Data base access system - Google Patents

Data base access system

Info

Publication number
JPH03231339A
JPH03231339A JP2027938A JP2793890A JPH03231339A JP H03231339 A JPH03231339 A JP H03231339A JP 2027938 A JP2027938 A JP 2027938A JP 2793890 A JP2793890 A JP 2793890A JP H03231339 A JPH03231339 A JP H03231339A
Authority
JP
Japan
Prior art keywords
buffer
database
access
state
data
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
JP2027938A
Other languages
Japanese (ja)
Inventor
Kazunori Shimakawa
島川 和典
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2027938A priority Critical patent/JPH03231339A/en
Publication of JPH03231339A publication Critical patent/JPH03231339A/en
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

PURPOSE:To improve the access performance to a data base by deciding a buffer control processing system with an access request and performing the buffer control suited to the processing based on the store state of a table. CONSTITUTION:A store state setting part 25 checks the store states of tables 22-1 - 22-x contained in a data base file 20 before the access requests are received from an inquiry processing part 29 to the tables 22-1 - 22-x. The part 25 decides whether the key value of a key field has a forward state or a non- forward state and updates the store state entry of a directory part 28 to set the deciding information. Then the part 29 performs the buffer control in an FIFO system or an LRU (least recently used) system in response to a fact whether the accesses must be successively given to those tables of the file 20 or not. As a result, the access performance to a data base is improved.

Description

【発明の詳細な説明】 [発明の目的コ (産業上の利用分野) 本発明は、データベースを構成するデータブロック単位
毎にデータを読出してバッファに格納するためのバッフ
ァ管理機能を有するデータベースアクセス方式に関する
Detailed Description of the Invention [Objective of the Invention (Industrial Application Field) The present invention provides a database access method having a buffer management function for reading data in units of data blocks constituting a database and storing the data in a buffer. Regarding.

(従来の技術) 一般に、データベース(ディスク装置に格納されている
)へアクセスして所望の処理を実行する場合には、格納
されたデータをバッファに呼び出した後に実行される。
(Prior Art) Generally, when a database (stored in a disk device) is accessed and desired processing is executed, the stored data is called into a buffer and then executed.

データベースに格納されたデータの呼び出しは、データ
ベースのテーブルの構成要素であるページ(ディスクと
メモリとの間のデータ転送の単位でブロックとも言う)
を単位にして行われる。このデータベースのテーブルを
呼び出しバッファに格納するバッファ管理方式%式%) 方式が用いられている。LRU方式は、ディスク上のテ
ーブル格納状態とは無関係に、最後にアクセスされてか
ら最も長い時間を経過したバッファ(アクセス頻度の最
小のバッファ)上のページを、次に読み込む新しいペー
ジで置き換える(リプレースの)対象とするものである
。この際、バッファ上のページの内容が更新されていれ
ばこれをディスクに書き戻し、更新されていなければ出
力せずにそのままとしておくものである。LRU方式は
、ある程度ランダムにディスク上のページがアクセスさ
れる場合には有効な方式である。
A call to data stored in a database is performed using a page (also called a block, which is a unit of data transfer between disk and memory), which is a component of a database table.
It is done in units of. A buffer management method is used in which tables of this database are stored in a call buffer. The LRU method replaces the page in the buffer for which the longest time has passed since it was last accessed (the buffer with the least access frequency) with the new page to be read next, regardless of the table storage state on disk. ). At this time, if the content of the page on the buffer has been updated, it is written back to the disk, and if it has not been updated, it is left as is without being output. The LRU method is an effective method when pages on a disk are accessed in a somewhat random manner.

ここで、ディスク上のテーブル格納状態とは、テーブル
をデータベースに最初に格納したとき、このテーブルを
構成するページ内のタプルの格納順序と各タプルに対応
するキー項目の値の順序との関係を示すものである。す
なわち、キー値の論理的順序がディスク上のそのキー値
を含むタプルの物理的順序に同じか(以下、この状態を
順状態と称する)、あるいはそうでないか(以下、この
状態を非順状態と称する)を示すものである。
Here, the table storage state on disk refers to the relationship between the storage order of tuples in the pages that make up this table and the order of the values of key items corresponding to each tuple when the table is first stored in the database. It shows. That is, whether the logical order of the key values is the same as the physical order of the tuples containing the key values on disk (hereinafter this state will be referred to as the ordered state) or not (hereinafter this state will be referred to as the non-ordered state). ).

(発明が解決しようとする課題) LRU方式は、ランダムにディスク上のページをアクセ
スする場合に有効な方式であるが、例えばテーブルのあ
るフィールドの合計値をとる処理のようなテーブル内の
ページを順次にアクセスする場合でテーブルの格納状態
が順状態であるときには処理効率が低下してしまう。す
なわち、キー値とタプルの格納順序が一致している場合
であっても、このテーブル格納状態に関係なく LRU
方式を用いてバッファ管理されているため、テーブル格
納状態(順状態であること)を利用したアクセス(バッ
ファ管理)、すなわち並行処理を行なうことができなか
ったことによるものである。
(Problem to be Solved by the Invention) The LRU method is an effective method when randomly accessing pages on a disk, but when pages in a table are accessed randomly, for example when calculating the total value of a field in a table. In the case of sequential access, if the storage state of the table is sequential, processing efficiency will decrease. In other words, even if the key values and tuples are stored in the same order, the LRU
This is because the buffers are managed using a method, so access (buffer management) using the table storage state (sequential state), that is, parallel processing cannot be performed.

本発明は前記のような点に鑑みてなされたもので、テー
ブル格納状態を利用して処理に適したバッファ管理を行
ない、データベースへのアクセス性能を向上させるデー
タベースアクセス方式を提供することを目的とする。
The present invention has been made in view of the above-mentioned points, and an object of the present invention is to provide a database access method that improves database access performance by utilizing table storage states to perform buffer management suitable for processing. do.

[発明の構成] (課題を解決するための手段) 本発明は、データベースを構成するデータブロック単位
毎にデータを読出してバッファに格納するためのバッフ
ァ管理機能を有するデータベースアクセス一方式におい
て、前記データベースに対するアクセス要求を行ない、
前記バッファに格納されたデータについて所望の処理を
実行する問い合わせ処理手段と、前記問い合わせ処理手
段によるアクセス要求時に、処理内容が前記データベー
スに対して順次アクセスを行なうべきものであるか否か
に応じて前記バッファ管理の処理方式(先読みFIFO
方式、LRU方式)を決定し、前記データベースから前
記データブロック単位毎にデータを読出して前記バッフ
ァにデータを格納するバッファ管理手段とを具備して構
成するものである。
[Structure of the Invention] (Means for Solving the Problems) The present invention provides a database access system having a buffer management function for reading data in units of data blocks constituting a database and storing the data in a buffer. make an access request to
an inquiry processing means for executing a desired process on the data stored in the buffer; and when an access request is made by the inquiry processing means, depending on whether the processing content is to sequentially access the database. The buffer management processing method (read-ahead FIFO)
and a buffer management means for reading data from the database in units of data blocks and storing the data in the buffer.

また、データブロック内のデータの物理的格納状態が順
状態であるか、または非順状態であるかを判別する格納
状態判別手段と、前記格納状態判別手段によって判別さ
れた格納状態を格納するための状態格納手段とをさらに
具備し、前記問い合わせ処理手段による処理内容が順次
アクセスを行なうべきものである場合に、前記状態格納
手段に格納された前記データブロックの格納状態に基づ
いてバッファ管理の処理方式を決定するように構成する
ものである。
Further, a storage state determination means for determining whether the physical storage state of data in the data block is an order state or an out-of-order state, and a storage state for storing the storage state determined by the storage state determination means. and a state storage means for buffer management based on the storage state of the data block stored in the state storage means when the processing content by the inquiry processing means is to be sequentially accessed. The system is configured to determine the method.

(作用) このような構成によれば、問い合わせの処理内容が順次
アクセスを行なうべきものである場合には、バッファ管
理の処理方式として先読みFIFO方式を用いてアクセ
スが行なわれる。例えば、テーブル内の全ページのある
フィールドの合計値や最小、最大値を求めるような問い
合わせの場合(全ページにアクセスする必要がある場合
)には、順次アクセスによるバッファ管理が可能である
ので、並列処理によってアクセス時間を短縮可能な先読
みFIFO方式が用いられる。また、問い合わせ処理が
実行される以前に、データベース内の各テーブルのペー
ジ(データブロック)の格納状態(順状態、非順状!3
)を予め保持しておくことにより、問い合わせ処理の処
理内容が順次アクセスを行なうべきものである場合(特
定のページにアクセスする必要がある場合)に、順次ア
クセスが可能であり、かつ先読みFIFO方式を用いる
ことが可能か否か判別される。先読みFIFO方式を用
いることにより、データがディスク装置に格納されてい
る場合、順次アクセスによりシーク時間が短縮され、特
に多数の端末(プロセス)によりデータベースが共用さ
れるシステムにおいて大幅にスループットが向上される
(Operation) According to such a configuration, when the processing content of the inquiry is to perform sequential access, the access is performed using the look-ahead FIFO method as the buffer management processing method. For example, in the case of a query to find the total value, minimum, or maximum value of a certain field on all pages in a table (if all pages need to be accessed), buffer management using sequential access is possible. A look-ahead FIFO method is used that can shorten access time through parallel processing. Also, before query processing is executed, the storage state of the pages (data blocks) of each table in the database (sequential state, non-sequential state!
) in advance, if the content of the inquiry process requires sequential access (when it is necessary to access a specific page), sequential access is possible, and the read-ahead FIFO method is possible. It is determined whether it is possible to use By using the read-ahead FIFO method, when data is stored on a disk device, seek time is shortened due to sequential access, and throughput is significantly improved, especially in systems where the database is shared by many terminals (processes). .

(実施例) 以下、図面を参照して本発明の一実施例を説明する。第
1図は同実施例に係わるデータベースアクセス方式を適
用するデータベースシステムの構成を示すブロック図で
ある。同図において、20はデータベースファイルであ
り、スキーマ情報21゜及び複数のテーブル22−1〜
22−xを含んでいる。スキーマ情報21は、テーブル
の名前、格納場所、大きさ、構成フィールドの属性(デ
ータ型、大きさ等)、フィールド数などのテーブルの属
性情報を含んでいる。テーブル22−1〜22−xは、
アクセス単位である複数のページから構成されている。
(Example) Hereinafter, an example of the present invention will be described with reference to the drawings. FIG. 1 is a block diagram showing the configuration of a database system to which the database access method according to the embodiment is applied. In the figure, 20 is a database file, which contains schema information 21° and a plurality of tables 22-1 to 22-1.
22-x. The schema information 21 includes table attribute information such as table name, storage location, size, attributes of constituent fields (data type, size, etc.), and number of fields. Tables 22-1 to 22-x are
It consists of multiple pages which are access units.

ページは、ディスク上のテーブル22−1〜22−xと
バッファ30(後述する)との間のアクセス単位であり
、複数のタプルにより構成されている。さらに、タプル
は、複数のフィールドにより構成されている。
A page is a unit of access between the tables 22-1 to 22-x on the disk and the buffer 30 (described later), and is composed of a plurality of tuples. Furthermore, a tuple is made up of multiple fields.

データベースファイル20は、格納状態設定部25、バ
ッファ管理部26によって処理の対象とされる。
The database file 20 is processed by the storage state setting section 25 and the buffer management section 26 .

格納状態設定部25は、データベースファイル20の各
テーブル22−1〜22−xの格納状態を調べて順状態
であるか、非順状態であるかをテーブル名と共に格納状
態エントリとしてディレクトリ部28に格納するもので
ある。ディレクトリ部28には、各テーブルのテーブル
名と、これに対応するテーブル格納状態(順状態、非順
状態)を示す情報が格納される。バッファ管理部26は
、問い合わせ処理部29からデータベースファイル20
内のテーブル22−1〜22−xへのアクセスが依頼さ
れ、この依頼に応じてバッファ管理を行なうものである
。バ・ソファ管理部26は、ディレクトリ部28の内容
に応じてノ<・ソファ管理方式(LRU方式、先読みF
IFO方式)を切り替えてテーブル22−1〜22−x
をアクセスし、ページ毎にバッファ30に格納する。問
い合わせ処理部29は、データベースファイル20のス
キーマ情報21を使用して、テーブル22−1〜22−
xへのアクセスを要求し、所望の処理を実行するもので
ある。
The storage state setting section 25 checks the storage state of each table 22-1 to 22-x in the database file 20 and writes whether the table is in an order state or an out-of-order state as a storage state entry along with the table name in the directory section 28. It is for storing. The directory section 28 stores information indicating the table name of each table and the corresponding table storage state (order state, non-order state). The buffer management unit 26 receives data from the database file 20 from the inquiry processing unit 29.
Access to the tables 22-1 to 22-x within is requested, and buffer management is performed in response to this request. The sofa management unit 26 uses a sofa management method (LRU method, pre-read F
IFO method) and change tables 22-1 to 22-x.
is accessed and stored in the buffer 30 page by page. The inquiry processing unit 29 uses the schema information 21 of the database file 20 to create tables 22-1 to 22-
It requests access to x and executes the desired process.

バッファ30には、複数面(複数ページ分)の格納領域
が設けられているものとする。
It is assumed that the buffer 30 is provided with multiple storage areas (for multiple pages).

次に、同実施例の動作について説明する。Next, the operation of this embodiment will be explained.

まず、問い合わせ処理部29によるテーブル22−1〜
22−xへのアクセスが要求される前に、データベース
ファイル20内のテーブル22−1〜22−xの格納状
態が、格納状態設定部25によって第2図のフローチャ
ートに示す手順に従って調べられる。なお、テーブル格
納状態とは、キー値の論理的順序が、ディスク上のその
キー値を含むタプルの物理的順序に同じか(順状態)、
あるいはそうでないか(非順状態)を示すものである。
First, tables 22-1 to 22-1 by the inquiry processing unit 29
22-x, the storage status of the tables 22-1 to 22-x in the database file 20 is checked by the storage status setting unit 25 according to the procedure shown in the flowchart of FIG. Note that the table storage state refers to whether the logical order of key values is the same as the physical order of the tuples containing the key values on disk (order state);
Or not (non-order state).

格納状態設定部25は、テーブル22−1の先頭のタプ
ルからキー値について全て検索し、その配列(順状態、
非順状態)を調べる(ステップAI)。第3図及び第4
図に、それぞれ順状態、非順状態に格納されたテーブル
の一例を示している。格納状態設定部25は、キーフィ
ールドのキー値が第3図のように順状態であると判別す
ると(ステップA2)、ディレクトリ部28の格納状態
管理エントリを新しく作成し、そのエントリにテーブル
名と順状態であることを示す情報を設定する(ステップ
A3)。また、ステップA2において、キーフィールド
のキー値が第4図のように昇順状態であると判別すると
、ディレクトリ部28の格納状態管理エントリを新しく
作成し、そのエントリにテーブル名と昇順状態であるこ
とを示す情報を設定する(ステップA4)。
The storage state setting unit 25 searches for all key values from the first tuple of the table 22-1, and sets the array (order state,
out-of-order state) (step AI). Figures 3 and 4
The figure shows an example of a table stored in a sequential state and a non-sequential state, respectively. When the storage state setting section 25 determines that the key value of the key field is in the order state as shown in FIG. 3 (step A2), it creates a new storage state management entry in the directory section 28 and enters the table name and Information indicating the forward state is set (step A3). Further, in step A2, if it is determined that the key value of the key field is in the ascending order state as shown in FIG. (Step A4).

ここで、データベースファイル20の全テーブルについ
ての格納状態を調べて、各テーブルの状態格納エントリ
を作成したか判別する(ステップA5)。すなわち、ス
キーマ情報21に記されているテーブルの属性情報から
、どのようなテーブルであるかを判別し、全テーブルに
ついての状態格納エントリを作成したか判別するもので
ある。各テーブルの状態格納エントリを作成していない
場合には、次のテーブルについて前記同様にして、格納
状態を調べて、その結果をディレクトリ部28に設定す
る。全てのテーブルについて状態格納エントリを作成す
ると、テ・−プルの格納状態の設定処理を終了する。な
お、テーブルの格納状態が順状態であるか否かを判別す
る基準として、厳密にキー値順にタプルが格納されてい
る必要はなく、ある程度のずれ(分散)を許すようにし
ても良い。
Here, the storage status of all tables in the database file 20 is checked to determine whether status storage entries have been created for each table (step A5). That is, it determines what kind of table it is from the attribute information of the table written in the schema information 21, and determines whether state storage entries have been created for all tables. If a state storage entry for each table has not been created, the storage state of the next table is checked in the same manner as described above, and the result is set in the directory section 28. When state storage entries are created for all tables, the table storage state setting process ends. Note that as a criterion for determining whether or not the storage state of a table is in the order state, it is not necessary that the tuples be stored strictly in the order of key values, and a certain degree of deviation (dispersion) may be allowed.

次に、データベースファイル20に格納されたデータベ
ースについての問い合わせ処理について第5図に示すフ
ローチャートを参照しながら説明する。利用者により指
定されたデータベースへの問い合わせは、問い合わせ処
理部29によって行われる。問い合わせ処理部29は、
処理対象とするテーブルをデータベースファイル20か
らバッファ30に呼び出して処理を行なうために、バッ
ファ管理部26にテーブルへのアクセスを依頼する。バ
ッファ管理部26は、問い合わせ処理部29による依頼
を受けて、アクセス要求が順次アクセスするものである
か否かを判別する(ステップBl)。例えば、あるフィ
ールドの合計値を求める場合やソート(並べかえ)等を
行なう場合のような、テーブルを順次アクセスする必要
がある処理であるか否かによって判別する。ここで、順
次アクセスする処理である場合には、アクセス対象とす
るテーブルのテーブル名を持つ格納状態エントリをディ
レクトリ部28から検索しくステップB2)、テーブル
の格納状態(順状態、非順状態)を示す情報を取り出す
(ステップB3)。取り出した格納状態エントリが昇順
状態を示す場合(ステップB4)、バッファ管理部26
は、そのテーブルに対するバ・ソファ管理方式をLRU
方式によって行ない、要求ページを呼び出してバッファ
30に格納する(ステップB5)。なお、ステップB1
において、アクセス要求か順次アクセスを行なうもので
ないと判別された場合には、LRU方式によってバッフ
ァ管理を行なう。
Next, inquiry processing regarding the database stored in the database file 20 will be explained with reference to the flowchart shown in FIG. Inquiries to the database specified by the user are performed by the inquiry processing unit 29. The inquiry processing unit 29
In order to call the table to be processed from the database file 20 to the buffer 30 and perform processing, the buffer management unit 26 is requested to access the table. Upon receiving the request from the inquiry processing unit 29, the buffer management unit 26 determines whether the access request is for sequential access (step B1). For example, the determination is made based on whether the process requires accessing the table sequentially, such as when calculating the total value of a certain field or when performing sorting. Here, in the case of sequential access processing, the storage state entry with the table name of the table to be accessed is searched from the directory section 28 (Step B2), and the storage state of the table (sequential state, non-sequential state) is checked. The information shown is extracted (step B3). If the retrieved storage state entry indicates an ascending order state (step B4), the buffer management unit 26
is the LRU management method for the table.
The requested page is retrieved and stored in the buffer 30 (step B5). Note that step B1
If it is determined that the access request is not one for sequential access, buffer management is performed using the LRU method.

一方、ステップB4において、ディレクトリ部28から
取り出した格納状態エントリがテーブルの格納状態を順
状態に示す場合には、先読みFIFO(先入れ先出し)
方式によってバ・ソファ管理を行なう(ステップB6)
。第6図のフローチャートに、先読みFIFO方式によ
るバ・ソファ管理の処理手順を示している。なお、先読
みFIFO方式とは、第7図に示すようなn面(nペー
ジ分のデータ格納領域)あるバッファ30のデータ入出
力(ページ単位)の対象とするバッファを順番にローテ
ーション(バッファ番号1,2゜・・・、n−1,n、
1,2.・・・)すると共に、第8図に示すように87
771面上のページpを処理し始める前にバッファi+
1面に次のページp十1の入力を発行することにより、
ページpの処理とページp+1の入力を並列に行なう方
式である。
On the other hand, in step B4, if the storage state entry taken out from the directory section 28 indicates the storage state of the table in order, the read-ahead FIFO (first in, first out)
Perform bath/sofa management according to the method (step B6)
. The flowchart in FIG. 6 shows the processing procedure for bath sofa management using the look-ahead FIFO method. Note that the read-ahead FIFO method refers to sequentially rotating (buffer number 1 ,2゜...,n-1,n,
1, 2. ...) and 87 as shown in Figure 8.
Buffer i+ before starting to process page p on page 771
By issuing the input of the next page p11 on the first page,
This is a method in which the processing of page p and the input of page p+1 are performed in parallel.

まず、バッファ管理部26は、アクセス要求の対象とす
るテーブルのページが既にバッファ30に存在するか否
かを判別する(ステップCI)。存在しない場合には(
ステップC2)、書き替えの対象となるバッファの内容
が更新されているか判別し、更新されていればディスク
に書き戻す(ステップCB)。更新されているか否かの
判別は、例えばバッファ30の各面にバッファの内容を
更新する場合にオンに設定される更新フラグを設け、こ
の更新フラグの状態によって行なう。バッファの内容が
ディスクに書き戻された後(内容が更新されている場合
)、バッファ管理部26は、その書き替えの対象とする
バッファに要求ページの内容を格納する(ステップC4
)。
First, the buffer management unit 26 determines whether the page of the table targeted for the access request already exists in the buffer 30 (step CI). If it does not exist (
Step C2), it is determined whether the contents of the buffer to be rewritten have been updated, and if so, they are written back to the disk (step CB). Whether the content has been updated or not is determined by, for example, providing an update flag on each side of the buffer 30 that is set to ON when the contents of the buffer are updated, and checking the state of this update flag. After the contents of the buffer are written back to the disk (if the contents have been updated), the buffer management unit 26 stores the contents of the requested page in the buffer targeted for rewriting (step C4).
).

こうして、要求テーブルが存在している状態になると(
ステップC2において、要求ページがバッファ30に既
に存在すると判別された場合を含む)、要求テーブルが
格納された次のバッファに格納されたページの内容が更
新されているか否かを判別し、更新されていればディス
クに書き戻す(ステップC5)。次に、要求ページの次
のページについてバッファリング手法を用いて先読みを
行ない、次のバッファに格納する(ステップC6)。
In this way, when the request table exists (
(including the case where it is determined in step C2 that the requested page already exists in the buffer 30), it is determined whether the contents of the page stored in the next buffer in which the requested table is stored has been updated, and If so, write it back to the disk (step C5). Next, the page next to the requested page is read ahead using a buffering method and stored in the next buffer (step C6).

所定のバッファに要求ページを格納すると、要求ページ
が格納されたバッファのアドレスを問い合わせ処理部2
9へ出力する(ステップC7)。問い合わせ処理部29
は、バッファに格納された要求ページに対する処理を実
行する。すなわち、先読みFIFO方式によって、第9
図に示すように、例えばページのバッファの入力がp、
p+l、p+2、・・・のように流れている場合に、こ
のページ入力と並行してバッファ上のページ処理がp−
1゜p、p+1.・・・のように実行される。
When the requested page is stored in a predetermined buffer, the processing unit 2 queries the address of the buffer where the requested page is stored.
9 (step C7). Inquiry processing unit 29
performs processing on the requested page stored in the buffer. In other words, by using the look-ahead FIFO method, the ninth
As shown in the figure, for example, the input of the page buffer is p,
If the flow is p+l, p+2,..., page processing on the buffer is performed in parallel with this page input.
1°p, p+1. It is executed as follows.

このようにして、問い合わせ処理の内容が、テーブル中
のページを順次アクセスするものである場合には、先読
みFIFO方式によってバッファ管理を行ないアクセス
時間を短縮させることができる。特に、問い合わせ処理
部29から複数のプロセス(問い合わせ指示が人力する
ための端末数が多い場合等)によって特定のデータベー
スに対してアクセス要求が行なわれる場合に、先読み可
能なプロセスについては先読みFIFO方式によってア
クセスが行われるため、システム全体についてのアクセ
ス時間の大幅な短縮化を図ることができる。
In this manner, when the content of the inquiry process is to sequentially access pages in a table, buffer management can be performed using the look-ahead FIFO method to shorten the access time. In particular, when an access request is made from the inquiry processing unit 29 to a specific database by multiple processes (for example, when there are a large number of terminals for manually issuing inquiry instructions), the read-ahead FIFO method is used for processes that can read ahead. Since access is performed, the access time for the entire system can be significantly shortened.

[発明の効果] 以上のように本発明によれば、処理内容が順次アクセス
を行なうものである場合には、要求テーブルの格納状態
が順状態であるか判別され、順状態であれば、先読みF
IFO方式によってバ・ソファ管理が行われる。従って
、テーブルの格納状態が並列処理が実行されることから
、処理時間を短縮することができる。このため、システ
ム全体について、データベースのアクセス性能が向上さ
れるものである。
[Effects of the Invention] As described above, according to the present invention, when the processing content is sequential access, it is determined whether the storage state of the request table is in the sequential state, and if it is in the sequential state, pre-reading is performed. F
Bath and sofa management is performed using the IFO method. Therefore, processing time can be shortened since the storage state of the table is processed in parallel. Therefore, the database access performance of the entire system is improved.

【図面の簡単な説明】[Brief explanation of drawings]

第1図は本発明の一実施例に係わるデータベースアクセ
ス方式を適用するデータベースシステムの構成を示すブ
ロック図、第2図はテーブルの格納状態を示す情報の設
定手順を示すフローチャート、第3図および第4図はテ
ーブルの格納状態の一例を示す図、第5図はデータベー
スへの問い合わせ処理の処理手順を示すフローチャート
、第6図は先読みFIFO方式によるバッファ管理の処
理手順を示すフローチャート、第7図及び第8図は先読
みFIFO方式を説明するための図、第9図は先読みF
IFO方式による処理内容を説明するための図である。 20・・・データベースファイル、21・・・スキーマ
情報、22−1〜22−x・・・テーブル、25・・・
格納状態設定部、26・・・バッファ管理部、28・・
・ディレクトリ部、29・・・問い合わせ処理部、 30・・・バッファ
FIG. 1 is a block diagram showing the configuration of a database system to which a database access method according to an embodiment of the present invention is applied, FIG. 2 is a flowchart showing the procedure for setting information indicating the storage state of tables, and FIGS. FIG. 4 is a diagram showing an example of the storage state of a table, FIG. 5 is a flowchart showing the processing procedure for querying the database, FIG. 6 is a flowchart showing the processing procedure for buffer management using the look-ahead FIFO method, and FIGS. Figure 8 is a diagram for explaining the look-ahead FIFO method, and Figure 9 is a diagram to explain the look-ahead FIFO method.
FIG. 3 is a diagram for explaining the processing contents by the IFO method. 20... Database file, 21... Schema information, 22-1 to 22-x... Table, 25...
Storage state setting unit, 26...Buffer management unit, 28...
・Directory section, 29... Inquiry processing section, 30... Buffer

Claims (3)

【特許請求の範囲】[Claims] (1)データベースを構成するデータブロック単位毎に
データを読出してバッファに格納するバッファ管理を行
なう機能を有するデータベースアクセス方式において、 前記データベースに対するアクセス要求を行ない、前記
バッファに格納されたデータについて所望の処理を実行
する問い合わせ処理手段と、前記問い合わせ処理手段に
よるアクセス要求時に、処理内容が前記データベースに
対して順次アクセスを行なうべきものであるか否かに応
じて前記バッファ管理の処理方式を決定し、前記データ
ベースから前記データブロック単位毎にデータを読出し
て前記バッファにデータを格納するバッファ管理手段と
、 を具備したことを特徴とするデータベースアクセス方式
(1) In a database access method that has a buffer management function that reads data in units of data blocks constituting a database and stores it in a buffer, an access request is made to the database and a desired request is made for the data stored in the buffer. an inquiry processing means for executing a process, and determining a processing method for the buffer management according to whether or not the processing content requires sequential access to the database when an access request is made by the inquiry processing means; A database access method comprising: buffer management means for reading data from the database in units of data blocks and storing the data in the buffer.
(2)前記バッファ管理手段は、前記問い合わせ処理手
段による処理内容が前記データベースに対して順次アク
セスを行なうべきものである場合に先読みFIFO方式
を用い、その他の場合にLRU方式を用いることを特徴
とする第1請求項記載のデータベースアクセス方式。
(2) The buffer management means uses a look-ahead FIFO method when the processing content of the inquiry processing means is to sequentially access the database, and uses an LRU method in other cases. A database access method according to claim 1.
(3)前記データブロック内のデータの物理的格納状態
が順状態であるか、または非順状態であるかを判別する
格納状態判別手段と、 前記格納状態判別手段によって判別された格納状態を格
納するための状態格納手段と、 をさらに具備し、 前記問い合わせ処理手段による処理内容が順次アクセス
を行なうべきものである場合に、前記状態格納手段に格
納された前記データブロックの格納状態に基づいてバッ
ファ管理の処理方式を決定することを特徴とする第1請
求項または第2請求項記載のデータベースアクセス方式
(3) storage state determining means for determining whether the physical storage state of data in the data block is in order or out of order; and storing the storage state determined by the storage state determining means. and a state storage means for storing the data block in the buffer based on the storage state of the data block stored in the state storage means when the processing content by the inquiry processing means is to perform sequential access. A database access method according to claim 1 or 2, characterized in that a management processing method is determined.
JP2027938A 1990-02-07 1990-02-07 Data base access system Pending JPH03231339A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2027938A JPH03231339A (en) 1990-02-07 1990-02-07 Data base access system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2027938A JPH03231339A (en) 1990-02-07 1990-02-07 Data base access system

Publications (1)

Publication Number Publication Date
JPH03231339A true JPH03231339A (en) 1991-10-15

Family

ID=12234843

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2027938A Pending JPH03231339A (en) 1990-02-07 1990-02-07 Data base access system

Country Status (1)

Country Link
JP (1) JPH03231339A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09265429A (en) * 1996-01-23 1997-10-07 Fujitsu Ltd Data distribution device, storage device, their controlling method and data transfer system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09265429A (en) * 1996-01-23 1997-10-07 Fujitsu Ltd Data distribution device, storage device, their controlling method and data transfer system

Similar Documents

Publication Publication Date Title
US10824673B2 (en) Column store main fragments in non-volatile RAM and the column store main fragments are merged with delta fragments, wherein the column store main fragments are not allocated to volatile random access memory and initialized from disk
US6061763A (en) Memory management system employing multiple buffer caches
US8290972B1 (en) System and method for storing and accessing data using a plurality of probabilistic data structures
US6754800B2 (en) Methods and apparatus for implementing host-based object storage schemes
US7451290B2 (en) Method and mechanism for on-line data compression and in-place updates
US5544357A (en) Database accelerator
US11580162B2 (en) Key value append
US20080016322A1 (en) Fast aggregation of compressed data using full table scans
EP1808779B1 (en) Bundling database
US20080270690A1 (en) System and method for efficient updates of sequential block storage
WO2014149615A1 (en) A method to accelerate queries using dynamically generated alternate data formats in flash cache
JPH10222407A (en) Method for processing multiple data base transactions in same process for reducing process overhead and redundant retrieval from data base server
US5999936A (en) Method and apparatus for compressing and decompressing sequential records in a computer system
US11886401B2 (en) Database key compression
JPH10260876A (en) Data structure of database, and data processing method for database
US20180011897A1 (en) Data processing method having structure of cache index specified to transaction in mobile environment dbms
JPH03231339A (en) Data base access system
US20200387491A1 (en) Systems and methods for fast bloom filter operations
US5845330A (en) Using an intermediate storage medium in a database management system
US20090089307A1 (en) Writable shared database objects
US20230315706A1 (en) Space-efficient persistent hash table data structure
JP2871755B2 (en) Split control method in dynamic hash
JPH1185585A (en) Method and device for complete memory resident index
JPH0456344B2 (en)
JPH04336340A (en) Disk cache access control system