[go: up one dir, main page]

JPH07200389A - Data management method - Google Patents

Data management method

Info

Publication number
JPH07200389A
JPH07200389A JP5349306A JP34930693A JPH07200389A JP H07200389 A JPH07200389 A JP H07200389A JP 5349306 A JP5349306 A JP 5349306A JP 34930693 A JP34930693 A JP 34930693A JP H07200389 A JPH07200389 A JP H07200389A
Authority
JP
Japan
Prior art keywords
data
correlation information
information
unit
storage
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
JP5349306A
Other languages
Japanese (ja)
Inventor
Takeshi Yokogawa
健 横川
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 JP5349306A priority Critical patent/JPH07200389A/en
Publication of JPH07200389A publication Critical patent/JPH07200389A/en
Priority to US08/859,724 priority patent/US5864679A/en
Priority to US09/030,397 priority patent/US6058267A/en
Pending legal-status Critical Current

Links

Landscapes

  • Memory System (AREA)

Abstract

PURPOSE:To enhance the system capability easily and sufficiently by deciding new data allocation in a data storage area based on data storage information and correlation information representing a data storage area. CONSTITUTION:A correlation information management section 3 generates correlation information from access information received newly and collates it with correlation information stored in a correlation information storage table 2 and updates the correlation information when the information if correlation information already registered and registers the correlation information on the correlation information storage table when the information is correlation information not registered yet. In this case, the information not updated for a prescribed period or over or not satisfying a predetermined condition is deleted from the correlation storage table 2. The correlation information management section 3 repeats update of the correlation information every time an access request comes and gives the correlation information to a data allocation decision section 4 when sufficient correlation information is obtained. The data allocation decision section 4 decides new data allocation based on the received correlation information and data storage information stored in a data storage information storage section 5.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、データを格納するため
の領域を複数持つデータ管理装置に対するデータ管理方
法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a data management method for a data management device having a plurality of areas for storing data.

【0002】[0002]

【従来技術】データを格納するための複数の領域を持
ち、複数の領域にデータを分散して格納・管理している
データ管理装置を用いる計算機システム上では、各処理
要求において実行される複数のデータアクセスは複数の
データ格納領域内のデータをアクセスする。この場合、
各処理要求を実行するのに必要なデータは同一のデータ
格納領域内に有る方が処理要求を実行するのに要する時
間は短くて済む。しかし、実行に必要な複数のデータが
同じデータ格納領域内に無いときには、たとえそれらが
同じ記憶装置内の別のデータ格納領域に格納されている
としても、それらに対するアクセスは同一データ格納領
域内に有る時に比べ読みだしや書き込みに余計な時間が
掛かる。また、複数のデータが異なる記憶装置上のデー
タ格納領域内に有るときには、その記憶装置を管理して
いる他のデータ管理装置に読み出しを依頼したり、その
記憶装置から転送する必要が有るためにアクセス時間が
さらに増大し、処理要求の実行時間が長くなる。
2. Description of the Related Art On a computer system using a data management device having a plurality of areas for storing data and storing and managing the data in a distributed manner in the plurality of areas, a plurality of processing executed for each processing request is performed. Data access accesses data in a plurality of data storage areas. in this case,
If the data required to execute each processing request is in the same data storage area, the time required to execute the processing request will be shorter. However, when multiple data required for execution are not in the same data storage area, even if they are stored in different data storage areas in the same storage device, access to them is in the same data storage area. It takes extra time to read and write compared to when there is. Further, when a plurality of data are in the data storage areas on different storage devices, it is necessary to request the reading from another data management device that manages the storage device or transfer from the storage device. The access time is further increased, and the processing request execution time is lengthened.

【0003】一方、複数のデータ格納領域へのアクセス
が同時に実行できる場合、各データ格納領域へのアクセ
ス頻度はなるべく均等化されている方が、システム全体
としては処理要求実行能力が向上する。従って、個々の
処理要求の実行時間を短くしかつシステムの処理要求実
行性能を十分に発揮させるためには各処理要求の必要と
するデータはなるべく同じデータ格納領域内に配置しか
つ各データ格納領域へのアクセス頻度は均等化されるよ
うにデータを配置することが望ましい。
On the other hand, when a plurality of data storage areas can be accessed at the same time, it is better to equalize the access frequency to each data storage area as much as possible, so that the processing request execution capability is improved as a whole system. Therefore, in order to shorten the execution time of each processing request and to fully exhibit the processing request execution performance of the system, the data required by each processing request should be placed in the same data storage area as much as possible and It is desirable to arrange the data so that the access frequency to is equalized.

【0004】従来、格納領域内へのデータ配置は、シス
テム管理者がデータの配置を陽に指定することにより行
なっていた。すなわち、システム管理者は各処理要求の
アクセスするデータ及び各処理要求の発生頻度等を解析
し、現在システムが十分な性能を発揮しているか否か、
さらに性能を十分に発揮していないとするならばそれは
データの配置として何が起因しているのかを解析した上
で、その解析に基づいて各々のデータをどのデータ格納
領域に配置するとシステムの性能を十分発揮させること
が出来るかを自ら決定していた。そして、新しいデータ
配置に基づき、各々のデータとそれが格納されるべきデ
ータ格納領域の対応をデータ管理装置に陽に指定するこ
とによりデータを配置していた。
Conventionally, the data arrangement in the storage area has been performed by the system administrator explicitly designating the data arrangement. That is, the system administrator analyzes the data accessed by each processing request, the frequency of occurrence of each processing request, etc. to determine whether or not the system is currently exhibiting sufficient performance.
Furthermore, if the performance is not fully exerted, the performance of the system should be determined by analyzing what is the cause of the data arrangement and allocating each data to which data storage area based on the analysis. He decided on his own whether or not he could make the most of it. Then, based on the new data arrangement, the data is arranged by explicitly designating the correspondence between each data and the data storage area in which it should be stored in the data management device.

【0005】これに対し、データとそれを格納する領域
の対応が与えられない場合、各々のデータはシステムが
任意の記憶装置中に適宜配置していた。
On the other hand, when the correspondence between the data and the area for storing the data is not given, the system appropriately arranges each data in an arbitrary storage device.

【0006】一方、この様な解析を行なわずにデータの
配置を行なう方法としては、予め決められた規則にした
がってデータを配置する方法が有る。これらの方法とし
てはデータベース・ベンチマーキング(Jim Gray編 喜
連川 優、渡辺栄一監訳 日経BP社)に述べられてい
るように、データをデータ格納領域に対しハッシュ関数
などを用いランダムに配置するもの、データをデータ格
納領域に対しラウンドロビン式に配置するもの、データ
の値の範囲をデータ格納領域の数に分割しそれらを一つ
ずつデータ格納領域に割り当てるものなどが有る。ま
た、データを予め決められた大きさにデータの値の範囲
毎に分割し、それをラウンドロビン方式でデータ格納領
域に割り付けて行く方式も提案されている。(Shahram
Ghandeharizadeh,David J.DeWitt,Proc.16th.VLDB Con
f. 1990) ここで、計算機システム上で実行される処理要求は、シ
ステムにおけるデータ配置によってその実行時間が異な
る。そのため、システムの性能を十分に発揮させるため
には、システムで実行される処理要求が必要とするデー
タはなるべく同じデータ格納領域に配置する必要が有
り、また複数の記憶装置を用いる際にはそれらの間の負
荷の差がなるべく無いようにする必要が有った。
On the other hand, as a method of arranging data without performing such analysis, there is a method of arranging data according to a predetermined rule. As these methods, as described in Database Benchmarking (edited by Jim Gray, Yu Kitsuregawa, Eiichi Watanabe, Nikkei BP), data is randomly arranged in the data storage area using a hash function, etc. Are arranged in a round robin manner with respect to the data storage area, and the range of data values is divided into the number of data storage areas and assigned one by one to the data storage area. In addition, a method has also been proposed in which data is divided into a predetermined size for each value range of data, and the data is allocated to a data storage area by a round robin method. (Shahram
Ghandeharizadeh, David J. DeWitt, Proc. 16th.VLDB Con
f. 1990) Here, the execution time of the processing request executed on the computer system differs depending on the data arrangement in the system. Therefore, in order to make full use of the performance of the system, it is necessary to place the data required by the processing requests executed by the system in the same data storage area as much as possible, and when using multiple storage devices, It was necessary to minimize the load difference between the two.

【0007】従来、その様な配置にするためには、シス
テム管理者は、システム上で稼働される各処理要求のア
クセスするデータ及び各処理要求の発生頻度、更には個
々の記憶装置の負荷等を測定・解析した後、データの配
置を決定する必要が有った。
Conventionally, in order to make such an arrangement, the system administrator has to access the data accessed by each processing request operating on the system, the frequency of occurrence of each processing request, and the load on each storage device. After measuring and analyzing, it was necessary to determine the data arrangement.

【0008】しかしながら、各処理要求がどの様なデー
タにアクセスするかを解析するためには、例えばソース
コードを解析する必要が有るが、計算機システム上で実
行される処理要求全てについてそのソースコードを解析
することは非常に困難であった。また、ソースコードを
解析しても、全てのデータアクセス先が判別できるわけ
ではなく、処理要求の実行時に動的に決定される要因に
よって分岐が発生したり、データアクセス先が決定した
りする場合には、その処理要求がアクセスするデータを
判別することはできない。それゆえ、ソースコードを解
析した結果をもとに上述の要求を満たすようなデータの
新しい配置が求められたとしても、その配置ではシステ
ムの性能を十分に発揮させることが出来なかった。
However, in order to analyze what data each processing request accesses, it is necessary to analyze, for example, the source code. However, the source code is analyzed for all the processing requests executed on the computer system. It was very difficult to analyze. In addition, even if the source code is analyzed, not all data access destinations can be identified, and a branch occurs or a data access destination is determined due to a factor that is dynamically determined when a processing request is executed. Cannot determine the data accessed by the processing request. Therefore, even if a new data arrangement that satisfies the above requirements is required based on the result of analyzing the source code, the system performance cannot be sufficiently exerted with that arrangement.

【0009】また、新しい処理要求がシステムに加えら
れたり、システム上で実行される処理要求の発生頻度が
変わる度に再度解析を実行し直す必要が有った。それゆ
え、データ配置をシステムの特性に合うようにすること
には多大な労力が必要であった。また、その様な解析を
せずにデータを適当に配置した後、個々のデータとデー
タ記憶装置の負荷を測定し、データ記憶装置間の負荷の
差がなるべく無くなるようにデータを再度配置し直すこ
とだけでは、どのデータとデータをシステム上で実行さ
れる処理要求が必要としているかということを考慮して
いないため、システムとしての性能を発揮できないとい
う問題点が有った。
Further, it is necessary to re-execute the analysis each time a new processing request is added to the system or the frequency of occurrence of processing requests executed on the system changes. Therefore, it takes a lot of effort to make the data arrangement match the characteristics of the system. Also, after arranging the data appropriately without such analysis, measure the load of each data and the data storage device, and rearrange the data so that the load difference between the data storage devices is eliminated as much as possible. However, there is a problem in that the performance of the system cannot be exhibited because it does not take into consideration which data and which data requires a processing request to be executed on the system.

【0010】一方、上述のようなデータを配置後に負荷
の差が無くなるように配置し直すのではなく、予め負荷
の差が出ないようにデータを配置する方法も考案されて
いる。その様なデータ配置の方式としては、データの値
を定められた範囲に分割しその範囲を各記憶領域に割り
当てていく方式、データの値をもとにランダムに各記憶
領域に割り当てて行く方式、データを各データ格納領域
に対しラウンドロビン式で割り当てて行く方式、データ
の値を定められた範囲毎に分割しその区分けされたもの
をラウンドロビン式に各データ格納領域に割り当ててい
く方式等が取られている。これらはいずれも、その様な
配置をすることによりある特定のデータ記憶装置に負荷
が集中することを確率的に避けようとするものである。
このような配置を用いると確かに負荷の集中しない場合
も有り得るが、これらの方式はどの様なシステム構成、
処理要求の発生頻度等でも負荷が集中しないことを保証
するわけではない。また、負荷が集中してしまう場合は
当然のことながら、例え負荷が集中しない場合でもシス
テム上で実行される処理要求が必要とするデータをラン
ダムに配置してしまうため、各処理要求の実行時間が長
くなり、従ってシステムの性能を十分に発揮させること
が出来ないという問題点が有った。
On the other hand, there is also devised a method of arranging data so that the difference in loads does not appear in advance, instead of rearranging the data as described above so as to eliminate the difference in loads. As a method of such data arrangement, a method of dividing a data value into a predetermined range and allocating the range to each storage area, a method of randomly allocating to each storage area based on the value of the data , A method of allocating data to each data storage area in a round-robin manner, a method of dividing the data value into a predetermined range and allocating the divided ones to each data storage area in a round-robin manner, etc. Has been taken. All of these are intended to stochastically avoid concentration of load on a specific data storage device by such an arrangement.
If such an arrangement is used, there may be cases where the load is not concentrated, but these systems have different system configurations,
It does not guarantee that the load will not be concentrated on the frequency of processing requests. Also, when the load is concentrated, of course, even if the load is not concentrated, the data required by the processing request executed on the system is randomly arranged, so the execution time of each processing request is increased. However, there was a problem that the system performance could not be fully exhibited.

【0011】この様に従来のようなデータ管理方法で
は、システムの性能を十分に発揮させるための解析が非
常に困難であり、更にはその解析が完全ではないために
システムの性能を十分に発揮させることが出来なかっ
た。
As described above, in the conventional data management method, it is very difficult to perform an analysis to make full use of the performance of the system, and furthermore, the analysis is not perfect, so that the performance of the system is sufficiently made. I couldn't let it go.

【0012】[0012]

【発明が解決しようとする課題】以上述べてきたよう
に、従来のデータ管理方法では、システムの性能を十分
に発揮させるためのアクセス要求やデータ配置に関する
解析が非常に困難であり、更にはその解析が完全ではな
いためにシステムの性能を十分に発揮させることが出来
なかった。
As described above, according to the conventional data management method, it is very difficult to analyze the access request and the data arrangement for making full use of the system performance. Since the analysis was not complete, the system performance could not be fully demonstrated.

【0013】本発明は、上記問題点を考慮してなされた
ものであり、データ配置を決定するに必要な情報の作成
・解析を自動的に実行し、システムの能力を容易かつ十
分に発揮させることのできるデータ管理方法を提供する
ことを目的とする。
The present invention has been made in consideration of the above problems, and automatically creates and analyzes the information necessary for determining the data arrangement, thereby making it possible to easily and sufficiently bring out the capabilities of the system. It is an object of the present invention to provide a data management method capable of controlling.

【0014】[0014]

