当記事の著作権はIBMに帰属します。
詳細はこちらを参照ください。
1. はじめに
本記事は、「若手視点で考える、メインフレームの将来像」というテーマのもと始動した、若手主体のプロジェクトにおけるシリーズ記事の1つです。
メインフレームの未来を見据え、知識の獲得と継承を目的に「メインフレームの魅力深堀分科会」と「メインフレームナレッジ継承分科会」の2つの分科会に分かれて活動しています。
当記事では、「メインフレームナレッジ継承分科会」の取り組みの一環として、メインフレーム製品の一つである IMS(Information Management System) に焦点を当てます。IMSは、企業の基幹システムを支えるメインフレーム上で長年にわたり活用されてきたミドルウェアでありながら、その実態は「名前は聞いたことがあるけど、何をするものかよく分からない」「マニュアルを読んでも専門用語ばかりで難しい」と感じる方も多いのではないでしょうか。実際、IMSは現在も多くの現場で現役として稼働しており、若手エンジニアが学ぶ機会も少なくありません。しかし、文章中心のマニュアルが多く、初学者にとってはとっつきにくいのが現状です。
そこで本シリーズでは、IMSの中でも特に重要な機能である「データ共用」に着目し、実務に応用できるレベルまで深堀りしていきます。全4回にわたる連載の第1回目となる本記事では、IMSの概要をわかりやすく解説します。
関連記事
シリーズ「IMSのデータ共用について」
- 第1回 IMS のデータ共用について ★本記事
- 第2回 データ共用の仕組み
- 第3回 IMSのDBについて
- 第4回 IMSデータ共用における耐障害性
本シリーズの背景・目的
2. IMSとは?
IMS(Information Management System)は、IBMが提供するメインフレーム向けの高性能なデータベース管理機能およびトランザクション管理機能を提供するミドルウェアです。
大規模なオンラインシステムを実現することが可能で、銀行や保険会社、製造業などの基幹業務において、大量のデータを高速かつ安定的に処理するために広く利用されています。
IMSは、以下のような特徴を持っています。
•高速なトランザクション処理能力
•高い可用性と耐障害性
•大規模なデータベースの管理機能
これらの特性により、サービス稼働時間中は止めることのできない重要なシステムを支える存在となっています。
IMSの構成図はこのとおりです。
■IMSCTL:制御領域
IMSデータ通信システムの全体を制御する領域で、端末管理・待ち行列管理・スケジュール管理・DL/Iサービス・バッファ管理・ロック管理/排他制御・ロギング等の機能を提供する。
■DBRC:データベース回復管理領域
ログ情報の一元管理、データベース回復のための情報管理、データベース共用のサポート等を行う。
■DLISAS:DL/I従属アドレス空間
DL/Iデータベースに関するデータベース処理機能のみを実行する。
■MPP:メッセージ処理領域
端末から入力されたトランザクションメッセージがスケジュールされ稼働する領域。
■BMP:バッチ・メッセージ処理領域
JCLで指定されたアプリケーションプログラムが領域の開始後実行されアプリケーションプログラムが終了すると領域も終了する。
■IFP:高速経路領域
主にFPデータベースを処理するアプリケーションプログラムを稼働するための領域。
JCLで指定されたアプリケーションプログラムが領域の開始時にロードされ常駐する。
3. オンライン処理方式
IMSには「全機能(Full Function)」と「FP(Fast Path)」という2つの主要な処理方式があります。元々は処理方式は全機能しかありませんでしたが、時代の変化と共により良いパフォーマンス、高い可用性、より大きいデータベースなどが望まれるようになりFPの機能が実装されました。
FPはひとことで言うと、全機能より高速な処理性能と効率的なリソース利用を実現するための拡張機能です。
<全機能(FF)>
全機能(FF)のトランザクションを処理するメッセージ処理プログラム(MPP)は、全機能データベース、DEDB、MSDB、および Db2 for z/OS データベースにアクセスすることができるオンライン・プログラムです。BMPやバッチ・プログラムとは異なり、MPPはGSAM データベースにはアクセスできません。MPPは、DB/DC環境およびDCCTL環境でのみ実行することができます。
MPPの主要な目的は、メッセージを迅速に処理し応答することですが、MPPは、トランザクションの処理のしかた、および出力メッセージの送信先に関して柔軟性があります。例えば、MPPは出力メッセージを他の端末やアプリケーションプログラムに送信することができます。
<FP>
FPのトランザクションを処理するIMS 高速機能プログラム (IFP) は MPP に似ています。その主な目的は、端末からのメッセージを迅速に処理して応答することです。 MPP と同様に、IFP は全機能データベース、DEDB、MSDB、および Db2 for z/OS データベースにアクセスすることができます。 IFP は、DB/DC 環境および DCCTL 環境でのみ稼働することができます。FPの特徴についてはもう少し詳しく説明します。
[FPの特徴]
①高いパフォーマンスの実現
・不要な機能の削除
必要最小限の機能に絞ることで、システムの軽量化と高速化を実現。
・外部I/Oの最小化
十分な作業環境を用意することで、外部との入出力を最小限に抑え、処理速度を向上
・資源の事前割り当て
プログラムや各種バッファーなど、必要なリソースをあらかじめ確保することで、
処理の待ち時間を削減。
・並行処理の促進
複数の処理を同時に実行できるように設計されており、スループットの向上に貢献。
②高い使用可能度(可用性)
・データベースの区分化・多重化
障害の影響を局所化し、システム全体の安定性を確保。
・連続運転への対応
システムの停止を最小限に抑え、長時間の連続稼働が可能。
③大容量データベースのサポート
・データベース容量の拡張
時代のニーズに応じて、より多くのデータを扱えるように設計。
<まとめ>
Fast Pathは、高速性と効率性を重視したIMSの拡張機能であり、特にリアルタイム性が 求められるシステムに適しています。一方、全機能(FF)は比較的高速性が求められず、処理が複雑なシステムに適しています。
4. トランザクションの流れ
<FFトランザクションの流れ>
① 端末から入力されたメッセージは、トランザクションコード単位に待ち行列化されて処理を待つ。設定した優先順位に従ってスケジューリングされる。 待ち行列に入りきらない場合はDASDの待ち行列に入る。
② プログラムが動的にDISKからロードされ、処理が開始される。
<FPのトランザクションの流れ>
① 端末から入力されたメッセージは、その端末専用のEMHバッファー に入れられ処理を待つ。早いもの順にスケジューリングされる。
② アプリケーションプログラムの処理が開始される。プログラムは常駐しており、DISKからのロード時間が短縮される。
<まとめ>
FPはEMHバッファーを使用し、DASDとのI/Oを無くしたこと・スケジューリングルールをFIFOとしたことで処理が極めて簡素化されており、高速に処理が実行できる仕組みになっています。
5. おわりに
今回は、IMSの基本的な構成や処理方式、トランザクションの流れについて解説しました。
IMSは、長年にわたり企業の基幹業務を支えてきた信頼性の高いミドルウェアであり、その仕組みを理解することは、メインフレーム技術を扱う上で非常に重要です。
次回は、いよいよ本題である「IMSにおけるデータ共用」について、掘り下げていきます。IMSの世界を少しずつ紐解きながら、実務に役立つ知識を身につけていきましょう。第2回もぜひご覧ください。
次記事
この記事は、IBM Community Japanの主催する2025年ナレッジモール研究における「メインフレーム若手技術者の広場」の成果物です。


