(57)【特許請求の範囲】
【請求項１】
複数のファイルからレコードデータを抽出し該抽出されたレコードデータを補助記憶媒体へ格納する際のデータ量算出方法において、
一のファイルのキーのレコードと、他のファイルのキーのレコードとの関連性を関連キーテーブルに予め定義登録しておき、
（ａ）前記複数のファイルの各々に対して抽出キーと該抽出キーのレコード件数をインデックスファイルに登録するステップと、
（ｂ）前記ファイルから抽出し前記補助記憶媒体に格納するレコードデータについて前記補助記憶媒体に格納する順に、キー情報及びレコード情報を、前記ファイルに対して設けられるテーブルに登録するステップと、
（ｃ）前記テーブルに登録されたキーについて、前記関連キーテーブルを参照して前記キーと関連性のある他のファイルに格納されたレコードのキー（「関連キー」という）が存在する場合、前記関連キーが前記他のファイルに対して設けられる他のテーブルに登録されているか否かを検索し、前記関連キーが前記他のテーブルに登録されていない場合、前記関連キーのレコードのデータ量を、蓄積データの合計容量に加算し、一方、前記関連キーがすでに前記他のテーブルに登録されている場合には、重複するものとして、前記関連キーのレコードのデータ量は合計容量に加算しないように制御するステップと、
を含み、一のファイルから抽出したレコードに関連する他のファイルのレコードも同一補助記憶媒体に抽出し、抽出されるレコードは同一の補助記憶媒体で重複が無いようにする、ことを特徴とするデータ量算出方法。
【請求項２】
第１の情報処理装置の第１の記憶装置に格納されている複数のファイルからレコードデータを抽出し該抽出されたレコードデータを、前記第１の情報処理装置の第２の記憶装置、又は、前記第１の情報処理装置と接続する第２の情報処理装置の第２の記憶装置へ格納する際の前記第１の情報処理装置におけるデータ量算出方法において、
一のファイルのキーのレコードと、他のファイルのキーのレコードとの関連性を関連キーテーブルに予め定義登録しておき、
（ａ）前記第１の記憶装置の前記複数のファイルの各々に対して抽出キーと該抽出キーのレコード件数をインデックスファイルに登録するステップと、
（ｂ）前記ファイルから抽出し、前記第２の記憶装置に格納するレコードデータについてキー情報及びレコード情報を、前記ファイルに対して設けられるテーブルに登録するステップと、
（ｃ）前記テーブルに登録されたキーについて、前記関連キーテーブルを参照して、前記キーと関連性のある他のファイルに格納されたレコードのキー（「関連キー」という）が存在する場合、前記関連キーが前記他のファイルに対して設けられる他のテーブルに登録されているか否かを検索し、前記関連キーが前記他のテーブルに登録されていない場合、前記関連キーのレコードのデータ量を、蓄積データの合計容量に加算し、一方、前記関連キーがすでに前記他のテーブルに登録されている場合には、重複するものとして、前記関連キーのレコードのデータ量は合計容量に加算しないように制御するステップと、
を含み、一のファイルから抽出したレコードに関連する他のファイルのレコードも同一補助記憶媒体に抽出し、抽出されるレコードは同一の補助記憶媒体で重複が無いようにする、ことを特徴とするデータ量算出方法。
【請求項３】
一のファイルのキーのレコードと、他のファイルのキーのレコードとの関連性を関連キーテーブルに予め定義登録しておき、
（ａ）複数のファイルのそれぞれについて抽出キーごとのレコード件数をあらかじめ求め、それぞれインデックスファイルを作成するステップと、
（ｂ）一のファイルに対応する一のインデックスファイルから目的とする補助記憶媒体へダウンロードするレコードのキーを選択し、該キーを前記補助記憶媒体へ抽出する順に並べた一のテーブルを作成するステップと、
（ｃ）補助記憶媒体番号を初期化するステップと、
（ｄ）前記補助記憶番号を更新し、補助記憶媒体番号が予め定められた最大値以下の場合、以下の処理を行うように制御するステップと、
（ｅ）合計容量を初期化するとともに、前記キーに関連する他のインデックスのキーを保持するための他のテーブルを初期化するステップと、
（ｆ）前記一のテーブルに登録されているレコードをダウンロードするのに必要なデータ容量を合計容量に加算するステップと、
（ｇ）前記キーについて、前記関連キーテーブルを参照して、前記キーに関連する他のキー（「関連キー」という）が存在する場合、前記関連キーにて前記他のテーブルを検索し、前記関連キーが前記他のテーブルに存在する場合には、前記他のファイルの前記関連キーに関するデータ容量はすでに合計容量に加算されているものとして合計容量には何も加算せず、一方、前記関連キーが前記他のテーブルに存在しない場合には、前記他のインデックスファイルから前記関連キーのレコードを検索し、該レコードのデータ容量を加算し、さらに前記関連キーを前記他のテーブルに追加登録するステップと、
（ｈ）前記合計容量をチェックし、該合計容量が前記補助記憶媒体の記憶容量以下の場合、前記一のテーブルに登録されている次レコードに対して、ステップ（ｆ）の処理へ移行するステップと、を有し、一のファイルから抽出したレコードに関連する他のファイルのレコードも同一補助記憶媒体に抽出し、抽出されるレコードは同一の補助記憶媒体で重複が無いようにし、さらに、
（ｉ）前記合計容量が前記補助記憶媒体の容量よりも大のとき、前記一のテーブルの現在のレコードに対して、ステップ（ｄ）の処理へ移行し、前記補助記憶媒体が複数となるときは、前記補助記憶媒体に、当該補助記憶媒体に抽出されたレコードの関連レコードを格納するステップを含むことを特徴とするデータ容量算出方法。
【請求項４】
複数のファイルと、抽出キーごとのレコード件数を有するインデックスファイルとを備えたファイル装置と、
抽出候補のレコードを保持する記憶手段と、
前記インデックスファイルから抽出キーを取り出し、該抽出キーのレコードを一のファイルから取り出すとともに、前記一のファイルから前記抽出キーを持ったデータを補助記憶装置に抽出した際に、前記補助記憶装置に同時に抽出する他のファイルのレコードのデータ容量を計算し、さらに各レコードを格納する補助記憶装置の媒体を決定して、前記記憶手段に記録する容量算出手段と、
前記記憶手段を参照して、前記ファイル装置の各ファイルからレコードを抽出し、決定された前記補助記憶装置の媒体へ書込むレコード抽出手段と、
を備え、一のファイルから抽出したレコードに関連する他のファイルのレコードも同一補助記憶媒体に抽出し、抽出されるレコードは同一の補助記憶媒体で重複が無いようにし、さらに、
あるファイルのキーと他のファイルのキーとの関連性を格納した第２の記憶手段を備え、
前記補助記憶装置の媒体の記憶容量を超えない間は、前記記憶手段に前記各ファイルから抽出するレコードのキーを追加し、キーごとに前記記憶手段にテーブルを作成し、
前記容量算出手段は、一つのファイルから抽出して前記補助記憶媒体へ格納するレコードのデータ容量を計算する際に、前記第２の記憶手段を参照して、前記レコードのキーに関連する他のファイルの関連キーが存在する場合、前記関連キーで前記他のファイルに対応して設けられる他のテーブルを検索し、
前記関連キーが前記他のテーブルに登録済みの場合、前記他のファイルに関するデータ容量は加算されているものとして合計容量には何も加算せず、
前記他のキーが前記他のテーブルに存在しない場合、前記他のインデックスファイルから前記他のキーのレコードを検索し、該レコードのデータ容量を加算して前記関連キーを前記他のテーブルに追加する、ことを特徴とする情報処理装置。
【請求項５】
情報処理装置が、記憶装置に格納されている複数のファイルからレコードデータを抽出し該抽出されたレコードデータを、前記情報処理装置の他の記憶装置、又は、前記情報処理装置と接続する他の情報処理装置の記憶装置（「他の記憶装置」という）へ格納するにあたり、
前記複数のファイルの各々に対して抽出キーと該抽出キーのレコード件数をインデックスファイルに登録する手段と、
前記ファイルから抽出し、前記他の記憶装置に格納するレコードデータについてキー情報及びレコード情報を、前記ファイルに対して設けられるテーブルに登録する手段と、
一のファイルのキーのレコードと、他のファイルのキーのレコードとの関連性を予め定義登録しておく関連キーテーブルを記憶する手段と、
前記テーブルに登録されたキーについて、前記関連キーテーブルを参照して、前記キーと関連性のある他のファイルに格納されたレコードのキー（「関連キー」という）が存在する場合、前記関連キーが前記他のファイルに対して設けられる他のテーブルに登録されているか否かを検索し、前記関連キーが前記他のテーブルに登録されていない場合、前記関連キーのレコードのデータ量を、蓄積データの合計容量に加算し、一方、前記関連キーがすでに前記他のテーブルに登録されている場合には、重複するものとして、前記関連キーのレコードのデータ量は合計容量に加算しないように制御する手段と、
を備え、一のファイルから抽出したレコードに関連する他のファイルのレコードも同一補助記憶媒体に抽出し、抽出されるレコードは同一の補助記憶媒体で重複が無いようにしたことを特徴とする情報処理装置。
【請求項６】
一のファイルのキーのレコードと、他のファイルのキーのレコードとの関連性を関連キーテーブルに予め定義登録しておき、
（ａ）複数のファイルのそれぞれについて抽出対象のキーごとのレコード件数をあらかじめ求め、それぞれのインデックスファイルを作成する処理、
（ｂ）一のファイルに対応する一のインデックスファイルから目的とする補助記憶媒体へダウンロードするレコードのキーを選択し、該キーを前記補助記憶媒体へ抽出する順に並べた一のテーブルを作成する処理、
（ｃ）補助記憶媒体番号を初期化する処理、
（ｄ）前記補助記憶番号を更新し、補助記憶媒体番号が予め定められた最大値以下の場合、以下の処理を行うように制御する処理、
（ｅ）合計容量を初期化するとともに、前記キーに関連する他のインデックスファイルのキーを保持するための他のテーブルを初期化する処理、
（ｆ）前記一のテーブルに登録されているレコードをダウンロードするのに必要なデータ容量を合計容量に加算する処理、
（ｇ）前記キーについて、前記関連キーテーブルを参照し、前記キーに関連する他のキー（「関連キー」という）が存在する場合、前記関連キーにて前記他のテーブルを検索し、前記関連キーが前記他のテーブルに存在する場合には、前記他のファイルの前記関連キーに関するデータ容量はすでに合計容量に加算されているものとして合計容量には何も加算せず、一方、前記関連キーが前記他のテーブルに存在しない場合には、前記他のインデックスファイルから前記関連キーのレコードを検索し、該レコードのデータ容量を加算し、さらに前記関連キーを前記他のテーブルに追加登録するステップと、
（ｈ）前記合計容量をチェックし、前記合計容量が前記補助記憶媒体の記憶容量以下の場合、前記一のテーブルに登録されている次レコードに対して、ステップ（ｆ）へ移行する処理、及び、
（ｉ）前記合計容量が前記補助記憶媒体の容量よりも大のとき、前記一のテーブルの現在のレコードに対して、ステップ（ｄ）へ移行し、前記補助記憶媒体が複数となるときは、前記補助記憶媒体に、当該補助記憶媒体に抽出されたレコードの関連レコードを格納する処理、
の前記（ａ）乃至（ｉ）の各処理をコンピュータ上で実行するためのプログラムを記録した記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、情報処理装置に関し、特に、情報処理装置において補助記憶媒体へデータを格納する際のデータ容量算出方法及び装置に関する。
【０００２】
【従来の技術】
上位装置内に格納されている関連性のある複数のファイルから必要なデータを複数の補助記憶装置の記憶媒体に格納する場合、同一の記憶媒体内で情報の整合性を保ち、かつデータ量が記憶媒体の容量を超えないように、データ又はファイルを複数に分割することが必要とされる。
【０００３】
例えば、上位装置である情報処理装置のハードディスク装置等記憶装置に格納された複数のファイルから、例えば携帯情報端末装置等の目的装置にロードすべきレコードデータ（データ、テーブル、プログラムコード等）を抽出して、例えばＦＤ（フロッピーディスク）、半導体メモリ等の補助記憶媒体に書き込み、該補助記憶媒体のデータを携帯情報端末装置等目的装置にロードする場合において、関連性あるレコードデータがすべて含まれている等、同一の記憶媒体内で情報の整合性を保つことが必要とされ、データ量が記憶媒体の容量を超えないように、ファイルを分割することが必要とされる。
【０００４】
同様にネットワーク接続されたサーバ装置からクライアント端末側にクライアント側で所要のファイルデータを転送する場合にも、クライアント端末側の記憶装置でオーバフローの発生を回避するには、クライアント端末側の記憶装置の記憶容量に照らし合わせて、ダウンロードすべきデータの容量を計算することが必要とされ、またクライアント側で情報の整合性を保ち、かつデータ量が記憶媒体の容量を超えないように、ファイルを分割することが必要とされる。
【０００５】
ファイル容量を算出する従来の方法として、従来、ファイルから抽出するレコード１件ごとに関連する別ファイルの容量を計算して順次加算していき、補助記憶装置の記憶媒体の容量を超えるまでのデータを、上位装置の各ファイルから補助記憶装置の記憶媒体に格納するような方法が一般に用いられている。
【０００６】
なおファイル容量算定方式に関する刊行物として、例えば特開平２−８３６３７号公報が参照される。同公報には、データファイル及びプログラム格納ファイルの編成方法、レコード長、ブロック長、キー情報を含むデータを設定し、データファイルが必要とする領域を該データに基づいて決定して該領域をファイル装置の確保する構成が提案されている。
【０００７】
【発明が解決しようとする課題】
しかしながら、上記従来の方法においては、事前に計算したデータ容量が補助記憶装置の記憶媒体へ（「補助記憶媒体」という）実際に格納するデータ容量よりも大となってしまうという事態が生じ、この場合、本来、補助記憶装置の記憶媒体の空き容量があるにもかかわらず、補助記憶装置の記憶媒体へのデータ格納を停止してしまい、補助記憶装置の記憶容量を有効に活用できない、という問題点を有している。
【０００８】
その理由は、従来の方法においては、抽出するレコード１件ごとに関連する各ファイルの容量を計算し、該容量を順次に加算していくため、ファイルごとに抽出キーが異なる場合には、既に計算済のデータ容量を重複して計算し、結果として、データ容量を２重に、あるいはさらに多重に計算してしまう、ためである。
【０００９】
したがって本発明は、上記問題点に鑑みてなされたものであって、その目的は、上位装置に存在する関連性を持ったファイル群から必要なデータのみ補助記憶媒体へ抽出することで、補助記憶媒体の記憶容量を有効活用する方法及び装置を提供することにある。
【００１０】
【課題を解決するための手段】
前記目的を達成する本発明は、複数のファイルのレコードデータを抽出し該抽出されたレコードデータを補助記憶媒体へ格納する際のデータ量算出方法において、（ａ）前記複数のファイルの各々に対して抽出キーと該抽出キーのレコード件数をインデックスファイルに登録するステップと、
（ｂ）前記ファイルから抽出し前記補助記憶媒体に格納するレコードデータについて前記補助記憶媒体に格納する順に、キー情報及びレコード情報を、前記ファイルに対して設けられるテーブルに登録するステップと、
（ｃ）前記テーブルに登録されたキーについて、前記キーと関連性のある他のファイルに格納されたレコードのキー（「関連キー」という）が存在する場合、前記関連キーが前記他のファイルに対して設けられる他のテーブルに登録されているか否かを検索し、前記関連キーが前記他のテーブルに登録されていない場合、前記関連キーのレコードのデータ量を、合計容量に加算し、一方、前記関連キーがすでに前記他のテーブルに登録されている場合には、重複するものとして、前記関連キーのレコードのデータ量は合計容量に加算しないように制御するステップと、を含むことを特徴としたものである。
【００１１】
本発明は、複数のファイルと、補助記憶媒体を備えた補助記憶装置とを少なくとも備えた情報処理装置において、前記複数のファイルから抽出したレコードデータを前記補助記憶媒体へ格納する際に、前記補助記憶媒体に格納するデータ量を合計容量に加算したレコードのキー情報を記憶手段に登録する手段と、前記ファイルから新たに抽出するレコードについて前記キー情報が前記テーブルに存在するか検索する手段と、前記キー情報が前記テーブルに存在しない場合、前記レコードのデータ量を合計容量に加算し、一方、前記キー情報がすでに前記テーブルに登録されている場合には重複するものとして、該レコードのデータ量は合計容量に加算せず、データ容量を算出する手段と、を備える。
【００１２】
【発明の実施の形態】
本発明の実施の形態について説明する。本発明は、その好ましい実施の形態において、抽出キーごとのレコード件数を有するインデックスファイルと、抽出候補レコードを保持するワークテーブル（作業テーブル）とを備え、補助記憶媒体の容量を超えない間は、ワークテーブルに各ファイルから抽出するレコードのキーを追加していく。レコードを抽出する際も、キーごとにワークテーブルを作成することによって、抽出キーが複数ある場合の容量計算において、同一データの容量を重複して計算することを確実に回避したものである。
【００１３】
本発明に係る装置は、好ましい実施の形態において、複数のファイルと、抽出キーごとのレコード件数を有するインデックスファイルとを備えたファイル装置と、抽出候補のレコードを保持する記憶手段と、前記インデックスファイルから抽出キーを取り出し、該抽出キーのレコードを一のファイルから取り出すとともに、同時に抽出する他のファイルのレコードのデータ容量を計算し、さらに各レコードの格納する補助記憶装置の媒体を決定して、記憶手段に記録する容量算出手段と、前記記憶手段を参照して、前記ファイル装置の各ファイルからレコードを抽出し、決定された前記補助記憶装置の媒体へ書込むレコード抽出手段と、を備える。
【００１４】
本発明において、前記補助記憶装置の媒体の記憶容量を超えない間は、前記記憶手段に前記各ファイルから抽出するレコードのキーを追加し、キーごとに前記記憶手段にテーブルを作成し、前記容量算出手段は、前記他のファイルのレコードのデータ容量を計算する際に、前記キーに関連する他のキーで他のテーブルを検索し、前記他のキーが前記他のテーブルに存在する場合、前記他のファイルに関するデータ容量は加算されているものとして合計容量には何も加算せず、前記他のキーが前記他のテーブルに存在しない場合、前記他のインデックスから前記他のキーのレコードを検索し、該レコードのデータ容量を加算して前記他のキーを前記他のテーブルに追加する。
【００１５】
本発明に係る方法は、その好ましい実施の形態において、
（ａ）複数のファイルのそれぞれについて抽出対象のキーごとのレコード件数をあらかじめ求め、それぞれのインデックスファイルを作成する処理、
（ｂ）一のファイルに対応する一のインデックスファイルから目的とする補助記憶媒体へダウンロードするレコードのキーを選択し、該キーを前記補助記憶媒体へ抽出する順に並べた一のテーブルを作成する処理、
（ｃ）補助記憶媒体番号を初期化する処理、
（ｄ）前記補助記憶番号を更新し、補助記憶媒体番号が予め定められた最大値以下の場合、以下の処理を行うように制御する処理、
（ｅ）合計容量を初期化するとともに、前記キーに関連する他のインデックスファイルのキーを保持するための他のテーブルを初期化する処理、
（ｆ）前記一のテーブルに登録されているレコードをダウンロードするのに必要なデータ容量を合計容量に加算する処理、
（ｇ）前記キーに関連する他のキー（「関連キー」という）が存在する場合、前記関連キーで前記他のテーブルを検索し、前記関連キーが前記他のテーブルに存在する場合、前記他のファイルの前記関連キーに関するデータ容量はすでに合計容量に加算されているものとして合計容量には何も加算せず、一方、前記関連キーが前記他のテーブルに存在しない場合、前記他のインデックスファイルから前記関連キーのレコードを検索し、前記関連キーのレコードのデータ容量を加算し、前記関連キーを前記他のテーブルに追加するステップと、
（ｈ）前記合計容量をチェックし、該合計容量が前記補助記憶媒体の記憶容量以下の場合、前記一のテーブルの次レコードに対して、ステップ（ｆ）へ移行する処理、
（ｉ）前記合計容量が前記補助記憶媒体の容量よりも大のとき、前記一のテーブルの現在のレコードに対して、ステップ（ｄ）へ移行する処理、
の前記（ａ）乃至（ｉ）の各処理は、コンピュータ上で実行されるプログラムによってその処理が実現される。この場合、該プログラムを保持又は記憶する記憶媒体もしくはメディアからコンピュータ装置に該プログラムを読み出すかもしくは受信し該プログラムをコンピュータにインストールし主記憶にロードしてＣＰＵで実行することで本発明を実施することができる。
【００１６】
本発明の実施の形態によれば、補助記憶媒体内のデータの整合性を保ち、補助記憶媒体の記憶容量を最大限に利用し、補助記憶媒体へ抽出するデータの算出に要する計算量の削減を図ることができる。
【００１７】
【実施例】
次に、上記した本発明の実施の形態について更に詳細に説明すべく、本発明の実施例について図面を参照して詳細に説明する。図１は、本発明の一実施例の構成を示す図である。
【００１８】
図１を参照すると、本発明の一実施例は、関連性のある複数のファイル（ファイル＃１〜ファイル＃ｎ）をもつ上位装置１と、データ容量を算出する容量算出手段２と、抽出候補レコードを保持するワークテーブル３と、レコード抽出手段４と、抽出したデータを格納する補助記憶装置５を有する。
【００１９】
データ容量算出手段２は、上位装置１のインデックスファイルからキー情報を抽出し、同時に抽出すべき他ファイルのレコードのデータ容量を計算し、各レコードを抽出する補助記憶媒体番号を決定し、ワークテーブル３に記録する。
【００２０】
レコード抽出手段４は、ワークテーブル３を参照して、上位装置１の各ファイルからレコードを抽出し適切な補助記憶媒体５へ書込む。
【００２１】
図２は、本発明の一実施例の処理手順を示す流れ図である。図２を参照すると、本発明の一実施例は以下のステップを含む。
【００２２】
ステップＳ１：複数のファイルのそれぞれキーごとのレコード件数をあらかじめ計算し、それぞれのインデックスファイルを作成しておく。
【００２３】
ステップＳ２：一のファイルに対応する一のインデックスファイルから補助記憶媒体へダウンロードするレコードのキーを選択し、該キーを補助記憶媒体へ格納する順に並べた一のテーブルを作成する。
【００２４】
ステップＳ３：該一のテーブルの未処理キーが存在しない場合は終了する。
【００２５】
ステップＳ４：補助記憶媒体番号を初期化する。
【００２６】
ステップＳ５：補助記憶媒体番号を更新する。
【００２７】
ステップＳ６：補助記憶媒体番号がその最大値を超えた場合、処理を終了する。
【００２８】
ステップＳ７：合計容量を０に初期化するとともに、キーに関連する他のインデックスのキーを保持するための他のテーブルを初期化する。
【００２９】
ステップＳ８：一のテーブルに登録されたレコードをダウンロードするのに必要なデータ容量を合計容量に加算する。
【００３０】
ステップＳ９：該キーに関連する他のキーで該他のテーブルを検索する。
【００３１】
ステップＳ１０：検索の結果、該他のキーが該他のテーブルに存在する場合には、前記他のファイルに関するデータ容量は加算されているものとして合計容量には何も加算しない。
【００３２】
ステップＳ１１：一方、前記他のキーが前記他のテーブルに存在しない場合、前記他のインデックスから前記他のキーのレコードを抽出し、該レコードのデータ容量を加算して前記他のキーを前記他のテーブルに追加する。
【００３３】
ステップＳ１２：合計容量をチェックし、該合計容量が補助記憶媒体の記憶容量以下の場合、該一のテーブルの次レコードに対して、ステップＳ８へ移行する。一方、合計容量が補助記憶媒体の容量よりも大のときには、前記一のテーブルの現在のレコードに対して、ステップＳ５へ移行する。
【００３４】
図３は、本発明の一実施例の動作を具体的に説明するための模式図である。図３を参照して本実施例の全体の動作について詳細に説明する。
【００３５】
補助記憶媒体へダウンロードするデータの容量計算を以下のように行う。なお、説明を簡略にするため、キーが２種類の場合を例とする。
【００３６】
ファイル１０（キー１２）およびファイル２０（キー２２）のそれぞれキーごとのレコード件数をあらかじめ計算し、それぞれのインデックス１１および２１を作成しておく（ステップ（ａ）、（ｂ））。
【００３７】
インデックス１１からダウンロードするデータのキーを抽出し、抽出したキーを補助記憶媒体へ抽出する順に並べたテーブル３０を作成する（ステップ（ｃ））。
【００３８】
初期値として補助記憶媒体番号を０とする（補助記憶媒体番号は１から始まるものとする）。
【００３９】
補助記憶媒体番号を１加算し、合計容量およびテーブル４０を初期化する。
【００４０】
テーブル３０のレコード１件をダウンロードするのに必要なファイル１０のデータ容量を合計容量に加算する（ステップ（ｄ））。
【００４１】
ファイル１０のキーのレコードとファイル２０のキーのレコードとの関連性を予め定義登録した関連キーテーブル５０を参照して、キー１２に関連するキー２２が存在する場合、キー２２でテーブル４０を検索する（ステップ（ｅ））。図３に示す例では、キー「Ａ２」のレコードの関連情報のキーが「ｘ」、「ｙ」であるとされている。この関係は、例えばキー「Ａ２」のレコードデータ（ファイル１０のレコード）の処理を行なうにあたり、関連情報のキーが「ｘ」、「ｙ」のレコードデータ（ファイル２０のレコード）を必要とするということを表わしている。
【００４２】
キー２２がテーブル４０に存在する場合、すでにファイル２０のデータ容量は加算されているので、何もしない。
【００４３】
キー２２がテーブル４０に存在しない場合、インデックス２１からキー２２のレコードを検索し、データ容量を加算し、キー２２をテーブル４０に追加する（ステップ（ｆ））。
【００４４】
合計容量をチェックする（ステップ（ｇ））。
【００４５】
合計容量が補助記憶媒体の容量以下の場合、テーブル３０の次レコードに対して、ステップ（ｅ）から繰り返す。
【００４６】
合計容量が補助記憶媒体の容量よりも大のときは、テーブル３０の現在のレコードに対して、補助記憶媒体番号を１加算し、合計容量およびテーブル４０を初期化する処理から、繰り返す。
【００４７】
なお、上記した実施例は、サーバ装置からクライアント端末等へのファイルのダウンロード等におけるデータ量の算出にも適用できることは勿論である。
【００４８】
【発明の効果】
以上説明したように、本発明によれば下記記載の効果を奏する。
【００４９】
本発明の第１の効果は、精密な容量計算を行える、ということにある。
その理由は、同一レコードに対して重複して容量計算することがないためである。
【００５０】
本発明の第２の効果は、データの抽出処理の高速化が図れることにある。
【００５１】
その理由は、各テーブルに実データの格納場所やダウンロードする補助記憶媒体情報を持たせることによって、ダウンロード時は、各テーブルを参照するだけでデータの抽出を行うことができるためである。
【図面の簡単な説明】
【図１】本発明の一実施例の構成を示す図である。
【図２】本発明の一実施例の処理手順を示す流れ図である。
【図３】本発明の一実施例の動作を説明するための模式図である。
【符号の説明】
１  上位装置
２  容量算出手段
３  ワークテーブル
４  レコード抽出手段
５  補助記憶媒体
１０、２０  ファイル
１１、２１  インデックス（ファイル）
３０、４０  テーブル
５０  関連（キー）テーブル
【図１】
0003567792.tif 000002
【図２】
0003567792.tif 000003
【図３】
0003567792.tif 000004