【課題を解決するための手段】上記課題を解決するため
に、本発明に係るデータ管理方法では、複数の異なるデ
ータ格納領域に格納されているデータに対するアクセス
要求を受け取るアクセス要求受信ステップと、特定の複
数のデータが一連の処理内で共にアクセスされたことを
示すデータ相互の相関情報を所定回数の前記アクセス要
求に基づき作成する相関情報作成ステップと、データが
格納されているデータ格納領域を示すデータ格納情報お
よび前記相関情報からデータ格納領域内の新しいデータ
配置を決定するデータ配置決定ステップとを有すること
を特徴とする。
In order to solve the above problems, in a data management method according to the present invention, an access request receiving step of receiving an access request for data stored in a plurality of different data storage areas, and specifying Shows a correlation information creating step of creating correlation information of mutual data indicating that a plurality of data have been accessed together in a series of processing based on the access request of a predetermined number of times, and a data storage area in which the data is stored. A data arrangement determining step of determining a new data arrangement in the data storage area from the data storage information and the correlation information.

【0015】また、望ましくは、前記相関情報作成ステ
ップでは、アクセス要求の履歴を予め決められた規則に
基づきアクセス要求列に分割し、相関情報をアクセス要
求列において実行されたデータアクセスに基づき作成す
ることを特徴とする。この場合、さらに該相関情報作成
ステップで、受信したアクセス要求を履歴として保持す
るかどうか、または分割されたアクセス要求列を相関情
報を作成する際に使用するかどうかの少なくとも一方を
判別するようにしても良い。
Preferably, in the correlation information creating step, the history of access requests is divided into access request sequences based on a predetermined rule, and the correlation information is created based on the data access executed in the access request sequence. It is characterized by In this case, further, in the correlation information creating step, at least one of whether to retain the received access request as a history or whether to use the divided access request sequence when creating the correlation information is determined. May be.

【0016】また、望ましくは、前記データ格納領域を
格納するデータを複数のブロックに分割して管理される
ものとし、前記相関情報作成ステップでは、ブロックを
単位に相関情報を取得することを特徴とする。
Preferably, the data stored in the data storage area is managed by being divided into a plurality of blocks, and in the correlation information creating step, the correlation information is acquired for each block. To do.

【0017】また、望ましくは、本発明に係るデータ管
理方法に、決定された新しいデータ配置に従ってデータ
を再配置する再配置ステップをさらに有することを特徴
とする。この場合、前記再配置ステップでは、データ記
憶装置の負荷を調べ、各々の記憶装置の負荷を比較し、
負荷の軽い記憶装置におけるデータの配置を優先的に変
更するようにしても良いし、あるいは、格納しているデ
ータを、データを格納していない新たな記憶装置へと配
置を変更しながらコピーするようにしても良い。
Preferably, the data management method according to the present invention further comprises a rearrangement step of rearranging data according to the determined new data arrangement. In this case, in the relocation step, the loads on the data storage devices are examined, the loads on the respective storage devices are compared,
The arrangement of data in a storage device with a light load may be changed preferentially, or the stored data may be copied to a new storage device that does not store data while changing the arrangement. You may do it.

【0018】また、望ましくは、前記データ配置決定ス
テップでは、相関情報から有意なものを選択し、この選
択された相関情報に基づきデータ配置を変更することを
特徴とする。
Further preferably, in the data arrangement determining step, a significant one is selected from the correlation information, and the data arrangement is changed based on the selected correlation information.

【0019】また、望ましくは、前記相関情報作成ステ
ップでは、相関情報を更新する際に、定められた期間以
上更新されていないものを削除することを特徴とする。
Preferably, in the correlation information creating step, when the correlation information is updated, the information that has not been updated for a predetermined period or more is deleted.

【0020】また、望ましくは、前記相関情報作成ステ
ップでは、相関情報に関してその有意性を判別し、相関
情報を更新する際に有意でないと判別されたものを削除
することを特徴とする。
Further, preferably, in the correlation information creating step, the significance of the correlation information is discriminated, and those which are discriminated to be insignificant when updating the correlation information are deleted.

【0021】また、望ましくは、前記データ配置決定ス
テップでは、データ相互の関連度を測り、相関情報に基
づいたデータの再配置先に複数の候補が有る場合に、関
連度の高いデータを多く格納している記憶装置を再配置
先として選択することを特徴とする。
Preferably, in the data arrangement determining step, the degree of association between the data is measured, and when there are a plurality of candidates for the data rearrangement destination based on the correlation information, a lot of data having a high degree of association are stored. The storage device in use is selected as the relocation destination.

【0022】また、望ましくは、前記データ配置決定ス
テップでは、相関情報に基づいたデータの再配置先に複
数の候補が有る場合に、複数の候補を管理者に対し提示
し再配置先を指定させることを特徴とする。
Further, preferably, in the data arrangement determining step, when there are a plurality of candidates for the data rearrangement destination based on the correlation information, the plurality of candidates are presented to the administrator to specify the rearrangement destination. It is characterized by

【0023】一方、本発明に係るデータ管理装置は、複
数のデータ格納領域からなるデータ格納手段に格納され
ているデータに対するアクセス要求を受け取る手段と、
格納しているデータが一連の処理内で共にアクセスされ
たかどうかを示すデータ相互の相関情報をアクセス要求
に基づき作成する手段と、データがどのデータ領域に格
納されているかを示すデータ格納情報と前記相関情報か
らデータ格納領域内の新しいデータ配置を決定する手段
とを備えたことを特徴とする。
On the other hand, the data management apparatus according to the present invention comprises means for receiving an access request for data stored in the data storage means comprising a plurality of data storage areas,
Means for creating correlation information between data indicating whether the stored data is accessed together in a series of processing based on an access request; data storage information indicating in which data area the data is stored; And means for determining a new data arrangement in the data storage area from the correlation information.

【0024】[0024]

【作用】本発明では、計算機等から、複数の異なるデー
タ格納領域に分散して格納されているデータへのアクセ
スを要する処理要求が送信されてくると、まず、これを
受け取り、特定の複数のデータが一連の処理内で共にア
クセスされたことを示すデータ相互の相関情報を更新す
る。
According to the present invention, when a processing request that requires access to data stored in a distributed manner in a plurality of different data storage areas is transmitted from a computer or the like, it is first received and a specific plurality of data is stored. The mutual correlation information of the data indicating that the data are accessed together in a series of processing is updated.

【0025】この操作を繰り返し、システムにおける相
関情報に関する情報を十分に獲得した後、この相関情報
とデータが格納されているデータ格納領域を示すデータ
格納情報を基にして、システムの特性に有った、前記デ
ータ格納領域内の新しいデータ配置を決定する。
This operation is repeated to obtain sufficient information about the correlation information in the system. Then, based on the correlation information and the data storage information indicating the data storage area in which the data is stored, the characteristics of the system can be determined. In addition, a new data arrangement in the data storage area is determined.

【0026】したがって、本発明のデータ管理方法によ
れば、複数のデータ格納領域に格納されているデータが
一連の処理において共に参照・更新される頻度が多い時
には、その相関を自動的に判別することができ、その様
なデータを同じデータ格納領域に格納するようにデータ
の配置を自動的に変更することが出来る。
Therefore, according to the data management method of the present invention, when the data stored in the plurality of data storage areas are frequently referenced / updated in a series of processes, the correlation is automatically determined. The data arrangement can be automatically changed so that such data is stored in the same data storage area.

【0027】また、データの配置に必要な情報を自動的
に取得するためシステム管理者がシステム上の処理を解
析してデータの配置を決定する必要が無く、各プロセス
の実行時間が短くなりシステムの持つ性能を容易に引き
出すことが出来るようになる。
Further, since the system administrator does not need to analyze the processing on the system to determine the data allocation because the information required for the data allocation is automatically acquired, the execution time of each process is shortened. It will be possible to easily bring out the performance of the.

【0028】[0028]

【実施例】以下、図面を参照しながら本発明の実施例を
説明する。
Embodiments of the present invention will be described below with reference to the drawings.

【0029】図1には、本発明の一実施例に係わるデー
タ管理装置の概略構成を示す。図に示されるように、デ
ータ管理装置10は、アクセス要求受信部1、相関情報
記憶表2、相関情報管理部3、データ配置決定部4、デ
ータ格納情報記憶部5、データ配置変更部6およびデー
タアクセス部7を備えたものとなっている。
FIG. 1 shows a schematic configuration of a data management device according to an embodiment of the present invention. As shown in the figure, the data management device 10 includes an access request reception unit 1, a correlation information storage table 2, a correlation information management unit 3, a data allocation determination unit 4, a data storage information storage unit 5, a data allocation changing unit 6, and The data access unit 7 is provided.

【0030】このデータ管理装置10は、1つ以上の計
算機からなる計算機群9上で実行されている処理要求か
らデータアクセス要求を受け取り、アクセス要求の履歴
が予め決められた条件を満たすようになった時に相関情
報を作成・更新する。この様にして十分な量の相関情報
を取得した後、それとデータ格納情報に基づき新たなデ
ータ配置情報を作成する。
The data management apparatus 10 receives a data access request from a processing request executed on a computer group 9 composed of one or more computers, and the history of access requests satisfies a predetermined condition. Create and update correlation information when After acquiring a sufficient amount of correlation information in this way, new data arrangement information is created based on this and the data storage information.

【0031】また、データ管理装置10は、1つ以上の
記憶装置上にデータを格納する。ここで、データ管理装
置10は複数のデータ格納領域を管理するが、それらを
図6に示すように各記憶装置に一つずつ割り当てるよう
に構成することも、図7に示すように各記憶装置に複数
個ずつ割り当てて構成することも可能である。また図8
に示すように複数の記憶装置をまとめて一つのデータ格
納領域として扱うことも可能である。記憶装置内のデー
タ格納領域の数、個々の領域の大きさは任意であり、ま
た各記憶装置間のデータ格納領域の数、領域の大きさが
それぞれ異なる構成にすることも可能である。
The data management device 10 also stores data on one or more storage devices. Here, the data management device 10 manages a plurality of data storage areas, but it is also possible to allocate them to each storage device one by one as shown in FIG. 6 or by configuring each storage device as shown in FIG. It is also possible to allocate a plurality to each of the above. See also FIG.
It is also possible to collectively handle a plurality of storage devices as one data storage area as shown in FIG. The number of data storage areas in the storage device and the size of each area are arbitrary, and the number of data storage areas between the storage devices and the size of the areas may be different from each other.

【0032】データ管理装置10が管理する記憶装置8
は、データを格納する機能を有するものであって、該記
憶装置8中の任意の位置のデータを読み出したり、書き
変えたりすることができるものであれば良く、半導体メ
モリ、ハードディスク、フロッピーディスク、磁気テー
プ等を用いることが可能である。
Storage device 8 managed by the data management device 10
Has a function of storing data, as long as it can read or rewrite data at an arbitrary position in the storage device 8, a semiconductor memory, a hard disk, a floppy disk, It is possible to use a magnetic tape or the like.

【0033】本データ管理装置10は、独立した装置と
して構成することも可能であり、又計算機の持つ機能と
してソフトウェア或はハードウェアとして実現すること
も可能である。
The data management device 10 can be configured as an independent device, or can be realized as software or hardware as a function of the computer.

【0034】以下、図1のデータ管理装置10の動作を
説明する。
The operation of the data management device 10 shown in FIG. 1 will be described below.

【0035】1つ以上の計算機からなる計算機群9にお
いて実行されている処理要求から発生されたデータアク
セス要求は、アクセス要求受信部1によって受け取られ
る。アクセス要求はデータアクセスを行なうに必要なデ
ータと相関情報を生成するために必要なデータからな
る。アクセス要求受信部1は、受け取ったデータアクセ
ス要求を相関情報管理部3とデータアクセス部7へと渡
す。
The data access request generated from the processing request executed in the computer group 9 including one or more computers is received by the access request receiving unit 1. The access request is made up of data necessary for data access and data necessary for generating correlation information. The access request reception unit 1 passes the received data access request to the correlation information management unit 3 and the data access unit 7.

【0036】データアクセス部7は、受け取ったアクセ
ス要求に基づき記憶装置8からデータを読み出し或は更
新し、その結果をデータアクセス要求発生元(9のいず
れかの計算機)へと返す。
The data access unit 7 reads or updates data from the storage device 8 based on the received access request, and returns the result to the data access request source (any computer of 9).

【0037】相関情報管理部3は、新たに受け取ったア
クセス要求から相関情報を作成し、相関情報記憶表2に
記憶されている相関情報と照らし合わせ、既に登録され
ている相関情報ならばその相関情報の更新を行ない、又
未登録の相関情報ならばその相関情報を相関情報記憶表
2に登録する。その際、一定期間以上更新されていなか
ったり、或は予め決められた条件に満たないようなもの
を相関情報記憶表2から削除する。相関情報管理部3
は、アクセス要求がある度にこの様な相関情報の更新を
繰り返し、相関情報が十分に得られたならば相関情報を
データ配置決定部4に渡す。
The correlation information management unit 3 creates the correlation information from the newly received access request, compares it with the correlation information stored in the correlation information storage table 2, and if the correlation information is already registered, the correlation information is stored. Information is updated, and if it is unregistered correlation information, the correlation information is registered in the correlation information storage table 2. At that time, those that have not been updated for a certain period of time or those that do not meet the predetermined conditions are deleted from the correlation information storage table 2. Correlation information management unit 3
Repeats such updating of the correlation information each time there is an access request, and passes the correlation information to the data arrangement determination unit 4 when the correlation information is sufficiently obtained.

【0038】データ配置決定部4は、受け取った相関情
報とデータ格納情報記憶部5に記憶されているデータ格
納情報をもとに新たなデータ配置を決定する。データ配
置決定部4は、新たなデータ配置を決定したならば、そ
れをデータ配置変更部6とデータ格納情報記憶部5へと
渡す。
The data arrangement determination unit 4 determines a new data arrangement based on the received correlation information and the data storage information stored in the data storage information storage unit 5. After deciding the new data arrangement, the data arrangement determining unit 4 transfers it to the data arrangement changing unit 6 and the data storage information storage unit 5.

【0039】データ配置変更部5は、配置を変更するに
あたり、まずデータアクセス部7に対しどのデータの場
所をどの様に入れ換えるかを通知する。この通知を受け
るとデータアクセス部7は、それらのデータに対する更
新要求を一時的に禁止する。次に、データ配置変更部6
は、受け取ったデータ配置をもとにデータを入れ換え、
入れ換えが終了したならばその旨をデータ格納情報記憶
部5とデータアクセス部7へと伝える。
When changing the arrangement, the data arrangement changing unit 5 first notifies the data access unit 7 of which data location and how. Upon receiving this notification, the data access unit 7 temporarily prohibits update requests for those data. Next, the data arrangement changing unit 6
Replaces the data based on the received data arrangement,
When the replacement is completed, the fact is notified to the data storage information storage unit 5 and the data access unit 7.

