読み方 : ちょくせつへんせいファイル

直接編成ファイル【direct access file】

概要

直接編成ファイルとは、大型コンピュータなどで用いられるファイル編成方式の一つで、ファイル内のレコードをキー値から算出した格納位置に直接書き込み、読み出す際も同じ計算によって位置を特定してアクセスする方式。
直接編成ファイルのイメージ画像

ファイル内の各レコードは、主キーとなる識別番号をハッシュ関数に入力して得られる物理アドレスに格納される。データを読み書きする際は先頭から順にたどる必要がなく、目的のレコードの位置を計算で直接求めてアクセスする。レコード件数が増えてもアクセス時間がほぼ一定に保たれるため、大量のレコードを扱うデータベースや即時性が求められるリアルタイム処理のシステムで用いられてきた。

これに対し、レコードを先頭から順に格納・読み取りする方式は「順編成ファイル」と呼ばれる。順編成では特定のレコードを取り出すためにファイルを先頭から走査しなければならず、件数が増えるほどアクセス時間も長くなる。直接編成はこの欠点を解消する目的で用いられる。

実装上の課題として、異なるキー値が同じ格納位置に変換される衝突(コリジョン)への対処がある。衝突が発生した場合は、連結リストレコードを繋ぎ合わせて格納する「チェイン法」や、別のハッシュ関数を適用する「オープンアドレス法」などが用いられる。衝突の頻度はファイルの充填率が高まるほど増加し、あふれ領域の探索が必要になってアクセス速度が低下するため、効率的なハッシュ関数の選定と十分な格納領域の確保が求められる。また、データの追加や削除を繰り返すと未使用領域が発生しやすく、記憶領域を効率よく利用できない場合もある。

直接編成ファイルは、任意の位置へ物理的に直接アクセスできる磁気ディスク装置の普及によって実用的に利用できるようになった。それまで主流だった磁気テープは先頭から順にしか読み書きできなかったが、磁気ディスクの登場によって任意の位置を飛び飛びに読み書きするランダムアクセスが可能になり、この編成方式が活用されるようになった。

メインフレームや業務向けシステムでは顧客情報や商品情報の管理に広く利用され、COBOLなどの言語でもサポートされてきた。現在ではリレーショナルデータベース(RDB)の普及により、直接編成ファイルを意識する機会は少なくなったが、ハッシュインデックスキーバリューストアKVS)の内部構造などに共通する考え方が受け継がれている。

(2026.6.10更新)
 

資格試験などの「直接編成ファイル」の出題履歴

▼ 基本情報技術者試験
令3修12 問19】 格納アドレスが 1~6 の範囲の直接編成ファイルにおいて,次の条件でデータを格納した場合,アドレス1に格納されているデータのキー値はどれか。
平30修6 問19】 格納アドレスが1~6の範囲の直接編成ファイルにおいて,次の条件でデータを格納した場合,アドレス1に格納されているデータのキー値はどれか。
平28秋 問20】 格納アドレスが 1~6 の範囲の直接編成ファイルにおいて,次の条件でデータを格納した場合,アドレス1に格納されているデータのキー値はどれか。
平25秋 問19】 直接編成ファイルにおけるレコードのキー値を格納アドレスに変換したハッシュ値の分布として,理想的なものはどれか。
この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。