0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

若手が考えるメインフレーム攻略8~IMSのDB管理機能~

0
Last updated at Posted at 2026-09-29

はじめに

当記事では、IBMメインフレーム(z/OS)で長年利用されているIMS(IBM Information Management System)の DB機能(IMS DB)についてご紹介します。
IMS DBは銀行、保険、公共機関などの大規模オンラインシステムで広く利用されています。

IMS DBの特徴

1. 階層型DB

IMS DBではデータをツリー構造で管理します。
image.png
*i1

・最上位はルートセグメント
・DETAILはPURCHASE ORDERの子セグメント
・PURCHASE ORDERはDETAILの親セグメント
・階層型DBのデータアクセス順は、1上から下、2左から右、3前から後ろになります。上図の場合、上から順番にセグメントへとアクセスすると以下の順でアクセスが行われます。
1:PART - 2:Stock1 -3:Stocck2-4:Stock3-5:Purchase Order-6:Detail

リレーショナルDBは「表(Table)」イメージでデータを保持しますが、それとは考え方が異なります。

2. DL/Iによるデータアクセス

IMS DBは主にDL/I (Data Language/I) というインターフェースでアクセスします。
DL/I呼び出しを使ってDBにアクセスする命令コードは以下の通りです。

<主要なDL/I機能コード一覧>

機能(何をしてほしいのか) コード
セグメントの取り出し GU,GN
削除または更新のためのセグメントの取り出し GHU,GHN
削除 DLET
更新 REPL
追加 ISRT

3. 複数のDB編成方式

IMS DBには用途に応じて複数のDBタイプがあります。
<主要なDB編成方式一覧>

編成方式 説明
HSAM 階層順次アクセス方式
HISAM 階層索引順次アクセス方式
HDAM 階層直接アクセス方式
HIDAM 階層索引直接アクセス方式
PHIDAM 区分階層索引直接アクセス方式
DEDB Fast Path用高速DB

主要なDB編成方式

ここでは前項で説明したDBのうち、現場でよく使われる2つのDB編成方式について掘り下げて説明します。

1. HIDAM

索引を使ってルートセグメントへ高速アクセスする階層型データベース

HIDAMは2つのDBから構成されます。
 1. 索引DB:データDBのルートセグメントのアドレスを持つDB

顧客番号1001 → アドレスA
顧客番号1002 → アドレスB
顧客番号1003 → アドレスC

 2. データDB:実データを持つDB

顧客1001
 ├─口座A
 └─口座B

顧客1002
 └─口座C

例えば顧客番号1001のデータにアクセスしたい場合、以下の順番でデータ検索されます。
 ①索引DBから、顧客番号1001のデータはアドレスAにあることがわかる
 ②データDBのアドレスAにアクセスして顧客1001セグメントを取得
 ③顧客1001の子セグメントである口座Aを取得

2. DEDB

IMS Fast Path(FP)機能(※)専用のDB。
※FP機能:大量トランザクションを高速に処理することを目的としたIMSの拡張機能。
 通常トランザクションとは異なるコマンド・手順・設計等を用いる。

・区分化
 データベースは複数のエリアに分割されています(最大2048エリア)。
 データはルートキーを元にしてランダマイザーによってどのエリアに格納されるか決定されます。
 ※ランダマイザー:ルートキーからデータの格納場所を計算する関数

・レコード構造
 ランダマイザーを利用した直接アクセス方式です。
 ルートキーを元にランダマイザーでアドレスを計算し、直接アクセスします。

まとめ

IMS DBは「高速で堅牢な階層型データベース」であり、現在でも大規模な金融・公共システムの基幹業務を支えているDBMS(Database Management System:データベース管理システム)です。 

参考文献

当資料に掲載の情報・図表に関する注釈

番号 対象 区分 出典・利用許諾状況など
*i1 図 引用 IBMが提供しているサイトより取得 https://www.ibm.com/docs/en/zos-basic-skills?topic=product-ims-database-manager
0
0
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
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?