【0040】データ格納情報記憶部5は、データ配置更
新部6よりデータの入れ換えが終了した旨を受け取る
と、先にデータ配置決定4部より受け取ったデータ配置
に関する情報に基づきデータ格納情報を更新する。ま
た、データアクセス部7は、データの入れ換えが終了し
たという通知を受け取ると、必要に応じてデータの配置
が変更されたことによるデータアクセスのための管理情
報の変更をしたうえで、それらへの更新要求を可能な状
態にする。
When the data storage information storage unit 5 receives from the data layout update unit 6 that the data replacement is completed, the data storage information storage unit 5 updates the data storage information based on the data layout information received from the data layout determination unit 4 in advance. . Further, when the data access unit 7 receives the notification that the data exchange is completed, the data access unit 7 changes the management information for the data access due to the change of the data arrangement as necessary, and then, Enables update requests.

【0041】次に、本発明のデータ管理装置の他の構成
例を図2に示す。図2のデータ管理装置は、基本的には
図1のデータ管理装置と同様の構成要素を有している
が、若干の構成要素の機能や接続関係が異なるので、特
徴的な点に重点をおいて、以下説明する。
Next, another configuration example of the data management apparatus of the present invention is shown in FIG. The data management apparatus of FIG. 2 basically has the same components as the data management apparatus of FIG. 1, but since the functions and connection relationships of some components are different, emphasis is placed on characteristic points. The description will be given below.

【0042】処理要求から発生されたデータアクセス要
求は、アクセス要求受信部1によって受け取られる。ア
クセス要求受信部1は、受け取ったデータアクセス要求
を相関情報管理部3とデータアクセス部7へと渡す。
The data access request generated from the processing request is received by the access request receiving unit 1. The access request reception unit 1 passes the received data access request to the correlation information management unit 3 and the data access unit 7.

【0043】データアクセス部7は、受け取ったアクセ
ス要求に基づきデータを読みだし或は更新を行ない、そ
の結果をデータアクセス要求発生元へと返すところまで
は図1に示す実施例と同じである。しかし、相関情報管
理部3は、相関情報を作成するにあたり新たに受け取っ
たアクセス要求とデータ格納情報記憶表2に格納されて
いるデータ格納情報の両者を用いる点が異なる。その他
の構成は図1と同様である。
The data access unit 7 is the same as the embodiment shown in FIG. 1 up to the point of reading or updating data based on the received access request and returning the result to the source of the data access request. However, the difference is that the correlation information management unit 3 uses both the newly received access request and the data storage information stored in the data storage information storage table 2 when creating the correlation information. Other configurations are the same as those in FIG.

【0044】次に、本発明のデータ管理装置のさらに他
の構成例を図3に示す。図3のデータ管理装置も、基本
的には図1のデータ管理装置と同様の構成要素を有して
いるが、若干の構成要素の機能や接続関係が異なるの
で、特徴的な点に重点をおいて、以下説明する。
Next, another example of the configuration of the data management apparatus of the present invention is shown in FIG. The data management device of FIG. 3 basically has the same components as the data management device of FIG. 1, but since the functions and connection relationships of some components are different, emphasis is placed on characteristic points. The description will be given below.

【0045】処理要求から発生されたデータアクセス要
求は、アクセス要求受信部1によって受け取られる。ア
クセス要求受信部1は、受け取ったデータアクセス要求
を相関情報管理部3とデータアクセス部7へと渡す。図
1や図2に示した構成ではデータアクセス部7は、デー
タをアクセスする際にそのデータが記憶装置8中の何処
に有るかという情報を独自に管理しており、そのデータ
を用いて記憶装置8中のデータの位置を調べアクセスを
行なっていた。それに対しこの構成では、データアクセ
ス部7は、データが記憶装置8中の何処に有るかという
情報を持っていない点が異なる。
The data access request generated from the processing request is received by the access request receiving unit 1. The access request reception unit 1 passes the received data access request to the correlation information management unit 3 and the data access unit 7. In the configuration shown in FIGS. 1 and 2, the data access unit 7 independently manages information about where in the storage device 8 the data is when the data is accessed, and the data is stored using the data. The position of the data in the device 8 was checked and accessed. On the other hand, this configuration is different in that the data access unit 7 does not have information on where in the storage device 8 the data is.

【0046】即ち、データアクセス部7は、アクセス要
求を受け取ると、データ格納情報記憶部5中のデータ格
納情報よりそのデータが何処に格納されているかを検索
した後そのデータにアクセスし結果をデータアクセス要
求発生元へと返す。相関情報管理部3はデータ格納情報
を用いずに新たに受け取ったアクセス要求から相関情報
を作成し、相関情報記憶表2と照らし合わせ、既に登録
されているものならばその相関情報の更新を行ない、又
未登録ならば相関情報記憶表2に登録する。その際、一
定期間以上更新されていなかったり、或は予め決められ
た条件に満たないようなものを相関情報記憶表2から削
除する。相関情報管理部3はこの様にして相関情報を更
新し、相関情報が十分に得られたと判断したならば相関
情報をデータ配置決定部4に渡す。データ配置決定部4
は、受け取った相関情報とデータ格納情報記憶部5に記
憶されているデータ格納情報をもとに新たなデータ配置
を決定する。データ配置決定部4は、新たなデータ配置
を決定したならばそれをデータ配置変更部6とデータ格
納情報記憶部5へと渡すところまでは図1と同じであ
る。しかしこの構成では、データ配置変更部6は、デー
タの配置を変更するにあたり、まずデータ格納情報記憶
部5に対しどのデータの場所をどの様に入れ換えるかを
通知する。この通知を受けるとデータ管理情報記憶部5
は、それらのデータが現在アクセスできない状態である
ということを記憶しておく。次に、データ配置更新部6
は、受け取ったデータ配置をもとにデータを入れ換え、
入れ換えが終了したならばその旨をデータ格納情報記憶
部5へと伝える。データ格納情報記憶部5は、データの
入れ換えが終了した旨をデータ配置変更部から受け取っ
たならば、それらのデータが再度アクセス可能な状態で
あると記憶し、それらに対するデータ格納情報を更新す
る。
That is, when the data access unit 7 receives the access request, it searches the data storage information in the data storage information storage unit 5 for where the data is stored, then accesses the data, and returns the result as the data. Return to the source of the access request. The correlation information management unit 3 creates the correlation information from the newly received access request without using the data storage information, compares it with the correlation information storage table 2, and updates the correlation information if it is already registered. If not registered, it is registered in the correlation information storage table 2. At that time, those that have not been updated for a certain period of time or those that do not meet the predetermined conditions are deleted from the correlation information storage table 2. The correlation information management unit 3 updates the correlation information in this way, and passes the correlation information to the data arrangement determination unit 4 when it is determined that the correlation information is sufficiently obtained. Data placement determination unit 4
Determines a new data arrangement based on the received correlation information and the data storage information stored in the data storage information storage unit 5. The data arrangement determining unit 4 is the same as that in FIG. 1 up to the point of passing the new data arrangement to the data arrangement changing unit 6 and the data storage information storage unit 5 when the new data arrangement is determined. However, in this configuration, when changing the data arrangement, the data arrangement changing unit 6 first notifies the data storage information storage unit 5 of which data location and how. Upon receiving this notification, the data management information storage unit 5
Remembers that the data is currently inaccessible. Next, the data arrangement updating unit 6
Replaces the data based on the received data arrangement,
When the replacement is completed, the fact is notified to the data storage information storage unit 5. When the data storage information storage unit 5 receives from the data arrangement change unit that the replacement of the data has been completed, the data storage information storage unit 5 stores that the data is in the accessible state again, and updates the data storage information for them.

【0047】また、データ管理装置のさらに他の構成と
して、上述した図2の構成と図3の構成を合わせた図4
の様な構成も可能である。
Further, as another configuration of the data management device, FIG. 4 which is a combination of the configuration of FIG. 2 and the configuration of FIG.
A configuration such as is also possible.

【0048】さらに、図1から図4に示した構成では、
データ配置決定部4とデータアクセス部7は、データ格
納情報を共有するかしないかという点に違いはあるが、
それぞれが独立にデータに対しアクセスできるように構
成されている。しかし、図5に示すようにデータ配置決
定部4がデータを読みだしたり更新したりする際には必
ずデータアクセス部7を通すような構成にすることも可
能であり、図1から図4までの構成をこの様に変更した
構成も可能である。
Further, in the configuration shown in FIGS. 1 to 4,
The data arrangement determination unit 4 and the data access unit 7 are different in that they share data storage information,
Each is configured to be able to access the data independently. However, as shown in FIG. 5, when the data arrangement determination unit 4 reads out or updates data, it is possible to always pass the data access unit 7, and the configuration shown in FIGS. A configuration in which the configuration of is modified in this way is also possible.

【0049】ここで、上述の実施例においては、データ
の配置を更新する際にデータに対するアクセスを一時的
に禁止していた。しかし、データの配置を変更する際に
データの複製を作成し、配置の変更中にもアクセスを可
能にし、配置を変更後配置変更中の更新分を反映させる
ように構成することにより、データのアクセスを禁止し
ないようにすることも可能である。
Here, in the above-described embodiment, access to the data is temporarily prohibited when updating the arrangement of the data. However, by creating a copy of the data when changing the layout of the data, making it accessible even when the layout is changed, and by configuring the layout to reflect the updated amount after the layout is changed, It is also possible not to prohibit access.

【0050】また、図9に示すようにデータ配置変更部
6を備えずに、データの配置決定部4がデータの配置を
決定後、その配置をシステム管理者に示すためのデータ
配置提示部16を設け、データ管理装置10自身がデー
タの配置を変更することはないような構成にすることも
可能である。
Further, as shown in FIG. 9, the data arrangement changing unit 6 is not provided, and after the data arrangement deciding unit 4 decides the data arrangement, the data arrangement presenting unit 16 for showing the arrangement to the system administrator. May be provided so that the data management device 10 itself does not change the data arrangement.

【0051】なお、図4および図5に示すデータ管理装
置、図1から図4の構成にと図5のような変形を加えた
データ管理装置ならびに図9に示すデータ管理装置に関
する構成および動作の詳細については自明であるので、
ここでの説明は省略する。
It should be noted that the data management device shown in FIGS. 4 and 5, the data management device obtained by modifying the configuration of FIGS. 1 to 4 as shown in FIG. 5, and the configuration and operation of the data management device shown in FIG. The details are self-explanatory, so
The description here is omitted.

【0052】ここで、データを格納する記憶装置を複数
個用いる場合、図10に示すように各記憶装置毎にデー
タ管理装置を設けるように構成する事も可能であるし、
図11に示すように複数台毎にデータ管理装置を設ける
ことも可能である。或はまた図12に示すように一台の
データ管理装置で構成することも可能である。また、記
憶装置を管理する計算機が複数台有る場合、図13に示
すようにそれぞれの計算機毎にデータ管理装置を設ける
事も可能であるし、図14に示すように複数台の計算機
毎にデータ管理装置を設けることも可能である。
Here, when using a plurality of storage devices for storing data, it is possible to provide a data management device for each storage device as shown in FIG.
As shown in FIG. 11, it is also possible to provide a data management device for every plurality. Alternatively, as shown in FIG. 12, it is also possible to configure a single data management device. Further, when there are a plurality of computers that manage the storage device, it is possible to provide a data management device for each computer as shown in FIG. 13, and it is also possible to provide a data management device for each computer as shown in FIG. It is also possible to provide a management device.

【0053】次に、データ管理装置10内部の相関情報
管理部3の構成例を図15に示す。以下、図15の各構
成要素に関して説明する。図に示されるように、本実施
例の相関情報管理部3は、相関情報生成部31、一連処
理情報記憶表32、アクセス履歴記憶表33、相関情報
表管理部34、有意情報選択部36を備えている。
Next, FIG. 15 shows an example of the configuration of the correlation information management section 3 inside the data management apparatus 10. Hereinafter, each component of FIG. 15 will be described. As shown in the figure, the correlation information management unit 3 of this embodiment includes a correlation information generation unit 31, a series of process information storage table 32, an access history storage table 33, a correlation information table management unit 34, and a significant information selection unit 36. I have it.

【0054】まず、データアクセス要求受信部1より送
られたアクセス要求は、相関情報生成部31が受け取
る。アクセス要求はデータアクセスを行なうに必要なデ
ータと相関情報を生成するに必要なデータからなり、例
えば計算機の識別子、処理要求のプロセスid、プロセ
ス内の処理を区別する識別子、データが格納されている
記憶装置の識別子、記憶装置内でのデータの位置を表す
論理或は物理アドレス、データに一意に割り付けられた
データ識別子、データアクセスを行なうライブラリの識
別子、アクセス時刻、プログラム上で該データアクセス
を他のデータアクセスと識別するためのパラメータなど
からなる。
First, the access request sent from the data access request receiving unit 1 is received by the correlation information generating unit 31. The access request consists of data necessary for data access and data necessary for generating correlation information. For example, an identifier of a computer, a process id of a processing request, an identifier for distinguishing processing within a process, and data are stored. Storage device identifier, logical or physical address indicating the position of data in the storage device, data identifier uniquely assigned to data, identifier of library for data access, access time, other data access on the program It consists of parameters for identifying and accessing the data.

【0055】この相関情報生成部31の動作を図16を
用いて説明する。
The operation of the correlation information generator 31 will be described with reference to FIG.

【0056】相関情報生成部31は、アクセス要求を受
信すると(ステップS1)、その要求が一連処理情報記
憶表32に登録されたどの処理からのものかを判別する
(ステップS2)。一連処理情報記憶表32には予めど
の様なデータアクセス要求列をもって一連の処理と扱う
かが登録されている。
Upon receipt of the access request (step S1), the correlation information generator 31 determines which process is registered in the series process information storage table 32 (step S2). Do with a series of processes have what kind of data access request string advance in series processing information storage table 32 is registered.

【0057】相関情報生成部31は、次に識別した結果
をもってアクセス履歴記憶表33にその一連の処理の履
歴が残されているかどうか検索する(ステップS3)。
アクセス履歴記憶表33には一連の処理が過去にアクセ
スしたデータ識別子の履歴が格納されている。該当する
エントリが表の中に存在しない場合、相関情報生成部3
1は新たなエントリを確保し識別子を記録する(ステッ
プS4〜S7)。エントリが存在した場合そのエントリ
に対し新たなアクセスを追加する(ステップS8)。
The correlation information generating unit 31 searches the access history storage table 33 based on the result of the next identification to see if a history of the series of processes remains (step S3).
The access history storage table 33 stores a history of data identifiers accessed by a series of processes in the past. If the corresponding entry does not exist in the table, the correlation information generation unit 3
1 secures a new entry and records the identifier (steps S4 to S7). If the entry exists, new access is added to the entry (step S8).

