| |
| |
Acknowledgments | |
| |
| |
About the Authors | |
| |
| |
Preface | |
| |
| |
| |
Overview of IMS | |
| |
| |
| |
IMS: From Apollo to Enterprise | |
| |
| |
IMS and the Apollo Program | |
| |
| |
IMS as a Database Management System | |
| |
| |
IMS as a Transaction Manager | |
| |
| |
Who Uses IMS? | |
| |
| |
IMS and Enterprise Integration | |
| |
| |
| |
Overview of the IMS Product | |
| |
| |
IMS Database Manager | |
| |
| |
IMS Transaction Manager | |
| |
| |
IMS System Services | |
| |
| |
IMS Product Documentation | |
| |
| |
Hardware and Software Requirements for IMS | |
| |
| |
Hardware | |
| |
| |
Software | |
| |
| |
| |
Access to and from IMS | |
| |
| |
IMS-Managed Application Program Access | |
| |
| |
Accessing IMS by Using DL/I Calls | |
| |
| |
Accessing IMS TM | |
| |
| |
IMS Connect | |
| |
| |
Accessing IMS DB Using JDBC | |
| |
| |
Accessing IMS from Other Application Runtime Environments | |
| |
| |
Accessing IMS DB | |
| |
| |
Accessing IMS TM | |
| |
| |
Access to and from IMS Using the IMS SOA Integration Suite Components | |
| |
| |
IMS Enterprise Suite Connect APIs | |
| |
| |
IMS Enterprise Suite SOAP Gateway | |
| |
| |
IMS TM Resource Adapter | |
| |
| |
IMS MFS Web Enablement | |
| |
| |
MFS SOA Support | |
| |
| |
IMS Solutions for Java Development | |
| |
| |
IMS Enterprise Suite DLIModel Utility Plug-In | |
| |
| |
IMS Enterprise Suite Explorer for Development | |
| |
| |
IMS XML DB | |
| |
| |
IMS Web 2.0 Solutions for IMS DB and IMS TM | |
| |
| |
Accessing from IMS | |
| |
| |
Accessing to and from IMS | |
| |
| |
| |
IMS and z/OS | |
| |
| |
How IMS Relates to z/OS | |
| |
| |
Structure of IMS Subsystems | |
| |
| |
IMS Control Region | |
| |
| |
IMS Environments | |
| |
| |
IMS Separate Address Spaces | |
| |
| |
Internal Resource Lock Manager | |
| |
| |
IMS Connect | |
| |
| |
Advanced Program-to-Program Communications | |
| |
| |
Running an IMS System | |
| |
| |
Running Multiple IMS Systems | |
| |
| |
Running Multiple IMS Systems on a Single z/OS Image | |
| |
| |
Running Multiple IMS Systems on Multiple z/OS Images | |
| |
| |
How IMS Uses z/OS Services | |
| |
| |
Resource Access Control Facility | |
| |
| |
Resource Recovery Services | |
| |
| |
Parallel Sysplex | |
| |
| |
Cross-System Coupling Facility | |
| |
| |
Cross-System Extended Services | |
| |
| |
Automatic Restart Management | |
| |
| |
| |
Setting Up, Running, and Maintaining IMS | |
| |
| |
Installing IMS | |
| |
| |
Installing IMS Using SMP/E | |
| |
| |
IMS Installation Verification Program | |
| |
| |
Defining an IMS System | |
| |
| |
IMS Startup | |
| |
| |
Types of IMS System Starts | |
| |
| |
Starting Regions That Are Related to IMS | |
| |
| |
IMS Logging | |
| |
| |
IMS Utility Programs | |
| |
| |
IMS Recovery | |
| |
| |
Extended Recovery Facility | |
| |
| |
Remote Site Recovery | |
| |
| |
Database Recovery Control Facility | |
| |
| |
Fast Database Recovery | |
| |
| |
IMS Database Recovery Facility for z/OS | |
| |
| |
IMS Shutdown | |
| |
| |
Maintaining an IMS System | |
| |
| |
| |
IMS Database Manager | |
| |
| |
| |
Overview of the IMS Database Manager | |
| |
| |
IMS Database Manager Overview | |
| |
| |
Implementation of IMS Databases | |
| |
| |
Overview of Full-Function Databases | |
| |
| |
Overview of Fast Path DEDBs | |
| |
| |
Full-Function Databases | |
| |
| |
Fast Path Data Entry Databases | |
| |
| |
Storing Data in IMS and DB2 for z/OS | |
| |
| |
Storing XML Data in IMS | |
| |
| |
Open Database Manager | |
| |
| |
Workload Routing and Distribution | |
| |
| |
| |
Overview of the IMS Hierarchical Database Model | |
| |
| |
IMS Hierarchical Database Basics | |
| |
| |
Basic Segment Types | |
| |
| |
Sequence Fields and Access Paths | |
| |
| |
Logical Relationships | |
| |
| |
Secondary Indexes | |
| |
| |
Logical Relationships | |
| |
| |
Secondary Index Databases | |
| |
| |
| |
Implementing the IMS Hierarchical Database Model | |
| |
| |
Segments, Records, and Pointers | |
| |
| |
Physical Segment Design | |
| |
| |
IMS Hierarchical Access Methods | |
| |
| |
HDAM Access Method | |
| |
| |
HIDAM Access Method | |
| |
| |
PHDAM and PHIDAM Access Methods | |
| |
| |
Index Databases | |
| |
| |
Fast Path DEDBs | |
| |
| |
GSAM Access Method | |
| |
| |
HSAM and HISAM Access Methods | |
| |
| |
Operating System Access Methods | |
| |
| |
Data Set Groups | |
| |
| |
Choosing Between VSAM and OSAM for Data Set Groups | |
| |
| |
IMS Checkpoints | |
| |
| |
Application Program Checkpoints | |
| |
| |
Locking Data | |
| |
| |
DB2 and Deadlocks | |
| |
| |
Methods of Sharing Data | |
| |
| |
| |
Data Sharing | |
| |
| |
How Applications Share Data | |
| |
| |
DBRC and Data Sharing | |
| |
| |
| |
The Database Reorganization Process | |
| |
| |
Purpose of Database Reorganization | |
| |
| |
When to Reorganize Databases | |
| |
| |
Reactive Reorganizing | |
| |
| |
Proactive Reorganization | |
| |
| |
Monitoring the Database | |
| |
| |
Sample Reorganization Guidelines | |
| |
| |
Overview of the Database Reorganization Process | |
| |
| |
Reorganizing HALDBs | |
| |
| |
Offline Reorganization | |
| |
| |
Online Reorganization | |
| |
| |
| |
The Database Recovery Process | |
| |
| |
Determining When Recovery Is Needed | |
| |
| |
Overview of the Database Recovery Process | |
| |
| |
Online Programs and Recovery | |
| |
| |
DB Batch Update Programs and Recovery | |
| |
| |
IMS Backup and Recovery Utilities | |
| |
| |
Database Image Copy Utility | |
| |
| |
Database Image Copy 2 Utility | |
| |
| |
Online Database Image Copy Utility | |
| |
| |
Database Change Accumulation Utility | |
| |
| |
Database Recovery Utility | |
| |
| |
Batch Backout Utility | |
| |
| |
| |
IMS Transaction Manager | |
| |
| |
| |
Overview of the IMS Transaction Manager | |
| |
| |
IMS TM Control Region | |
| |
| |
Data Communications Control Environment | |
| |
| |
IMS TM Network Overview | |
| |
| |
Required IMS TM Network Components | |
| |
| |
Optional IMS TM Network Components | |
| |
| |
Terminal Types | |
| |
| |
Static | |
| |
| |
Dynamic | |
| |
| |
Extended Terminal Option | |
| |
| |
APPC/IMS | |
| |
| |
APPC/IMS Application Programming Interfaces | |
| |
| |
MSC and ISC | |
| |
| |
Multiple Systems Coupling | |
| |
| |
Intersystem Communication | |
| |
| |
Comparing the Functions of MSC and ISC | |
| |
| |
Input Message Types | |
| |
| |
Input Destination | |
| |
| |
Message Format Service | |
| |
| |
Message Queuing | |
| |
| |
Message Queue Size and Performance Considerations | |
| |
| |
Multiple Message Queue Data Sets | |
| |
| |
Fast Path Transactions and Message Queues | |
| |
| |
Shared Queues | |
| |
| |
Operating an IMS Network | |
| |
| |
Master Terminal | |
| |
| |
Initiating a Session with IMS | |
| |
| |
Open Transaction Manager Access | |
| |
| |
OTMA Asynchronous Output | |
| |
| |
OTMA Security | |
| |
| |
OTMA Callable Interface | |
| |
| |
IMS Connect | |
| |
| |
IMS Connect OTMA Interface | |
| |
| |
IMS TM Resource Adapter | |
| |
| |
IMS Connect APIs | |
| |
| |
Workload Routing with the IMS Connect OTMA Interface | |
| |
| |
Workload Balancing with the Sysplex Distributor | |
| |
| |
Ports | |
| |
| |
Connection Types and Considerations | |
| |
| |
IMS Connect Load Balancing and Routing | |
| |
| |
Asynchronous Output and Supermember Support | |
| |
| |
IMS Connect Operations Manager Interface | |
| |
| |
IMS-to-IMS Connections over TCP/IP | |
| |
| |
WebSphere MQ | |
| |
| |
Using the WebSphere MQ API in IMS Dependent Regions | |
| |
| |
IMS BMP Trigger Monitor | |
| |
| |
WebSphere MQ IMS Bridge | |
| |
| |
| |
How IMS TM Processes Input | |
| |
| |
IMS TM Messages | |
| |
| |
IMS Message Format | |
| |
| |
Input Message Origin | |
| |
| |
Transaction Scheduling | |
| |
| |
Message Region Scheduling | |
| |
| |
Scheduling Conditions | |
| |
| |
Program and Transaction Definitions That Affect Scheduling | |
| |
| |
Definition Parameters That Affect Transaction Scheduling | |
| |
| |
Defining the Class of a Transaction | |
| |
| |
Defining the Priority of a Transaction | |
| |
| |
Processing Limit Count and Time | |
| |
| |
Parallel Scheduling | |
| |
| |
Database Processing Intent | |
| |
| |
Scheduling a BMP or JBP Application | |
| |
| |
Scheduling Fast Path Transactions | |
| |
| |
Fast Path-Exclusive and Fast Path-Potential Transactions | |
| |
| |
Scheduling in a Shared-Queues Environment | |
| |
| |
IMS Transaction Flow | |
| |
| |
OTMA Message Processing | |
| |
| |
Commit Mode 0 (CM0): Commit-Then-Send | |
| |
| |
Commit Mode 1 (CM1): Send-Then-Commit | |
| |
| |
Synclevel 0 (SL0): None | |
| |
| |
Synclevel 1 (SL1): Confirm | |
| |
| |
Synclevel 2 (SL2): Syncpoint | |
| |
| |
Synchronous Callout | |
| |
| |
IMS Connect Implementation of Synchronous Callout | |
| |
| |
Transaction Expiration | |
| |
| |
| |
IMS Application Development | |
| |
| |
| |
Application Programming Overview | |
| |
| |
Application Program Structure | |
| |
| |
An ENTRY Statement | |
| |
| |
A PCB or AIB | |
| |
| |
Some DL/I Calls | |
| |
| |
A Status Code Processing Section | |
| |
| |
A Termination Statement | |
| |
| |
Entry to the Application Program | |
| |
| |
PCB Mask | |
| |
| |
AIB Mask | |
| |
| |
Calls to IMS | |
| |
| |
Status Code Processing | |
| |
| |
Application End of Processing | |
| |
| |
IMS Setup for Applications | |
| |
| |
IMS Control Blocks | |
| |
| |
IMS System Definition | |
| |
| |
IMS Application Programming Interfaces | |
| |
| |
IMS Application Calls | |
| |
| |
Get Unique (GU) | |
| |
| |
Get Next (GN) | |
| |
| |
Get Hold Unique (GHU) and Get Hold Next (GHN) | |
| |
| |
Insert (ISRT) | |
| |
| |
Delete (DLET) | |
| |
| |
Replace (REPL) | |
| |
| |
ICAL Call | |
| |
| |
IMS System Service Calls | |
| |
| |
Testing IMS Applications | |
| |
| |
| |
Application Programming for the IMS Database Manager | |
| |
| |
Introduction to Database Processing | |
| |
| |
Application Programming Interfaces to IMS | |
| |
| |
Processing a Single Database Record | |
| |
| |
IMS Database Positioning | |