0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

第3回 IMSのDBについて

Last updated at Posted at 2025-09-29

当記事の著作権はIBMに帰属します。
詳細はこちらを参照ください。

1. はじめに

前回は、IMSにおけるデータ共用の概念とその仕組みについて詳しく見てきました。今回は、データ共用可能なIMSのデータベースの種類や特徴、選定のポイントについて解説します。

2. 階層型データベース

IMSのデータベース管理機能の特徴である階層型データベースとは、データベース内のデータの構造が階層型(ツリー)になっているデータベースです。1つの親データに複数の子データが系統的・ツリー構造的に結合されています。具体例は下図のとおりです。
【図:階層型データベース例】
A.png

<用語説明>
・セグメント:IMS が保管できる最小のデータ単位。適用業務プログラムのI/Oの単位。
・ルート・セグメント:DBの最高位レベルのセグメント。1レコードに必ず1つだけ存在する。
・従属セグメント:ルート・セグメントより、下位レベルにある全てのセグメント。
・オカレンス:繰り返して発生しているデータ。
・レコード:1つのルート・セグメントとそれに従属するセグメント群の集合。

3. IMSのデータベースの分類

IMSデータベースは2つのタイプ、全機能(FF)と高速機能(FP)に分類されます。
それぞれのデータベースは、アクセス方式や構造、性能特性が異なり、用途やシステム要件に応じて使い分けられます。

【表:データベースの分類】
B.png

また、各種のデータベースは、使用するアクセス方式に応じて、順次記憶方式と直接記憶方式の2つのグループに分類することができます。

■順次記憶方式
データベース・レコードの各セグメント・オカレンスが、階層順に隣接してディスク装置内に格納される。
【図:順次記憶方式のデータセット格納イメージ】
C.png

■直接記憶方式
データベース・レコードの各セグメント・オカレンスが、ポインター(直接アドレス・ポインター)によって関連付けられてディスク装置内に格納される。
【図:直接記憶方式のデータセット格納イメージ】
D.png

<まとめ>
IMSのどのデータベース形式を選択するかは、使用用途から判断する必要があります。たとえば、更新頻度が高く、複数のIMSシステムからの同時アクセスが想定される場合は、HIDAMやDEDBのような形式が適しています。一方で、読み取り中心のバッチ処理などでは、HISAMのようなシンプルな構造が有効な場合もあります。次の章からはHIDAMとDEDBに絞って詳しく説明します。

4. HIDAMについて

■特徴
HIDAMデータベースは索引データベース、HIDAMデータ・データベースの2つから構成される。ルート・セグメントへのアクセスは索引データベースを通して行われる。最大で40GB(10データセット × 4GB)まで拡張可能。

【図:HIDAMの構造】
E.png

■スペース管理
【図:HIDAMのスペース管理】
F.png

基本的に対象のルートセグメントの位置を索引(インデックス)を使って特定し、対応するCIにセグメントを格納する。しかし十分なスペースがない場合、HDスペース検索アルゴリズムを使用して、他のCIの中から最適な格納場所を探し、セグメントを格納する。データベースロード時に1CI当たりのフリースペースの割合やN個ごとに空きCIを残す指定が可能。

5. DEDBについて

■特徴
DEDBは全機能データベースにはない区分化や多重化などのDEDB固有の機能により、高速処理、高可用性、大容量データベースを実現している。索引部を持たず、ランダマイザーを用いてデータにアクセスしている。また、セグメントの種類はHDAMと同じ性格の直接従属セグメント (DDEP)とDEDB特有の順次従属セグメント (SDEP)を持つ。

【図:DEDBの構造】
G.png

<区分化>
1つのDBDで定義されたデータベースを「エリア」と呼ばれる複数の区分に分割すること。複数のデータセットに分割可能となり、最大で8TB(2048エリア × 4GB)()まで拡張可能。意図的に区分化することで、DASDへのアクセスを分散させ、競合の回避や並列処理の促進が可能となる。
(
) IMS V15.1以降、PTF適用およびDFSDFxxxにDEDBGT2K=Yを指定することで 9999エリアまで拡張可能。

<多重化(MADS)>
DEDBはDASD障害の対策として、エリアごとにデータセットのコピーを複数持たせる「多重化」が可能。この仕組みは MADS(Multiple Area Data Sets)と呼ばれ、最大で7つコピーできる。MADSの管理は、DBRCが担当し、各コピーの状態を個別に監視・管理する。

<順次従属セグメント(SDEP)>
DEDB特有のオプションでルートの直後に1つだけ定義できるセグメント。オンライン処理中は基本的に挿入専用で、順次に格納される。専用のユーティリティーを使って中身を順次ファイルとして取り出し、他のバッチ・プログラムの入力データとして利用することが可能。ジャーナルの記録、統計情報の収集、他プログラムへのデータ提供など、さまざまな用途に活用される。

■スペース管理
DEDBのエリアは下図のとおり、ルート・アドレス可能部分、独立オーバーフロー部分、順次従属部分の3つの部から構成されます。

【図:DEDBのエリア構成】
H.png

<UOW>
ユーティリティーやBMPでの順次作業で、一連の連続した作業の単位となるもの。具体的には物理的に連続した複数のCIで構成される。UOWの大きさはユーザーが決定する。

<ルート・アドレス可能域>
UOWで構成されており、各UOWはさらに「基本部」と「従属オーバーフロー部」の2つの領域に分かれる。この割合はユーザーが設定可能だが、設定値は1つだけであり、ルート・アドレス可能域内のすべてのUOWに共通して適用される。基本部は、ランダマイザーによって直接アクセス可能な領域で、ランダマイザーが決定したルート・セグメントおよびその直接従属セグメントが格納される。一方、従属オーバーフロー部は、基本部に収まりきらなかったデータが格納される。この2つの領域はUOWごとに独立しており、あるUOWの従属オーバーフロー部には、そのUOWの基本部からあふれたデータのみが格納される。他のUOWのデータが混在することはできない。

<独立オーバーフロー域>
すべてのUOWのあふれデータを格納するために用意された場所。

<まとめ>
従属オーバーフロー部や、独立オーバーフロー部は、あくまでも、適用業務処理中に入りきらなかった場合の予備の部分です。データの更新、削除、挿入を繰り返すうちに、利用されない細切れになったフリースペースが散在するようになりパフォーマンスが悪くなります。データベースを長いこと使用していくうちに、オーバーフロー部分にデータが散在するようになるため、再編成作業が必要になります。

6. おわりに

今回は、IMSで使用可能なデータベースの種類と、それぞれの特徴について解説しました。単に仕組みを理解するだけでなく、使用するデータベースの特性を深く理解し、システム要件に応じた適切なデータベースの選定と設計を行うことが不可欠です。
次回は、データ共用における耐障害性にスポットを当てて解説していきます。第4回もぜひご覧ください。


この記事は、IBM Community Japanの主催する2025年ナレッジモール研究における「メインフレーム若手技術者の広場」の成果物です。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?