【0058】次に、相関情報生成部31は、現在のアク
セスでもって一連の処理が終了するか否かの判別を行な
う(ステップS8)。一連の処理かどうかの判別には、
例えばアクセス要求中にある計算機識別子、処理要求を
実行したプロセスidを用いて同じ計算機上の同じプロ
セスidを持つプロセスによって実行されたアクセス列
を一連の処理と判別することが出来る。一連の処理がま
だ継続すると判断された場合にはステップS1で次の入
力を待つことになるが、一連の処理が終了すると判断さ
れた場合、アクセス履歴表よりその一連の処理に関する
アクセス履歴情報を読みだし、それから相関情報を生成
し(ステップS10)、これを相関情報表管理部34へ
渡す(ステップS11)。
Next, the correlation information generator 31 determines whether or not the series of processing is completed by the current access (step S8). To determine whether it is a series of processing,
For example, the access sequence executed by a process having the same process id on the same computer can be determined as a series of processes by using the computer identifier in the access request and the process id that executed the process request. When it is determined that the series of processing is still continued, the next input is awaited in step S1, but when it is determined that the series of processing is finished, the access history information regarding the series of processing is displayed from the access history table. It is read out, correlation information is generated from it (step S10), and this is passed to the correlation information table management unit 34 (step S11).

【0059】ここに、一連の処理とは、所定の開始時点
より所定の終了時点までの間に行なわれた処理のことで
ある。例えばあるプロセスが生成されてから終了するま
でを一連の処理として扱うことも可能であるし、或はそ
のプロセスが入力に応じて異なる処理をする時にはその
処理毎を一連の処理と定義することも出来る。或はまた
そのプロセスの動作を複数に分割し、それらをそれぞれ
一連の処理と定義することも可能である。さらにはトラ
ンザクションとして実行される処理を一連の処理と定義
することも可能である。また特定の処理以外は全て同じ
ように定義することも可能である。或は所定の開始時刻
から終了時刻の間に実行されたものを全て一連の処理と
することも可能である。
Here, the series of processes means processes performed from a predetermined start time to a predetermined end time. For example, it is possible to treat a process as a series of processes from its creation to its termination, or when that process performs different processes according to input, each process can be defined as a series of processes. I can. Alternatively, it is also possible to divide the operation of the process into a plurality of parts and define them as a series of processes. Furthermore, it is possible to define a process executed as a transaction as a series of processes. Further, it is possible to define the same except for specific processing. Alternatively, it is possible to make all the processes executed between a predetermined start time and end time a series of processes.

【0060】相関情報生成部31は、一連の処理に関す
るアクセス要求の履歴のみから相関情報を作成すること
が可能である。一連の処理は複数のデータアクセスをす
るので、アクセス履歴は複数のアクセス要求、言い替え
ればアクセスした複数個のデータ識別子から構成されて
いる。例えばある処理がそれぞれの識別子がa、b、c
である3個のデータにアクセスしたとすると、相関情報
生成部31が生成する相関情報としては、例えば次に示
すような、識別子の組とその組に対するアクセス回数を
用いることが出来る。
The correlation information generator 31 can create the correlation information only from the history of access requests relating to a series of processes. Since a series of processing accesses a plurality of data, the access history is composed of a plurality of access requests, in other words, a plurality of accessed data identifiers. For example, in a certain process, each identifier is a, b, c
Assuming that the three pieces of data are accessed, the correlation information generated by the correlation information generating unit 31 can be, for example, the following set of identifiers and the number of times of access to the set.

【0061】(a,b,1) (b,c,1) (a,c,1) 即ち、n個のデータ識別子の組から成るアクセス履歴か
らはnC2個の識別子の組合せとその各々の組みに対す
るアクセス回数をもって相関情報とすることが出来る。
或はまた一連の処理におけるアクセス履歴であるデータ
の識別子の組とアクセス回数、上記の例では{ a、b、
c、1} をそのまま相関情報とすることも可能である。
(A, b, 1) (b, c, 1) (a, c, 1) That is, from the access history consisting of a set of n data identifiers, a combination of nC2 identifiers and their respective combinations Correlation information can be obtained based on the number of accesses to.
Alternatively, a set of identifiers of data, which is an access history in a series of processes, and the number of accesses, {a, b,
It is also possible to directly use c, 1} as the correlation information.

【0062】データの識別子としては、データの物理ア
ドレスや論理アドレス、或はリレーショナルデータベー
スにおけるタプルid、インデックスシーケンシャルフ
ァイルにおけるレコードidなどの様に論理的にデータ
を区別するためにデータに割り振られたものでも良い。
The data identifier is a physical or logical address of data, or a tuple id in a relational database, a record id in an index sequential file, or the like assigned to data to logically distinguish the data. But good.

【0063】上記の例ではアクセス履歴のみから相関情
報を生成していたのに対し、相関情報生成部31はアク
セス履歴とデータ格納情報記憶部5より得たデータ格納
情報から相関情報を作成することも可能である。この場
合、データを格納している記憶領域を複数のデータから
成るブロックに分割し、各ブロックに対して一意に定ま
るブロック番号を割り付け、そのブロック番号をもって
そのブロック中に含まれるデータに対する識別子とす
る。ブロックとしては、データをその値の範囲によって
分割したものやリレーショナルデータベースにおけるタ
プル、インデックスシーケンシャルファイルにおけるレ
コードなどの様にデータ管理の際にまとまって扱われる
ものをブロックとして扱うことも出来るし、或はページ
のようなデータの内容とは関係の無い論理的な領域をブ
ロックとして扱うことも出来る。例えばある一連の処理
がa、b、cの識別子を持つデータに対しアクセスを行
い、各々のデータが格納されているブロック番号がそれ
ぞれ10、5、8であったとする。この時生成される相
関情報としては次のような( ブロック番号、ブロック番
号、アクセス回数) という組みを用いることが出来る。
In the above example, the correlation information is generated only from the access history, whereas the correlation information generation unit 31 creates the correlation information from the access history and the data storage information obtained from the data storage information storage unit 5. Is also possible. In this case, the storage area storing the data is divided into blocks consisting of a plurality of data, a unique block number is assigned to each block, and the block number is used as an identifier for the data contained in the block. . As a block, it is possible to handle a block that is divided by the range of its value, a tuple in a relational database, a record in an index sequential file, etc. that are handled collectively during data management as a block, or A logical area that has nothing to do with the content of data such as a page can be treated as a block. For example, it is assumed that a certain series of processing accesses data having identifiers a, b, and c, and the block numbers in which the respective data are stored are 10, 5, and 8, respectively. As the correlation information generated at this time, the following set of (block number, block number, access count) can be used.

【0064】 (10,5,1)、(10,8,1)、(5,8,1) この様にデータの識別子を複数個のデータから成るブロ
ックに割り付けた番号へと変換することにより、発生し
得る識別子の数が少くなる。それゆえ、生じ得る組合せ
の数が減るため相関情報表管理部34での管理が容易に
なる。
(10,5,1), (10,8,1), (5,8,1) In this way, by converting the data identifier into a number assigned to a block composed of a plurality of data, , The number of identifiers that can be generated is small. Therefore, since the number of possible combinations is reduced, the management by the correlation information table management unit 34 becomes easy.

【0065】アクセス履歴記憶表33は、例えば一連の
処理に割り振られた識別番号をキーとした木構造を用
い、その葉の部分に連結リスト構造によってアクセスさ
れたデータの識別子を格納することが可能である。また
アクセス履歴記憶表33は、木構造で無くとも例えばハ
ッシュ表と連結リスト構造を用いて構成することも可能
である。また、各プロセスのアクセスしたデータを記憶
するには連結リスト以外にアドレスをキーとした木構造
を用いることも可能である。
The access history storage table 33 uses, for example, a tree structure in which an identification number assigned to a series of processes is used as a key, and an identifier of data accessed by the linked list structure can be stored in the leaf portion thereof. Is. Further, the access history storage table 33 can be configured by using, for example, a hash table and a linked list structure instead of the tree structure. Further, in order to store the data accessed by each process, it is possible to use a tree structure using an address as a key, in addition to the linked list.

【0066】相関情報生成部31が生成した相関情報は
相関情報表管理部34が受け取る。図17に、相関情報
表管理部34の動作を示す。
The correlation information table management unit 34 receives the correlation information generated by the correlation information generation unit 31. FIG. 17 shows the operation of the correlation information table management unit 34.

【0067】相関情報表管理部34は、相関情報生成部
31より相関情報を受け取ると(ステップS21)、そ
の各々の要素に対しそれが既に相関情報記憶表2に記憶
されているかどうかを調べる(ステップS22〜S2
3)。もしもある相関情報が相関情報記憶表2中に記憶
されていない場合、相関情報記憶表2に登録する(ステ
ップS24〜S27)。既に記憶されている場合には相
関情報記憶表2における相関情報を更新する(ステップ
S28)。
When the correlation information table management unit 34 receives the correlation information from the correlation information generation unit 31 (step S21), the correlation information table management unit 34 checks whether or not it is already stored in the correlation information storage table 2 (step S21). Steps S22 to S2
3). If any correlation information is not stored in the correlation information storage table 2, it is registered in the correlation information storage table 2 (steps S24 to S27). If already stored, the correlation information in the correlation information storage table 2 is updated (step S28).

【0068】以上の処理を相関情報生成部31より受け
取った相関情報の各要素に対して行なった後に、相関情
報表管理部34は相関情報が新しい配置を作成するに十
分なだけ取得されたかどうかを判断する(ステップS2
9)。もし十分であると判断した場合には有意情報選択
部36へ相関情報が十分取得された事を通知するととも
に、現在の相関情報記憶表2の内容を別の記憶領域へと
コピーする。或はその時点における相関情報表記憶2の
内容を有意情報選択部36へと送信する。十分に取得さ
れていないと判断した場合には特に何も実行しない。
After performing the above processing for each element of the correlation information received from the correlation information generation unit 31, the correlation information table management unit 34 determines whether the correlation information has been acquired enough to create a new arrangement. Is determined (step S2
9). If it is determined that the correlation information is sufficient, the significant information selection unit 36 is notified that sufficient correlation information has been acquired, and the current contents of the correlation information storage table 2 are copied to another storage area. Alternatively, the contents of the correlation information table storage 2 at that time are transmitted to the significant information selection unit 36. If it is determined that it has not been acquired sufficiently, nothing is done.

【0069】ここで、相関情報が十分に取得されたかど
うかは次のようにして判断することが出来る。例えばあ
らかじめ決められた時間が相関情報を取得し始めてから
経過したことをもって、十分に相関情報が取得されたと
判断することができる。このようにすると、毎日同じよ
うな定型処理をするシステムにおいて処理の集中する時
間帯に合わせた情報が得られる。或はまた予め相関情報
を取得する回数を設定しておき、相関情報の採取回数が
その値を超えた時に十分に取得されたとすることも出来
る。その回数を予めシステム管理者に入力することを促
して指定させるように構成することも可能である。或は
また相関情報に関し、後述する有意情報選択部36で用
いるような判断基準に従って有意なものを数え、その数
が一定の数以上に達したら十分に取得されたと判断する
ことも可能である。更にはまた相関情報をシステム管理
者に随時提示し、システム管理者に相関情報の取得終了
を指示させるように構成することも可能である。
Here, whether or not the correlation information is sufficiently acquired can be determined as follows. For example, it can be determined that sufficient correlation information has been acquired when a predetermined time has elapsed since the start of acquiring correlation information. In this way, in a system that performs similar routine processing every day, it is possible to obtain information tailored to the time zone in which processing is concentrated. Alternatively, the number of times the correlation information is acquired may be set in advance, and it may be considered that the correlation information is sufficiently acquired when the number of times the correlation information is collected exceeds the value. It is also possible to configure the system administrator to prompt the system administrator to input the number of times in advance. Alternatively, regarding the correlation information, it is also possible to count significant ones according to a criterion used in a significant information selecting unit 36 described later, and to judge that the correlation information is sufficiently acquired when the number reaches a certain number or more. Furthermore, it is also possible to present the correlation information to the system administrator at any time and to have the system administrator instruct the system administrator to end the acquisition of the correlation information.

【0070】有意情報選択部36は、相関情報表管理部
34より相関情報を十分に取得した旨の通知を受け取る
と、相関情報表が送られて来た場合にはそこから、そう
でない時には相関情報表管理部34がコピーしておいた
相関情報表を読み出す。その後その中から有意なものを
選択し、選択された情報をデータ配置決定部4へと渡
す。或はまた読み出された結果から有意なものを選択せ
ずに全てをデータ配置決定部4へと渡すことも可能であ
る。
When the significant information selection unit 36 receives the notification from the correlation information table management unit 34 that the correlation information has been sufficiently acquired, the correlation information table is sent from the correlation information table when it is sent, and the correlation information table is sent when the correlation information table is not sent. The correlation information table copied by the information table management unit 34 is read out. After that, a significant one is selected from among them, and the selected information is passed to the data arrangement determining unit 4. Alternatively, all of the read results can be passed to the data arrangement determination unit 4 without selecting a significant one.

【0071】有意なものを選択する方式としては、例え
ば相関情報中のアクセス頻度順にソートする手段を付加
し、アクセス頻度順でソートした結果の上位のものから
予め決められた個数を選択し、それらを有意であるとす
ることが出来る。或はまた最も高いアクセス頻度数に比
べて予め決められた比率以上のアクセス回数を持つもの
を、有意であると判断することが出来る。或はまた全ア
クセス回数に対して予め決められた比率以上アクセスし
ているもののみを有意なものとすることも可能である。
或はまたアクセス回数の分布を調べその平均値や標準偏
差等を元に選択する事も可能である。
As a method of selecting a significant one, for example, a means for sorting in the order of access frequency in the correlation information is added, and a predetermined number is selected from the upper ones of the results sorted in the order of access frequency. Can be significant. Alternatively, it is possible to determine that the number of times of access that is equal to or higher than a predetermined ratio as compared with the highest number of access frequencies is significant. Alternatively, it is also possible to make only those that are accessing more than a predetermined ratio to the total number of accesses significant.
Alternatively, it is also possible to examine the distribution of the number of accesses and select based on the average value or standard deviation thereof.

【0072】上に記述した構成では、有意情報選択部3
6が有意な情報を選択した後も、以前に取得したデータ
に追加して相関情報を取得し続けている。それに対し相
関情報表管理部34が十分情報を取得したと判断し、そ
の時点の相関情報表を退避する、或は有意情報選択部3
6へと相関情報表の内容を送信した後にそれまでのデー
タを破棄し、新たに相関情報を取得し直すように構成す
ることも可能である。このように構成する事により処理
要求の変化に動的に配置を変更していくことができるよ
うになる。
In the configuration described above, the significant information selection unit 3
Even after 6 has selected significant information, it continues to acquire correlation information in addition to the previously acquired data. On the other hand, the correlation information table management unit 34 judges that sufficient information has been acquired and saves the correlation information table at that time, or the significant information selection unit 3
It is also possible to discard the data up to that point after transmitting the contents of the correlation information table to No. 6 and newly acquire the correlation information. With this configuration, the arrangement can be dynamically changed according to the change in processing request.

