【メインフレーム】データセットについて整理してみた


 データセットとは  

データセットとは、メインフレーム上でのファイルに相当するもので、データの格納と管理を行う単位。
  ・「CR/LF」(キャリッジリターンとラインフィード)について
  以下で記載するPSファイルPDSファイルの扱い方に関して、改行の概念を理解しておくといいので軽く記載。
  行の終わりを示す記号で、昔のタイプライターに由来するアクション。Linefeedは改行するときに紙を一行動かすアクションで、CarriageReturnは文字を打つことで横ずれしてきた紙を先頭位置に戻すアクションのこと。
・UNIXでは「LF」だけが使用される。これはシンプルな処理を目的としているため。
・Macでは古いバージョンで「CR」だけが使用されている。
・Windowsでは互換性を保つために「CR+LF」が行末に使われている。

 ネーミングルールについて  

メインフレームのデータセット名には、厳格なネーミングルールが存在する。名前はドット(ピリオド)で区切られ、各セグメントは最大8文字までとなっている。データセット名全体は、44文字を超えてはいけない。また、データセット名は英数字で構成され、特定の記号は使えない。最初のセグメントは通常、ユーザーIDに対応しており、これによってデータセットがユーザーごとに管理される。

規則NG例
各セグメントは最大8文字✘ TEST510.ABCDEFGHI.FILE
データセット名全体44文字まで✘ A12345678.B12345678.C123456789.D12345678.E12345
特定の記号✘ TEST510.ABC_DEF.FILE
最初に数字はダメ✘ TEST510.ABCDEF.2FILE

 ネーミングコンベンション  

データセット名には、内容や用途を明示するためのコンベンション(命名規則)が用いられる。命名規則によって、役割が明確化され管理がしやすくなる。

一般的な命名規則

規則用途
LIBライブラリ用データセット
PROCプロシージャ
PARMパラメータファイル
LOADLIB, LINKLIB実行可能なプログラム
COBLIBCOBOLのソースファイル

 データセットタイプについて  

データセットには複数のタイプが存在し、用途に応じて使い分けられる。

タイプ説明
PSファイル(Physical Sequential)シーケンシャルアクセスが行われる標準的なファイル
PDSファイル(Partitioned Data Set)フォルダのように複数のメンバー(ファイル)を保持
世代ファイル(GDG: Generation Data Group)同じデータセットの複数のバージョンを管理
PDS拡張ファイル(PDSE)PDSを進化させた形式で、より効率的な管理が可能
VSAMファイル(Virtual Storage Access Method)高速アクセスが必要な大規模データ向け

 PS, PDSファイルの作成  

  データセットを作成する際には、以下のパラメータを設定する必要がある。

パラメータ説明
LRECL1レコードの論理長さ
Block Sizeデータの格納単位で、効率的なストレージ使用に関係する
Spaceデータセットの物理サイズを指定 。Primaryは初期サイズ、Secondaryは追加サイズ
Record Format(RECFM)レコード形式(固定長か可変長か)を決定する
Directory BlocksPDSのメンバー数を指定する
Dataset Name Typeデータセットの種類(PSやPDSなど)を定義する

 最後に  

一旦、データセットの概要について整理してみました。(不十分だとは思いますが、、、)次はISPFについてまとめたいと思います。