【0073】相関情報記憶表2は相関情報を格納する複
数のエントリーから成り、各エントリーにはアクセスさ
れたデータの識別子の組とその発生頻度が格納される。
各エントリーを前述のようにデータ識別子ではなくブロ
ックへ一意に割り付けられた番号の組と発生頻度から成
るように構成することも可能である。発生頻度としては
発生頻度数そのものを記憶しておくことも出来るし、或
は発生頻度を正規化したような値、或は発生頻度をその
引数として持つ任意の関数の関数値で代用することも出
来る。
The correlation information storage table 2 is made up of a plurality of entries for storing the correlation information, and each entry stores a set of identifiers of accessed data and its occurrence frequency.
It is also possible to configure each entry to consist of a set of numbers uniquely assigned to a block and the frequency of occurrence instead of the data identifier as described above. As the occurrence frequency, the occurrence frequency number itself can be stored, or a value obtained by normalizing the occurrence frequency, or a function value of any function having the occurrence frequency as its argument can be substituted. I can.

【0074】相関情報記憶表2の管理する全てのエント
リが既に使用されている時、相関情報表管理部34は新
たな空き領域を確保する必要が有る。それには例えば全
てのエントリに対し最後に更新された時刻を記憶するた
めの領域を付加し、最も古い時刻に更新されたエントリ
を相関情報記憶表2から取り除くことが出来る。或はま
た、相関情報記憶表2のエントリをそのアクセス頻度数
によりソートする手段を付加し、ソートした結果最もア
クセス頻度数が少いものを取り除くことにより空き領域
を確保することも可能である。或はまた、相関情報記憶
表2の各エントリをそのアクセス頻度に基づき有意なも
のと有意でないものとに分類し有意で無いものの間での
み上記のような処理を実行して相関情報記憶表2から削
除される候補を選択することも出来る。有意なものの選
択の仕方としては前述の有意情報選択部36における選
択方法と同様な処理を実行する事が出来る。
When all the entries managed by the correlation information storage table 2 are already in use, the correlation information table management section 34 needs to secure a new free area. For this purpose, for example, an area for storing the last updated time can be added to all entries, and the entry updated at the oldest time can be removed from the correlation information storage table 2. Alternatively, it is possible to secure a free area by adding a means for sorting the entries of the correlation information storage table 2 according to the number of access frequencies thereof and removing the one having the smallest number of access frequencies as a result of sorting. Alternatively, each entry of the correlation information storage table 2 is classified into a significant one and an insignificant one on the basis of the access frequency, and the above processing is executed only between those not significant and the correlation information storage table 2 is executed. You can also select candidates to be deleted from. As a method of selecting a significant item, the same process as the selection method in the significant information selecting unit 36 described above can be executed.

【0075】次に、データ配置決定部4の動作を図18
を用いて説明する。有意情報選択部36から相関情報を
受信すると、まずデータ配置決定部4はデータ格納情報
記憶部5よりデータが何処の記憶装置に格納されている
か、或は各々の記憶装置の容量はどれくらいか、といっ
たデータ格納情報を読み出す。その後データ格納情報と
相関情報から予め決められた評価関数を用いて現在のデ
ータ配置を評価する。そして、それを現在のデータ配置
であるとして、データ配置とその評価値を記憶しておく
(ステップS31)。次に、相関情報に基づきデータの
配置を変更し(ステップS37)、その配置に関する評
価値を求め(ステップS32)、それが現在の配置に比
べて良い評価値を与えるものであるならば(ステップS
33)、そのデータ配置と評価値を現在のものとして記
録しておく(ステップS34)。この評価を続けて行
き、予め決められた条件を満たすほどのデータ配置が得
られたならば(ステップS35,S36)このサイクル
を止めその時点での配置をデータ配置変更部6へと送信
する(ステップS38)。
Next, the operation of the data arrangement determining unit 4 will be described with reference to FIG.
Will be explained. When the correlation information is received from the significant information selection unit 36, the data arrangement determination unit 4 first determines in which storage device the data is stored from the data storage information storage unit 5, or how much capacity each storage device has. The data storage information such as After that, the current data arrangement is evaluated using a predetermined evaluation function from the data storage information and the correlation information. Then, assuming that it is the current data arrangement, the data arrangement and its evaluation value are stored (step S31). Next, the arrangement of the data is changed based on the correlation information (step S37), an evaluation value for the arrangement is obtained (step S32), and if it gives a better evaluation value than the current arrangement (step S32). S
33), the data arrangement and the evaluation value are recorded as the current one (step S34). This evaluation is continued, and if a data arrangement that satisfies a predetermined condition is obtained (steps S35 and S36), this cycle is stopped and the arrangement at that time is transmitted to the data arrangement changing unit 6 ( Step S38).

【0076】ここで、データ配置決定部4は、次のよう
にしてデータ配置を評価する。例えばN個のデータ、M
個のデータ格納領域が存在する時、NM個の変数Xij
( 1≦i≦N、1≦j≦M、Xij=0 or 1) でもっ
てi番目のデータがj番目のデータ格納領域に格納され
ていることを示すことができる。i番目のデータとk番
目のデータが良く一緒に使用される場合にはこれらのデ
ータはなるべく同じデータ格納領域に存在することが望
ましい。そこで例えば、
Here, the data arrangement determination unit 4 evaluates the data arrangement as follows. For example, N data, M
When there are data storage areas, NM variables Xij
(1 ≦ i ≦ N, 1 ≦ j ≦ M, Xij = 0 or 1) can be used to indicate that the i-th data is stored in the j-th data storage area. When the i-th data and the k-th data are often used together, it is desirable that these data exist in the same data storage area as much as possible. So, for example,

【0077】[0077]

【数1】 という関数を用いる事により、データ配置を評価する事
ができる。この関数ではi番目のデータとk番目のデー
タが同じj番目のデータ格納領域に格納される時に評価
値がCikだけ増加する。ただし、この評価関数を用い
ると、同じデータ格納領域に配置することは保証される
が、どのデータ格納領域に格納されるかに関しては分か
らない。例えば、なるべくもともとi番目のデータとj
番目のデータが有ったデータ格納領域からは動かしたく
ない時には、次のような評価関数とする。
[Equation 1] The data allocation can be evaluated by using the function. In this function, the evaluation value increases by Cik when the i-th data and the k-th data are stored in the same j-th data storage area. However, when this evaluation function is used, it is guaranteed that the data will be placed in the same data storage area, but it is not known in which data storage area the data will be stored. For example, if possible, the i-th data and j
If you do not want to move from the data storage area where the th data was, use the following evaluation function.

【0078】[0078]

【数2】 ここで、V( Xij) はi番目のデータがもともと格納
されていたデータ格納領域から移動されることによるペ
ナルティーを表す関数であり、Dikはそのペナルティ
ーと第一項とのバランスを決める比例定数である。V(
Xij) としては例えば第i番目のデータがもともと格
納されていたデータ格納領域の番号をDiと書くとする
と、例えば次のようにクロネッカーのデルタ関数δ(
i, j) を用いて
[Equation 2] Here, V (Xij) is a function that represents the penalty due to the i-th data being moved from the data storage area where it was originally stored, and Dik is a proportional constant that determines the balance between the penalty and the first term. is there. V (
As Xij), if the number of the data storage area where the i-th data was originally stored is written as Di, for example, the Kronecker delta function δ (
i, j)

【0079】[0079]

【数3】 データの配置を評価する評価関数は2次式に限るもので
はなく、より高次な式を用いる事も可能である。また変
数の表現の仕方も別の方式をとっても構わない。更には
またアクセス頻度を考慮したり、データの配置先の記憶
装置の負荷を考慮した評価関数にすることも可能であ
る。或はそれらを評価関数に対する制約条件として記述
することも可能である。
[Equation 3] The evaluation function for evaluating the data arrangement is not limited to the quadratic expression, and higher-order expressions can be used. Also, another method may be used for expressing variables. Furthermore, it is also possible to use an evaluation function considering the access frequency and the load of the storage device at the data allocation destination. Alternatively, it is also possible to describe them as constraints for the evaluation function.

【0080】上記の評価関数を用いてデータ配置を評価
すると、あるデータをa、bどちらのデータ格納領域に
配置しても評価関数の評価値が変わらない場合が起こり
得る。
When the data arrangement is evaluated by using the above evaluation function, the evaluation value of the evaluation function may not change even if a certain data is arranged in either the data storage area a or b.

【0081】この時、データ配置決定部4は配置先をラ
ンダムに選択して配置する。或はまたその様なデータに
関してはオペレータに対し配置先の候補を提示しそのど
ちらに配置するかを指定させるようにすることも出来
る。更にはデータ格納領域に一意に番号を割り付けてお
き、その番号の小さい方或は大きい方に格納するように
することも可能である。或はまたその番号を用いた距離
の概念を導入し、現在データが格納されているデータ格
納領域と再配置先のデータ格納領域との距離の短い方を
候補とすることも出来る。距離としては例えば番号の差
をもって二つのデータ格納領域の距離とすることが出来
る。またデータ相互の関連度を評価する手段を付加し、
今移動しようとするデータと各々のデータ格納領域に格
納されているデータの間の関連度を評価し、関連度の高
いデータの多い方を移動先とすることも出来る。関連度
としては例えば、データ相互を例えばデータの索引を木
構造で作成している時にデータの位置を示す葉が両方含
まれるような部分木の段数や、リレーショナルデータベ
ースなどでは、データが同じリレーションに含まれるか
否かということを用いることが可能である。更にはま
た、各データ記憶装置の負荷を調べる手段を付加し、再
配置先の負荷の軽い方を優先することも可能である。
At this time, the data arrangement determining unit 4 randomly selects and arranges the arrangement destination. Alternatively, with respect to such data, the operator can be presented with a candidate for a placement destination and designated to which one. Further, it is possible to uniquely assign a number to the data storage area and store the number in the smaller or larger number. Alternatively, the concept of distance using the number may be introduced, and one having a shorter distance between the data storage area in which the current data is stored and the data storage area of the relocation destination may be set as a candidate. As the distance, for example, the difference between the numbers can be used as the distance between the two data storage areas. In addition, a means for evaluating the degree of association between data is added,
It is also possible to evaluate the degree of association between the data to be moved now and the data stored in each data storage area, and select the one with the most data with a high degree of association as the destination. As the degree of association, for example, the number of subtrees that include both leaves that indicate the position of data when creating data indexes in a tree structure, or in a relational database, etc., data has the same relation. Whether it is included or not can be used. Furthermore, it is also possible to add a means for checking the load of each data storage device and give priority to the lighter load at the relocation destination.

【0082】この様に定式化後、例えばデータの配置に
関して全ての組合せに関してその評価値を求めて最も良
いデータ配置を決定することが出来る。或は上記のよう
な定式化後、この問題を線形計画問題へと変形し、線形
計画法を用いて解くことも出来る。或はまたこの問題を
シミュレーティッドアニーリング法を用いて解くことも
可能である。更には必ずしも最良の配置で無くとも最良
の配置に十分近ければ良いときには、予め条件を決めて
おきその条件を満たす配置が求められた時点でその配置
を選択することも可能である。
After formulating in this way, the best data arrangement can be determined by, for example, obtaining the evaluation values of all combinations regarding the data arrangement. Alternatively, after the above formulation, this problem can be transformed into a linear programming problem and solved using a linear programming method. Alternatively, this problem can be solved using a simulated annealing method. Furthermore, when the arrangement is not necessarily the best arrangement, and it is sufficient that the arrangement is sufficiently close to the best arrangement, it is possible to predetermine conditions and select the arrangement when the arrangement satisfying the conditions is obtained.

【0083】データ配置変更部6は、データ配置決定部
4より受け取った配置に基づきデータの配置を変更す
る。データ配置変更部6は、データの配置を変更するに
先立ちそれらのデータへの更新を出来なくしておく必要
が有る。それはデータをもともとのデータ格納領域から
変更先のデータ格納領域へ転送中にそのデータへの更新
が有った場合データの一貫性が保たれなくなる可能性が
有るためである。したがってまず該当データを書き込み
不可の状態にするため、データのロックを管理している
装置、例えば図1の構成例ではデータアクセス部7に対
しデータに対するロックを要求し確保する。その後デー
タを転送先データ格納領域に移動し、転送後そのデータ
に対するロックを開放する。或はデータのコピーを作成
しておき移動中にはコピーに対し変更を行ない移動終了
後に移動中の変更をもとのデータに反映させるようにす
ることもでき、この場合にはデータ配置の変更中にもデ
ータへのアクセスが可能である。
The data arrangement changing unit 6 changes the arrangement of data based on the arrangement received from the data arrangement determining unit 4. The data arrangement changing unit 6 needs to disable updating of the data before changing the arrangement of the data. This is because if there is an update to the data during transfer from the original data storage area to the change destination data storage area, the data consistency may not be maintained. Therefore, first, in order to put the corresponding data in the unwritable state, the device that manages the data lock, for example, the data access unit 7 in the configuration example of FIG. After that, the data is moved to the transfer destination data storage area, and after the transfer, the lock for the data is released. Alternatively, you can make a copy of the data and make changes to the copy during the move so that the changes in the move are reflected in the original data after the move is completed. In this case, change the data arrangement. It is possible to access the data inside.

【0084】また、データを転送するに際に全ての記憶
装置の負荷が均等であるとは限らない。負荷の重い記憶
装置からのデータの転送にはそれだけ時間が掛かる。ま
た、負荷の重さは時々刻々と変わって行くものであるか
ら、後でその記憶装置の負荷が軽くなる可能性を考慮す
るとデータを転送する際に負荷の重い記憶装置からの転
送は後廻しにした方が良い。そのため各データ記憶装置
の負荷を調べる手段を付加し、その負荷の軽い記憶装置
中のデータ格納領域への再配置を優先して実行するよう
な構成にすることも可能である。
Further, when transferring data, the loads on all storage devices are not always equal. Transferring data from a heavily loaded storage device takes that much time. In addition, since the weight of the load changes from moment to moment, when considering the possibility that the load on the storage device will be lighter later, when transferring data, the transfer from the storage device with a heavy load is postponed. It is better to Therefore, it is possible to add a means for checking the load of each data storage device and to preferentially execute the relocation to the data storage area in the storage device having the light load.

【0085】次に、本発明を複数のディスク上に格納さ
れたインデックストシーケンシャルファイルを用いるデ
ータベースに適応した一実施例を説明する。
Next, an embodiment in which the present invention is applied to a database using indexed sequential files stored on a plurality of disks will be described.

【0086】図19に、本実施例のデータ管理装置の構
成を示す。
FIG. 19 shows the configuration of the data management apparatus of this embodiment.

【0087】本実施例ではネットワークを介して接続さ
れた複数台の計算機上でデータアクセスを行なう処理要
求が実行され、データはそれぞれの計算機に付属してい
るディスクに分散して格納されている。システムは一台
のマスタ計算機40とその他の計算機43から構成され
ている。マスタ計算機40に接続されているマスタデー
タ管理装置41及びその他の計算機43に接続されてい
るデータ管理装置44の構成例を図20に示す。
In this embodiment, a processing request for data access is executed on a plurality of computers connected via a network, and the data is distributed and stored in the disks attached to the respective computers. The system is composed of one master computer 40 and another computer 43. FIG. 20 shows a configuration example of the master data management device 41 connected to the master computer 40 and the data management device 44 connected to the other computers 43.

【0088】マスタ計算機以外の計算機43に接続され
たデータ管理装置44は図1、図15に示したアクセス
要求受信部1、相関情報生成部31、データ配置変更部
6、アクセス履歴記憶表33、データ格納情報記憶部
5、一連処理情報記憶表32、データアクセス部7とそ
れに加えて他の計算機からのアクセス要求を受信する手
段61から構成される。他よりのアクセス依頼受信部6
1は、アクセスすべきデータが自計算機に存在しない時
に他のデータ管理装置からアクセスを依頼されるが、そ
の依頼を受け取りデータアクセス部7へと渡す役目を果
たすものである。
The data management device 44 connected to the computer 43 other than the master computer has the access request receiving unit 1, the correlation information generating unit 31, the data arrangement changing unit 6, the access history storage table 33, and the access history storage table 33 shown in FIGS. It comprises a data storage information storage unit 5, a series of processing information storage tables 32, a data access unit 7, and a means 61 for receiving an access request from another computer. Access request receiver 6 from others
When the data to be accessed does not exist in the own computer, 1 is requested to be accessed by another data management device, and serves to receive the request and pass it to the data access unit 7.

【0089】マスタ計算機40に接続されたマスタデー
タ管理装置41には、相関情報表管理部34、データ配
置決定部4、有意情報選択部36、相関情報記憶表2が
上記のものに追加して存在する。
In the master data management device 41 connected to the master computer 40, a correlation information table management unit 34, a data arrangement determination unit 4, a significant information selection unit 36, and a correlation information storage table 2 are added to those described above. Exists.

【0090】各処理要求はデータベースをアクセスする
に際してはデータ管理装置の提供するライブラリ関数を
用いてアクセスする。ライブラリ関数にはデータを読み
出す際に用いるread()、書き込みを行なう際に用
いるwrite()、コミット処理をする際に用いるc
ommit()などがある。データベースに格納されて
いるデータにはシステムで一意のデータ番号が割り振ら
れており、この番号を指定する事でデータを識別する事
ができるようになっている。各処理要求はデータにアク
セスする際にはこの識別子を指定してアクセスする。
Each processing request uses the library function provided by the data management device to access the database. The library function has read () used when reading data, write () used when writing, and c used when performing commit processing.
ommit () and so on. A unique data number is assigned to the data stored in the database by the system, and the data can be identified by specifying this number. Each processing request specifies this identifier when accessing the data.

【0091】これらのライブラリ関数は処理要求によっ
て呼び出されるとまず呼び出しを行ったプロセスのプロ
セスidをオペレーティングシステムより取得する。プロ
セスidとはオペレーティングシステムが各プロセスに
対し一意に割り付けた識別番号である。そしてそのプロ
セスidとアクセス先のデータ識別子、どのライブラリ
が呼び出されたのかを示すフラグ、後述するように一つ
のプロセス上に複数の一連の処理が定義される場合には
それらを区別するためのパラメータ、そしてアクセスの
処理に必要なパラメータをアクセス要求受信部1へと送
信する。一連の処理を区別するパラメータとしてはその
プロセス上で実行される処理毎に一意に定まる数値を割
り振っておき、それを用いることが出来る。アクセス要
求受信部1は、プロセスidとデータ識別子、一連の処
理を区別するためのパラメータ及びライブラリを示すフ
ラグを相関情報生成部へと送信し、アクセス先のデータ
識別子とその処理に必要なパラメータをデータアクセス
部7へと送信する。データアクセス部は受信したデータ
の識別子をキーとして図21の(a)に示すようなデー
タ格納情報記憶部5中の索引を検索する。索引はデータ
識別子をキーとした木構造となっており、木構造の葉の
部分にそのデータがどの計算機に格納されているか、さ
らにそのデータが自計算機に有る場合にはどのファイル
のどの位置に格納されているか、そのデータに対してロ
ックが掛けられているかどうかを示すフラグが記憶され
ている。索引を検索した結果自計算機にそのデータが有
る事が分かったならばデータアクセス部7は検索結果を
元にそのデータをアクセスし、その結果をライブラリ関
数に送信する。データアクセスの際に必要ならばそのデ
ータに対する索引に情報ロックフラグをたてることによ
り他のプロセスのアクセスを禁止することが出来る。も
し他の計算機に格納されている時には他の計算機上のデ
ータ管理装置に対し、データのアクセス要求を送信す
る。そしてその結果を受信するとそれをライブラリ関数
に対し戻す事によりデータに対するアクセスが完了す
る。
When these library functions are called by a processing request, first, the process id of the calling process is acquired from the operating system. The process id is an identification number uniquely assigned to each process by the operating system. Then, the process id, the data identifier of the access destination, the flag indicating which library has been called, and the parameter for distinguishing them when a plurality of series of processes are defined on one process as described later. , And sends parameters required for access processing to the access request receiving unit 1. As a parameter for distinguishing a series of processes, a numerical value that is uniquely determined for each process executed on the process can be assigned and used. The access request receiving unit 1 transmits a process id, a data identifier, a parameter for distinguishing a series of processes, and a flag indicating a library to the correlation information generating unit, and sends the data identifier of the access destination and the parameter required for the process. The data is transmitted to the data access unit 7. The data access unit searches the index in the data storage information storage unit 5 as shown in FIG. 21A using the identifier of the received data as a key. The index has a tree structure that uses the data identifier as a key. In the leaf part of the tree structure, which computer stores that data, and when that data exists in its own computer, in which file and at which position. A flag indicating whether the data is stored or the data is locked is stored. If it is found as a result of searching the index that the own computer has the data, the data access unit 7 accesses the data based on the search result and sends the result to the library function. If necessary at the time of data access, it is possible to prohibit the access of other processes by setting an information lock flag in the index for that data. If it is stored in another computer, a data access request is sent to the data management device on the other computer. When the result is received, the access to the data is completed by returning it to the library function.

【0092】相関情報生成部31は、データアクセス部
7よりプロセスid、データ識別子、ライブラリを示す
フラグ及び一連の処理を区別するためのパラメータを受
信すると、プロセスidを元に一連処理情報記憶表32
を検索する。一連処理情報記憶表32は図22の(a)
に示すように各プロセス毎にどのような処理を一連の処
理と見倣すかを定義してある。図22の(a)ではプロ
セスidが10のプロセスは呼び出されたライブラリ関
数がbegin()からcommit()までが一連の
処理と定義されている。またプロセスidが20のプロ
セスには2つの処理が定義されており、パラメータの値
に依って区別されその各々は呼び出されたライブラリ関
数がbegin()からcommit()までが一連の
処理と定義されている。この例ではパラメータは正の値
を取る整数型の変数一つだけであるが、複数設定するこ
とも可能である。一連処理情報記憶表には図22の
(b)に示すようにデフォルトの処理を定義する部分も
有り、本実施例においてはプロセスの開始時に呼ばれる
ライブラリ関数init()から終了時に呼ばれるライ
ブラリ関数exit()までが一連の処理と定義されて
いるのでこの表にプロセスidが載っていないものはこの
デフォルトの定義に従う。一連の処理にはそれぞれ一意
に定まる番号が割り振る事が出来る。複数の一連の処理
が一つのプロセスに定義される場合が有るので、( プロ
セスid、プロセス内の処理の通し番号)という番号の
組をもって一連の処理に一意に番号を割り振る事ができ
る。デフォルトの処理の場合にはそのプロセスにおける
処理は一つであるので、一連処理番号としては( プロセ
スid、1) となる。
When the correlation information generating unit 31 receives the process id, the data identifier, the flag indicating the library and the parameter for distinguishing the series of processes from the data access unit 7, the series processing information storage table 32 is based on the process id.
To search. The series processing information storage table 32 is shown in FIG.
As shown in, each process defines what kind of process should be regarded as a series of processes. In (a) of FIG. 22, the library function called from the begin () to the commit () of the process with the process id of 10 is defined as a series of processes. In addition, two processes are defined for the process whose process id is 20, and they are distinguished according to the value of the parameter, and the library function called from each of them is defined as a series of processes from begin () to commit (). ing. In this example, the parameter is only one integer type variable that takes a positive value, but it is possible to set multiple parameters. The series process information storage table also has a part for defining default processes as shown in FIG. 22B, and in this embodiment, the library function init () called at the start of the process to the library function exit () called at the end of the process. ) Is defined as a series of processes, so those whose process id is not listed in this table follow this default definition. A unique number can be assigned to each series of processes. Since a plurality of series of processes may be defined in one process, it is possible to uniquely assign a number to a series of processes with a set of numbers (process id, serial number of processes in process). In the case of the default process, there is one process in that process, so the sequence process number is (process id, 1).

【0093】相関情報生成部31は、一連処理情報記憶
表32を検索し現在のアクセスがどの一連の処理の一部
であるかを判別し、その処理番号を得ることができる。
次に処理番号をキーとしてアクセス履歴記憶表33を検
索する。
The correlation information generator 31 can search the series of process information storage tables 32 to determine which series of processes the current access is part of, and obtain the process number.
Next, the access history storage table 33 is searched using the processing number as a key.

【0094】アクセス履歴記憶表33の構成例を図23
に示す。この構成例ではアクセス履歴記憶表33はプロ
セスidをキーとした木構造で構成されており、各々の
葉の部分にプロセス内の各処理に割り振られた通し番号
に対応する複数の連結リスト構造がついており、連結リ
ストにアクセスされたデータの識別子を格納している。
図22ではプロセスidが2、5、10、20のものに
関する履歴が記憶されていることが示されている。
FIG. 23 shows a configuration example of the access history storage table 33.
Shown in. In this configuration example, the access history storage table 33 has a tree structure with the process id as a key, and each leaf part has a plurality of linked list structures corresponding to the serial numbers assigned to the respective processes in the process. And stores the identifier of the accessed data in the linked list.
FIG. 22 shows that the history regarding the process ids 2, 5, 10, and 20 is stored.

【0095】アクセス履歴記憶表33を検索しその処理
のエントリが無かった場合、一連の処理を開始するライ
ブラリからの呼び出しかどうかをアクセス要求受信部か
ら受信したライブラリを示すフラグと一連情報記憶表3
2の当該エントリの開始ライブラリを示すフラグとを比
較し、本アクセスが一連の処理を開始するものであれば
新たにこの処理に対応するエントリを確保し連結リスト
にデータ識別子を格納する。一方、2つのフラグが異な
る場合には何もしない。アクセス履歴記憶表33を検索
しその処理のエントリが存在する時にはまず今回アクセ
スしたデータの識別子を連結リストに追加する。その後
アクセス要求受信部1より受信したライブラリを示すフ
ラグと一連処理情報記憶表33の終了ライブラリを示す
フラグとを比較し、異なる時には何もしない。また、一
致した場合には、今回のアクセスをもって一連の処理が
完了するので、相関情報を生成するためにその処理が過
去にアクセスしたデータの識別子を全て読み出すととも
にそのエントリを削除する。
When the access history storage table 33 is searched and there is no entry for the processing, a flag indicating the library received from the access request receiving unit as to whether the call is from the library for starting a series of processing and the series information storage table 3
2 is compared with a flag indicating the start library of the entry, and if this access starts a series of processes, an entry corresponding to this process is newly secured and the data identifier is stored in the linked list. On the other hand, if the two flags are different, nothing is done. When the access history storage table 33 is searched and there is an entry for the processing, the identifier of the data accessed this time is first added to the linked list. After that, the flag indicating the library received from the access request receiving unit 1 is compared with the flag indicating the end library of the series process information storage table 33, and when they are different, nothing is done. If they match, a series of processing is completed by this access, so that in order to generate the correlation information, all the identifiers of the data accessed by the processing in the past are read and the entry is deleted.

【0096】相関情報生成部31は、以下のようにして
相関情報を作成する。今完了した一連の処理においてア
クセスしたデータの識別子が14、17、39であった
とすると、相関情報生成部31は、次のような( データ
id、データid、アクセス回数) から成る情報を生成
する。
The correlation information generator 31 creates the correlation information as follows. Assuming that the identifiers of the data accessed in the series of processes just completed are 14, 17, and 39, the correlation information generating unit 31 generates the following information (data id, data id, access count). .

【0097】(14,17,1) (14,39,1) (17,39,1) そしてこれらの相関情報の組をマスタ計算機40上に有
る相関情報表管理部34へと送信する。
(14, 17, 1) (14, 39, 1) (17, 39, 1) Then, a set of these correlation information is transmitted to the correlation information table management unit 34 in the master computer 40.

【0098】マスタ計算機40上の相関情報表管理部3
4の構成例を図24に示す。本実施例では相関情報表管
理部34は、各計算機上に有る相関情報生成部31から
相関情報を受信する相関情報受信部62、受信した結果
が相関情報表2に有るかどうかを検索する相関情報表検
索部63、相関情報表2の各相関情報を更新する相関情
報表更新部64、相関情報がいくつ相関情報表2に登録
されているかを記憶している相関情報数記憶部65、相
関情報表2が一杯になった時に削除する相関情報を選択
する削除エントリ選択部66、相関情報表2の各エント
リをそのアクセス回数でソートする相関情報表ソート部
67、相関情報を取得する回数を予め登録しておく取得
回数登録部68、現在までに相関情報を取得した回数を
記憶しておく取得回数記憶部69、相関情報表に空きが
有る場合に空いているエントリを選択する空きエントリ
選択部70、相関情報表に新たなデータを挿入するため
の相関情報表挿入部71からなる。
Correlation information table management unit 3 on the master computer 40
FIG. 24 shows an example of the configuration of No. 4. In the present embodiment, the correlation information table management unit 34 includes a correlation information receiving unit 62 that receives the correlation information from the correlation information generating unit 31 on each computer, and a correlation that searches whether the received result is in the correlation information table 2. An information table search unit 63, a correlation information table updating unit 64 that updates each correlation information of the correlation information table 2, a correlation information number storage unit 65 that stores how many correlation information items are registered in the correlation information table 2, and a correlation. The deletion entry selection unit 66 that selects the correlation information to be deleted when the information table 2 is full, the correlation information table sorting unit 67 that sorts each entry of the correlation information table 2 by the access count, and the number of times the correlation information is acquired. An acquisition count registration unit 68 that is registered in advance, an acquisition count storage unit 69 that stores the number of times correlation information has been acquired so far, and an empty entry that selects an empty entry when the correlation information table is empty Entry selector 70 consists of correlation information table insertion portion 71 for inserting new data in the correlation information table.

【0099】次に、相関情報表管理部34の動作を図2
5を用いて説明する。相関情報生成部31より送られて
きた相関情報は相関情報受信部62で受け取られる(ス
テップS41)。相関情報は上述のように複数の情報か
らなっているので、その各々の要素に対しそれが既に相
関情報記憶表2に記憶されているかどうかを相関情報表
検索部63を用いて検索する(ステップS42,S4
3)。検索結果その情報が相関情報記憶表2中に格納さ
れていない場合、相関情報表挿入部71に新たに表に挿
入するよう指令し(ステップS44)、格納されている
場合には相関情報表更新部64に対しそのエントリの相
関情報を更新するように指令する(ステップS45)。
その後取得回数記憶部69中に格納されている相関情報
取得回数を1だけ増やす(ステップS46)。そして取
得回数登録部68の回数と相関情報取得回数記憶部69
の回数を比較し(ステップS47)、予め決められた回
数になったならば相関情報が十分に取得されたと見倣
し、現在の相関情報表2を読み出した上で(ステップS
49)、その内容を相関情報表ソート部67を用いてソ
ート後(ステップS50)、相関情報が十分に取得され
た旨とともに有意情報選択部36に対し通知する(ステ
ップS51)。そして相関情報表2の全エントリを削除
し、新たに相関情報を採取し始める。予め決めた回数に
満たない場合には、次の要素に対する処理を続ける。以
上の処理を相関情報生成部31より受け取った相関情報
に含まれる要素全てに対して行なう(ステップS4
8)。
Next, the operation of the correlation information table management section 34 will be described with reference to FIG.
This will be described using 5. The correlation information sent from the correlation information generating unit 31 is received by the correlation information receiving unit 62 (step S41). Since the correlation information is composed of a plurality of pieces of information as described above, the correlation information table search unit 63 is used to search for each element as to whether or not it is already stored in the correlation information storage table 2 (step S42, S4
3). As a result of the search, if the information is not stored in the correlation information storage table 2, the correlation information table insertion unit 71 is instructed to newly insert it in the table (step S44), and if it is stored, the correlation information table is updated. The section 64 is instructed to update the correlation information of the entry (step S45).
After that, the correlation information acquisition count stored in the acquisition count storage unit 69 is increased by 1 (step S46). The number of acquisition times registration unit 68 and the correlation information acquisition number storage unit 69
(Step S47), and if the predetermined number is reached, it is assumed that sufficient correlation information has been acquired, and the current correlation information table 2 is read out (step S47).
49), the contents are sorted using the correlation information table sorting unit 67 (step S50), and the significant information selecting unit 36 is notified together with the fact that the correlation information is sufficiently acquired (step S51). Then, all the entries in the correlation information table 2 are deleted, and the correlation information is newly collected. If the number of times is less than the predetermined number, the process for the next element is continued. The above processing is performed for all the elements included in the correlation information received from the correlation information generation unit 31 (step S4).
8).

【0100】相関情報表挿入部71は、まず相関情報数
記憶部65から現在相関情報表2に格納されているデー
タの数を読み出し、相関情報表2が既に一杯かどうかを
調べる。もし空きが有る時には空きエントリ選択部70
に空きエントリを選択させ、空きが無いときには削除エ
ントリ選択部66に対し相関情報表2から削除するエン
トリを選択させる。そして選択されたエントリに相関情
報を格納する。
The correlation information table insertion unit 71 first reads the number of data items currently stored in the correlation information table 2 from the correlation information number storage unit 65 and checks whether the correlation information table 2 is already full. If there is a vacancy, a vacant entry selection section 70
To select an empty entry, and when there is no empty entry, the deletion entry selection unit 66 is caused to select an entry to be deleted from the correlation information table 2. Then, the correlation information is stored in the selected entry.

【0101】相関情報表更新部64は、あるエントリの
相関情報を更新するよう指令を受けると該当する相関情
報を格納しているエントリのアクセス回数を1だけ増加
させる。
When receiving a command to update the correlation information of a certain entry, the correlation information table updating unit 64 increases the access count of the entry storing the relevant correlation information by one.

【0102】削除エントリ選択部66は、まず相関情報
表ソート部67を用いて相関情報表2をアクセス回数で
ソートする。その後ソート後最もアクセス回数の低いエ
ントリの内からランダムに一つのエントリを選択し、そ
れを削除すべきエントリとして選択する。
The deletion entry selection unit 66 first sorts the correlation information table 2 by the number of accesses using the correlation information table sorting unit 67. Then, after sorting, one entry is randomly selected from the entries with the lowest access count and is selected as the entry to be deleted.

【0103】図26に示すように相関情報記憶表2は相
関情報を格納する複数のエントリーから成り、各エント
リーにはアクセスされたデータのidの組とその組がと
もに使われた回数から成っている。
As shown in FIG. 26, the correlation information storage table 2 is composed of a plurality of entries for storing the correlation information, and each entry is composed of a set of ids of the accessed data and the number of times the set is used together. There is.

【0104】有意情報選択部36は、相関情報表管理部
34より相関情報を十分に取得した旨と相関情報表を受
信すると、その中から有意なものを選択する。相関情報
表2の各エントリは予め相関情報表管理部34において
各エントリ中のアクセス頻度でソートされているので、
アクセス回数最大のものに対し予め決められた割合以上
のアクセス回数のエントリを有意なものとして選択す
る。そしてその結果得られたもののみをデータ配置決定
部4へと送信する。
When the significant information selecting unit 36 receives from the correlation information table managing unit 34 that the correlation information is sufficiently acquired and the correlation information table is received, the significant information selecting unit 36 selects a significant one from the received information. Since each entry of the correlation information table 2 is sorted in advance by the access frequency in each entry in the correlation information table management unit 34,
An entry having an access count equal to or greater than a predetermined ratio with respect to the maximum access count is selected as significant. Then, only the one obtained as a result is transmitted to the data arrangement determination unit 4.

【0105】データ配置決定部4がデータ配置を決定す
る際の動作を図27を用いて説明する。有意情報選択部
から有意な相関情報を受信すると(ステップS61)、
図21の(a)および(b)に示したデータ格納情報記
憶部5内の索引とディスク容量表よりデータが何処の記
憶装置に格納されているか、各データのサイズはどのく
らいか、或は各々の記憶装置の容量はどれくらいか、と
いうデータ格納情報を読み出す(ステップS63)。そ
してデータの配置を評価するのであるが、それには次の
ような評価関数を用いる(ステップS64)。ここで、
変数Xij( 1≦i≦N、1≦j≦M、Xij=0 or
1) はi番目のデータがj番目のデータ格納領域に格納
されることを示す変数である。またDikはi番目とk
番目のデータが一緒に使用されたアクセス回数であり、
これは相関情報から得られる。相関情報が無い組合せに
関してはこの値は零である。
The operation when the data arrangement determining unit 4 determines the data arrangement will be described with reference to FIG. When significant correlation information is received from the significant information selection unit (step S61),
According to the index and the disk capacity table in the data storage information storage unit 5 shown in FIGS. 21A and 21B, the storage device where the data is stored, the size of each data, or each The data storage information indicating the capacity of the storage device is read out (step S63). Then, the data arrangement is evaluated by using the following evaluation function (step S64). here,
Variable Xij (1 ≦ i ≦ N, 1 ≦ j ≦ M, Xij = 0 or
1) is a variable indicating that the i-th data is stored in the j-th data storage area. Dik is the i-th and k
The th data is the number of accesses used together,
This is obtained from the correlation information. This value is zero for combinations with no correlation information.

【0106】[0106]

【数4】 また、制約条件式として、j番目のディスクの容量をd
j、i番目のデータの大きさをsiとして次のものを加
える。これらの情報はデータ格納情報から得られる。
[Equation 4] Also, as a constraint condition expression, the capacity of the j-th disk is d
Let j be the size of the i-th data and si be the following. These pieces of information are obtained from the data storage information.

【0107】[0107]

【数5】 そしてまず式(4)を用いて現在の配置に関するQの値
を計算し、現在の配置とQの値を記憶する。次に式
(5)を満たすようにデータの配置を変更する。記憶し
てあるQの値と比較して(ステップS65)、良い値が
得られた時はその値と配置を記憶するが、そうでない時
は次の配置を選択する(ステップS66,S67)。こ
こで新しい配置が選択可能ならば(ステップS68)、
配置を変更し(ステップS69)、再度Qの値の計算を
繰り返していく。このような処理を新たな配置が選択で
きなくなるまで繰り返すことによって最も良い評価値を
持つ配置が選択できる。
[Equation 5] Then, first, the value of Q relating to the current arrangement is calculated using equation (4), and the current arrangement and the value of Q are stored. Next, the data arrangement is changed so as to satisfy Expression (5). When a good value is obtained by comparing with the stored value of Q (step S65), the value and the arrangement are stored, but if not, the next arrangement is selected (steps S66 and S67). If a new layout can be selected here (step S68),
The arrangement is changed (step S69), and the calculation of the value of Q is repeated again. The arrangement having the best evaluation value can be selected by repeating such processing until a new arrangement cannot be selected.

【0108】ここで、式(5)を満たすようなデータ配
置を選択するには次のようにすれば良い。まず有意な相
関情報に現れるデータがN個有り、データ格納領域がM
個有るとする。するとこれらのデータの配置としてはN
のM乗通りの配置が考えられる。この配置から一つをま
ず選択する。すると、他のデータは動かさず相関情報に
現れているデータだけを移動したため式(5)が満たさ
れない配置が起こり得る。その場合に式(5)を満たさ
ない記憶装置内のデータで相関情報に現れないものから
幾つかを選択してその記憶装置が式(5)を満たすよう
にそれら相関の無いデータを任意の記憶装置へと移動す
る。このようにして全ての記憶装置に関して式(5)が
満たすことが出来ればその配置を式(5)を満たす配置
として選択し、そうでない時にはその配置を棄却する。
このようにしてNのM乗通りの配置全てを選択するまで
繰り返す。
Here, in order to select the data arrangement that satisfies the expression (5), the following may be done. First, there are N pieces of data that appear in significant correlation information, and the data storage area is M
Suppose that there is an individual. Then, the arrangement of these data is N
It is conceivable that the M-th power is arranged. First select one from this arrangement. Then, since the other data is not moved and only the data appearing in the correlation information is moved, the arrangement in which the expression (5) is not satisfied may occur. In that case, some of the data in the storage device that does not satisfy the expression (5) that do not appear in the correlation information are selected, and the data that does not satisfy the expression is stored in the storage device as desired. Move to the device. In this way, if the equation (5) can be satisfied for all the storage devices, the arrangement is selected as an arrangement that satisfies the equation (5), and if not, the arrangement is rejected.
In this way, the process is repeated until all the M-th power placements of N are selected.

【0109】データ配置決定部4はこのようにして配置
を選択すると次にデータ配置の変更をデータ配置変更部
6へと指示する。以下、この際の動作を説明する。
After selecting the layout in this way, the data layout determining unit 4 instructs the data layout changing unit 6 to change the data layout. The operation in this case will be described below.

【0110】本実施例においては複数の計算機上のデー
タを移動する必要があるためデータをどのように移動す
べきかをデータ配置決定部4がデータ配置変更部6へと
指示する。そのためにまずデータ配置決定部4は各計算
機内の複数のデータ格納領域内での移動に関する情報を
データ配置変更部6へと送信する。データ配置変更部6
はこの情報を受信すると当該データに対するロックを掛
けることにより一時的にアクセスを禁止し、それらのデ
ータの配置を変更する。その後データの配置の変更が終
了した旨をデータ配置決定部4へと送信する。データ配
置決定部4は全てのデータ配置変更部6からデータ配置
を変更した旨の通知を受信すると残っている計算機間で
のデータ配置変更を開始する。そのためにはまず全ての
データ配置変更部6に対し全てのデータに関するアクセ
スを禁止するように通知する。全てのデータ配置変更部
6よりデータに対するアクセスが禁止された通知を受け
取ると、まずデータ配置決定部4は変更すべきデータを
一つ選択し、そのデータがある計算機上のデータ配置変
更部6に対し移動先の計算機を示し、そこへデータを変
更するように指示する。データ配置変更部6はこの指示
を受けると指定された計算機上のデータ配置変更部6へ
とそのデータを送信する。変更先のデータ配置変更部6
から配置の変更が終了した旨をデータ配置決定部4が受
信するとデータ配置決定部4は次の変更すべきデータを
選択する。この様にして全てのデータの配置が変更され
ると、データ配置決定部4は全ての計算機上のデータ格
納情報記憶部5に対し新たな配置を送信し、送信が完了
すると全てのデータ配置変更部6に対しデータに対する
ロックを解除するように通知する。
In this embodiment, since it is necessary to move the data on a plurality of computers, the data placement determining unit 4 instructs the data placement changing unit 6 on how to move the data. For that purpose, the data arrangement determining unit 4 first transmits information about movement within a plurality of data storage areas in each computer to the data arrangement changing unit 6. Data arrangement changing unit 6
When this information is received, the data is locked to temporarily prohibit access and change the layout of the data. After that, the fact that the change of the data arrangement is completed is transmitted to the data arrangement determining unit 4. Upon receiving the notification that the data arrangement has been changed from all the data arrangement changing units 6, the data arrangement determining unit 4 starts changing the data arrangement between the remaining computers. For that purpose, first, all the data arrangement changing units 6 are notified to prohibit access to all the data. When receiving the notification that access to the data is prohibited from all the data arrangement changing units 6, the data arrangement determining unit 4 first selects one data to be changed, and the data arrangement changing unit 6 on the computer having the data is selected. On the other hand, indicate the destination computer and instruct it to change the data. Upon receiving this instruction, the data arrangement changing unit 6 transmits the data to the designated data arrangement changing unit 6 on the computer. Change destination data arrangement changing unit 6
When the data arrangement determination unit 4 receives the fact that the arrangement change has been completed, the data arrangement determination unit 4 selects the next data to be changed. When the arrangement of all the data is changed in this way, the data arrangement determining unit 4 transmits the new arrangement to the data storage information storage units 5 on all the computers, and when the transmission is completed, all the data arrangement changes are made. The unit 6 is notified to unlock the data.

【0111】次に、本発明を読み出し専用のデータを管
理するデータ管理装置に対して適応した実施例に関して
説明する。
Next, an embodiment in which the present invention is applied to a data management device for managing read-only data will be described.

【0112】読み出し専用のデータを格納するには読み
書きの出来る記憶装置を用いることも、書き込みは最初
にデータを格納する時の一度だけしか出来ない読み出し
専用の記憶装置を用いることも出来る。読み書きの出来
る記憶装置を用いる時は今まで説明した構成を用いて実
現できる。それに対し、例えばCD−ROMの様な読み
出し専用の記憶装置を使用する場合にはデータの再配置
の仕方を決定するまでは上述の方法と同様に実現できる
が、再配置する際にもとの読み出し専用の記憶装置に書
き込むことは出来ない。その場合、図28に示すように
始めにデータを格納してある読み出し専用の記憶装置8
2と新たにデータを格納するための読み書き可能な記憶
装置84と、データを現在どちらの格納装置から読み出
すべきかを識別する読み出し記憶装置識別部86を備
え、システムの特性に合わせて新たに配置し直す際には
データを読み書き可能な記憶装置84に格納するように
実現することが出来る。この場合にはデータアクセスを
行なう際やデータの再配置を行なう際にはデータアクセ
ス部7、データ配置変更部6はどちらの記憶装置からデ
ータを読み出すべきかを読み出し記憶装置識別部86に
問い合わせる。
A read / write storage device can be used to store read-only data, and a read-only storage device that can be written only once when initially storing data can be used. When a readable / writable storage device is used, it can be realized using the configuration described above. On the other hand, when a read-only storage device such as a CD-ROM is used, it can be realized in the same manner as the above method until the data rearrangement method is determined. You cannot write to read-only storage. In that case, as shown in FIG. 28, a read-only storage device 8 in which data is first stored.
2 and a readable / writable storage device 84 for newly storing data, and a read storage device identification unit 86 for identifying from which storage device the data should be currently read, and is newly arranged according to the characteristics of the system. When reworking, the data can be stored in the readable / writable storage device 84. In this case, when the data is accessed or the data is rearranged, the data access unit 7 and the data arrangement changing unit 6 inquire the read storage device identification unit 86 from which storage device the data should be read.

【0113】或は図29に示すように、CD−ROMの
様な読み出し専用の記憶装置88を新たに作成する手段
を付与し、システムの特性に合わせて新たに配置し直す
際にはデータを読み出し専用の記憶装置82に格納し直
し、それ以降の読み出しは新たに作成した読み出し専用
のデータ格納装置82から読み出すようにすることも可
能である。
Alternatively, as shown in FIG. 29, a means for newly creating a read-only storage device 88 such as a CD-ROM is provided, and when the data is newly rearranged according to the characteristics of the system, the data is stored. It is also possible to store the read-only data in the read-only storage device 82 again and read it from the newly created read-only data storage device 82.

【0114】また読み出し専用のデータ管理装置である
ので、新たな記憶装置へとデータの配置を変更する際に
データの更新は起こらないため、新たな領域へコピーを
作成しながらデータの配置を変更し、データ配置を変更
している間は元のデータをアクセスし、全データのコピ
ーが出来た後は新たな領域へアクセスするようにするこ
とも可能である。
Since this is a read-only data management device, the data will not be updated when the data allocation is changed to a new storage device. Therefore, the data allocation is changed while making a copy to a new area. However, it is also possible to access the original data while changing the data arrangement and to access the new area after copying all the data.

【0115】また読み出し専用のデータを格納してある
読み出し専用の記憶装置の内容を複数の記憶装置へと分
割して格納することも可能であるし、或はまた複数台の
読み出し専用の記憶装置のデータを一台の記憶装置に配
置し直すことも可能である。
It is also possible to divide the contents of the read-only storage device storing the read-only data into a plurality of storage devices and store the contents, or it is also possible to store a plurality of read-only storage devices. It is also possible to rearrange the data of 1) in one storage device.

【0116】上述のように読み出し専用のデータ管理装
置に本発明を適用することにより、システムの格納して
いるデータに対するアクセスパターンの違いに応じてデ
ータ配置を最適にすることができ、読み出しを高速に実
行させることが可能になる。
By applying the present invention to the read-only data management device as described above, the data arrangement can be optimized in accordance with the difference in the access pattern for the data stored in the system, and the read speed can be increased. Can be executed.

【0117】また、本発明は上述した実施例に限定され
るものではなく、その要旨を逸脱しない範囲で、種々変
形して実施することができる。
The present invention is not limited to the above-mentioned embodiments, but can be carried out in various modified forms without departing from the scope of the invention.

【0118】[0118]

【発明の効果】以上説明したように、本発明のデータ管
理方法によれば、複数のデータ格納領域に格納されてい
るデータが一連の処理において共に参照・更新される頻
度が多い時には、その相関を自動的に判別することがで
き、その様なデータを同じデータ格納領域に格納するよ
うにデータの配置を自動的に変更することが出来る。
As described above, according to the data management method of the present invention, when the data stored in a plurality of data storage areas are frequently referenced / updated together in a series of processes, the correlation between them is high. Can be automatically determined, and the data arrangement can be automatically changed so that such data is stored in the same data storage area.

【0119】また、データの配置に必要な情報を自動的
に取得するためシステム管理者がシステム上の処理を解
析してデータの配置を決定する必要が無く、各プロセス
の実行時間が短くなりシステムの持つ性能を容易に引き
出すことが出来るようになる。
Further, since the system administrator does not need to analyze the processing on the system to determine the data allocation because the information necessary for the data allocation is automatically acquired, the execution time of each process is shortened. It will be possible to easily bring out the performance of the.

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

【図1】本発明に係わるデータ管理装置の構成の一例を
示す図
FIG. 1 is a diagram showing an example of a configuration of a data management device according to the present invention.

【図2】本発明に係わるデータ管理装置の他の構成例を
示す図
FIG. 2 is a diagram showing another configuration example of the data management device according to the present invention.

【図3】本発明に係わるデータ管理装置のさらに他の構
成例を示す図
FIG. 3 is a diagram showing still another configuration example of the data management device according to the present invention.

【図4】本発明に係わるデータ管理装置のさらに他の構
成例を示す図
FIG. 4 is a diagram showing still another configuration example of the data management device according to the present invention.

【図5】本発明に係わるデータ管理装置のさらに他の構
成例を示す図
FIG. 5 is a diagram showing still another configuration example of the data management device according to the present invention.

【図6】データ格納領域の記憶装置への割り当て方の一
例を説明するための図
FIG. 6 is a diagram for explaining an example of how to allocate a data storage area to a storage device.

【図7】データ格納領域の記憶装置への割り当て方の他
の例を説明するための図
FIG. 7 is a diagram for explaining another example of how to allocate a data storage area to a storage device.

【図8】データ格納領域の記憶装置への割り当て方のさ
らに他の例を説明するための図
FIG. 8 is a diagram for explaining still another example of how to allocate a data storage area to a storage device.

【図9】本発明に係わるデータ管理装置のさらに他の構
成例を示す図
FIG. 9 is a diagram showing still another configuration example of the data management device according to the present invention.

【図10】データ管理装置が複数台の記憶装置を管理す
る場合の構成例を示す図
FIG. 10 is a diagram showing a configuration example in which a data management device manages a plurality of storage devices.

【図11】データ管理装置が複数台の記憶装置を管理す
る場合の他の構成例を示す図
FIG. 11 is a diagram showing another configuration example when the data management device manages a plurality of storage devices.

【図12】データ管理装置が複数台の記憶装置を管理す
る場合のさらに他の構成例を示す図
FIG. 12 is a diagram showing still another configuration example when the data management device manages a plurality of storage devices.

【図13】各計算機がデータ管理装置を持つ場合の構成
例を示す図
FIG. 13 is a diagram showing a configuration example in which each computer has a data management device.

【図14】複数台の計算機でデータ管理装置を共有する
場合の構成例を示す図
FIG. 14 is a diagram showing a configuration example when a data management device is shared by a plurality of computers.

【図15】図1の相関情報管理部の構成の一例を示す図15 is a diagram showing an example of a configuration of a correlation information management unit in FIG.

【図16】図15の相関情報生成部の動作の一例を示す
フローチャート
16 is a flowchart showing an example of the operation of the correlation information generation unit in FIG.

【図17】相関情報表管理部の動作の一例を示すフロー
チャート
FIG. 17 is a flowchart showing an example of the operation of the correlation information table management unit.

【図18】図1に示すデータ配置決定部の動作の一例を
示すフローチャート
FIG. 18 is a flowchart showing an example of the operation of the data arrangement determination unit shown in FIG.

【図19】本発明をデータベースへ適応した際のシステ
ムの構成例を示す図
FIG. 19 is a diagram showing a configuration example of a system when the present invention is applied to a database.

【図20】マスタデータ管理装置及びその他の計算機の
データ管理装置の構成例を示す図
FIG. 20 is a diagram showing a configuration example of a master data management device and a data management device of another computer.

【図21】データ格納情報記憶部の索引およびデータ格
納情報記憶部のディスク容量表の構成例を示す図
FIG. 21 is a diagram showing a configuration example of an index of the data storage information storage unit and a disk capacity table of the data storage information storage unit.

【図22】図15の一連処理情報記憶表の構成例を示す
22 is a diagram showing a configuration example of a series of process information storage table of FIG.

【図23】図15のアクセス履歴記憶表の構成例を示す
23 is a diagram showing a configuration example of the access history storage table of FIG.

【図24】図15の相関情報表管理部の構成例を示す図24 is a diagram showing a configuration example of a correlation information table management unit in FIG.

【図25】図15の相関情報表管理部の動作例を示す図FIG. 25 is a diagram showing an operation example of a correlation information table management unit in FIG.

【図26】図1の相関情報記憶表の構成例を示す図26 is a diagram showing a configuration example of a correlation information storage table in FIG.

【図27】データ配置決定部がデータ配置を決定する動
作の一例をを示すフローチャート
FIG. 27 is a flowchart showing an example of an operation in which a data arrangement determination unit determines data arrangement.

【図28】読み出し専用のデータ管理装置の構成例を示
す図
FIG. 28 is a diagram showing a configuration example of a read-only data management device.

【図29】読み出し専用のデータ管理装置の他の構成例
を示す図
FIG. 29 is a diagram showing another configuration example of a read-only data management device.

【符号の説明】[Explanation of symbols]

1…アクセス要求受信部、2…相関情報記憶表、3…相
関情報管理部、4…データ配置決定部、5…データ格納
情報記憶部、6…データ配置変更部、7…データアクセ
ス部、記憶装置8、計算機群9
DESCRIPTION OF SYMBOLS 1 ... Access request receiving unit, 2 ... Correlation information storage table, 3 ... Correlation information management unit, 4 ... Data allocation determination unit, 5 ... Data storage information storage unit, 6 ... Data allocation changing unit, 7 ... Data access unit, storage Device 8, computer group 9

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】複数の異なるデータ格納領域に格納されて
いるデータに対するアクセス要求を受け取るアクセス要
求受信ステップと、 特定の複数のデータが一連の処理内で共にアクセスされ
たことを示すデータ相互の相関情報を所定回数の前記ア
クセス要求に基づき作成する相関情報作成ステップと、 データが格納されているデータ格納領域を示すデータ格
納情報および前記相関情報からデータ格納領域内の新し
いデータ配置を決定するデータ配置決定ステップとを有
することを特徴とするデータ管理方法。
1. An access request receiving step of receiving an access request for data stored in a plurality of different data storage areas, and mutual correlation of data indicating that a plurality of specific data have been accessed together in a series of processes. Correlation information creating step of creating information based on a predetermined number of access requests, data storage information indicating a data storage area in which data is stored, and data arrangement for determining new data arrangement in the data storage area from the correlation information A data management method comprising: a determining step.
JP5349306A 1993-09-06 1993-12-28 Data management method Pending JPH07200389A (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP5349306A JPH07200389A (en) 1993-12-28 1993-12-28 Data management method
US08/859,724 US5864679A (en) 1993-09-06 1997-05-21 Transaction routing in a multiple processor system using an extracted transaction feature parameter and transaction historical data
US09/030,397 US6058267A (en) 1993-09-06 1998-02-25 Multiple processor transaction processing system using transaction routing and data management

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5349306A JPH07200389A (en) 1993-12-28 1993-12-28 Data management method

Publications (1)

Publication Number Publication Date
JPH07200389A true JPH07200389A (en) 1995-08-04

Family

ID=18402882

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5349306A Pending JPH07200389A (en) 1993-09-06 1993-12-28 Data management method

Country Status (1)

Country Link
JP (1) JPH07200389A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100625423B1 (en) * 1999-12-13 2006-09-18 주식회사 케이티 How to change the update cycle for each directory
WO2024190078A1 (en) * 2023-03-15 2024-09-19 ソニーグループ株式会社 Memory controller, storage device, and computer system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100625423B1 (en) * 1999-12-13 2006-09-18 주식회사 케이티 How to change the update cycle for each directory
WO2024190078A1 (en) * 2023-03-15 2024-09-19 ソニーグループ株式会社 Memory controller, storage device, and computer system

Similar Documents

Publication Publication Date Title
US6778977B1 (en) Method and system for creating a database table index using multiple processors
US7577694B2 (en) Database management system with rebalance architectures
US6772163B1 (en) Reduced memory row hash match scan join for a partitioned database system
Cornell et al. An effective approach to vertical partitioning for physical design of relational databases
US5555388A (en) Multi-user system and methods providing improved file management by reading
US6438562B1 (en) Parallel index maintenance
Cardenas Evaluation and selection of file organization—a model and system
US6101495A (en) Method of executing partition operations in a parallel database system
US7599910B1 (en) Method and system of database divisional management for parallel database system
US5162992A (en) Vector relational characteristical object
Ceri et al. Optimal file allocation in a computer network: a solution method based on the knapsack problem
WO2003071447A2 (en) Adaptive acceleration of retrieval queries
Teorey et al. Application of an analytical model to evaluate storage structures
Achyutuni et al. Two techniques for on-line index modification in shared nothing parallel databases
JPH06314299A (en) Data base control method
JP4014713B2 (en) Search support system for multi-attribute data group
JPH06139119A (en) System and method for managing data base
Yao et al. Selection of file organization using an analytic model
JPH07200389A (en) Data management method
EP1569132A1 (en) Computer system and method of performing a database access
March et al. A mathematical modeling approach to the automatic selection of database designs
Banerjee et al. A methodology for supporting existing CODASYL databases with new database machines
Davenport Design of distributed data base systems
March A mathematical programming approach to the selection of access paths for large multiuser data bases
JP3064307B2 (en) Expert system construction method