Product Cover Image

Introduction to IMS, An: Your Complete Guide to IBM Information Management System, 2nd Edition

By Barbara Klein, Richard Alan Long, Kenneth Ray Blackman, Diane Lynne Goff, Stephen Paul Nathan, Moira McFadden Lanyi, Margaret M. Wilson, John Butterweck, Sandra L. Sherrill

Published by IBM Press

Published Date: Dec 1, 2011

Description

This is the eBook version of the printed book.

Over four decades, IBM's Information Management System (IMS) has consistently earned the trust of the world's largest enterprises. Thanks to its reliability, security, and performance, nearly 95% of Fortune 1000 companies rely on IMS for their most critical IBM System z data management needs: 50,000,000,000+ transactions run through IMS databases every day. What's more, IBM continues to upgrade IMS to meet new challenges more flexibly at lower cost. In An Introduction to IMS, leading IMS experts offer the definitive introduction to the latest versions: IMS 12, 11, and 10. This edition reflects major recent enhancements, including dynamic information generation capabilities; new access, interoperability and development tools; improved SOA support, and more. Not just a complete tutorial, this book provides examples, cases, problems, solutions, glossaries, and more: everything database professionals need to succeed with IMS, regardless of experience.

Table of Contents

Acknowledgments    xxv

About the Authors    xxvi

Preface    xxvii

Part I: Overview of IMS

Chapter 1 IMS: From Apollo to Enterprise    1

IMS and the Apollo Program    1

IMS as a Database Management System    2

IMS as a Transaction Manager    2

Who Uses IMS?    3

IMS and Enterprise Integration    4

Chapter 2 Overview of the IMS Product    5

IMS Database Manager    6

IMS Transaction Manager    8

IMS System Services    9

IMS Product Documentation    9

Hardware and Software Requirements for IMS    10

Hardware    10

Software    10

Chapter 3 Access to and from IMS    13

IMS-Managed Application Program Access    13

Accessing IMS by Using DL/I Calls    14

Accessing IMS TM    14

IMS Connect    16

Accessing IMS DB Using JDBC    16

Accessing IMS from Other Application Runtime Environments    19

Accessing IMS DB    19

Accessing IMS TM    20

Access to and from IMS Using the IMS SOA Integration Suite Components    20

IMS Enterprise Suite Connect APIs    22

IMS Enterprise Suite SOAP Gateway    22

IMS TM Resource Adapter    24

IMS MFS Web Enablement    25

MFS SOA Support    27

IMS Solutions for Java Development    27

IMS Enterprise Suite DLIModel Utility Plug-In    27

IMS Enterprise Suite Explorer for Development    27

IMS XML DB    29

IMS Web 2.0 Solutions for IMS DB and IMS TM    29

Accessing from IMS    30

Accessing to and from IMS    32

Chapter 4 IMS and z/OS    33

How IMS Relates to z/OS    33

Structure of IMS Subsystems    33

IMS Control Region    34

IMS Environments    34

IMS Separate Address Spaces    41

Internal Resource Lock Manager    48

IMS Connect    48

Advanced Program-to-Program Communications    48

Running an IMS System    49

Running Multiple IMS Systems    49

Running Multiple IMS Systems on a Single z/OS Image    49

Running Multiple IMS Systems on Multiple z/OS Images    50

How IMS Uses z/OS Services    50

Resource Access Control Facility    51

Resource Recovery Services    51

Parallel Sysplex    52

Cross-System Coupling Facility    52

Cross-System Extended Services    53

Automatic Restart Management    53

Chapter 5 Setting Up, Running, and Maintaining IMS    55

Installing IMS    55

Installing IMS Using SMP/E    56

IMS Installation Verification Program    56

Defining an IMS System    57

IMS Startup    57

Types of IMS System Starts    57

Starting Regions That Are Related to IMS    58

IMS Logging    60

IMS Utility Programs    60

IMS Recovery    60

Extended Recovery Facility    60

Remote Site Recovery    61

Database Recovery Control Facility    61

Fast Database Recovery    61

IMS Database Recovery Facility for z/OS    61

IMS Shutdown    61

Maintaining an IMS System    62

Part II: IMS Database Manager

Chapter 6 Overview of the IMS Database Manager    63

IMS Database Manager Overview    63

Implementation of IMS Databases    64

Overview of Full-Function Databases    64

Overview of Fast Path DEDBs    64

Full-Function Databases    65

Fast Path Data Entry Databases    66

Storing Data in IMS and DB2 for z/OS    66

Storing XML Data in IMS    67

Open Database Manager    67

Workload Routing and Distribution    71

Chapter 7 Overview of the IMS Hierarchical Database Model    75

IMS Hierarchical Database Basics    76

Basic Segment Types    79

Sequence Fields and Access Paths    80

Logical Relationships    81

Secondary Indexes    81

Logical Relationships    81

Secondary Index Databases    85

Chapter 8 Implementing the IMS Hierarchical Database Model    89

Segments, Records, and Pointers    90

Physical Segment Design    91

IMS Hierarchical Access Methods    93

HDAM Access Method    95

HIDAM Access Method    100

PHDAM and PHIDAM Access Methods    103

Index Databases    106

Fast Path DEDBs    106

GSAM Access Method    112

HSAM and HISAM Access Methods    112

Operating System Access Methods    113

Data Set Groups    114

Choosing Between VSAM and OSAM for Data Set Groups    115

IMS Checkpoints    116

Application Program Checkpoints    116

Locking Data    118

DB2 and Deadlocks    119

Methods of Sharing Data    120

Chapter 9 Data Sharing    123

How Applications Share Data    124

DBRC and Data Sharing    125

Chapter 10 The Database Reorganization Process    127

Purpose of Database Reorganization    128

When to Reorganize Databases    128

Reactive Reorganizing    128

Proactive Reorganization    129

Monitoring the Database    130

Sample Reorganization Guidelines    130

Overview of the Database Reorganization Process    132

Reorganizing HALDBs    132

Offline Reorganization    132

Online Reorganization    146

Chapter 11 The Database Recovery Process    153

Determining When Recovery Is Needed    153

Overview of the Database Recovery Process    154

Online Programs and Recovery    155

DB Batch Update Programs and Recovery    155

IMS Backup and Recovery Utilities    155

Database Image Copy Utility    156

Database Image Copy 2 Utility    158

Online Database Image Copy Utility    159

Database Change Accumulation Utility    159

Database Recovery Utility    161

Batch Backout Utility    164

Part III: IMS Transaction Manager

Chapter 12 Overview of the IMS Transaction Manager    167

IMS TM Control Region    169

Data Communications Control Environment    169

IMS TM Network Overview    170

Required IMS TM Network Components    173

Optional IMS TM Network Components    173

Terminal Types    174

Static    174

Dynamic    174

Extended Terminal Option    174

APPC/IMS    175

APPC/IMS Application Programming Interfaces    175

MSC and ISC    176

Multiple Systems Coupling    176

Intersystem Communication    177

Comparing the Functions of MSC and ISC    178

Input Message Types    179

Input Destination    179

Message Format Service    180

Message Queuing    180

Message Queue Size and Performance Considerations    182

Multiple Message Queue Data Sets    182

Fast Path Transactions and Message Queues    183

Shared Queues    183

Operating an IMS Network    188

Master Terminal    189

Initiating a Session with IMS    192

Open Transaction Manager Access    193

OTMA Asynchronous Output    194

OTMA Security    196

OTMA Callable Interface    197

IMS Connect    198

IMS Connect OTMA Interface    199

IMS TM Resource Adapter    204

IMS Connect APIs    205

Workload Routing with the IMS Connect OTMA Interface    205

Workload Balancing with the Sysplex Distributor    205

Ports    207

Connection Types and Considerations    207

IMS Connect Load Balancing and Routing    208

Asynchronous Output and Supermember Support    210

IMS Connect Operations Manager Interface    213

IMS-to-IMS Connections over TCP/IP    213

WebSphere MQ    214

Using the WebSphere MQ API in IMS Dependent Regions    214

IMS BMP Trigger Monitor    216

WebSphere MQ IMS Bridge    216

Chapter 13 How IMS TM Processes Input    223

IMS TM Messages    223

IMS Message Format    225

Input Message Origin    226

Transaction Scheduling    226

Message Region Scheduling    226

Scheduling Conditions    228

Program and Transaction Definitions That Affect Scheduling    229

Definition Parameters That Affect Transaction Scheduling    230

Defining the Class of a Transaction    230

Defining the Priority of a Transaction    231

Processing Limit Count and Time    232

Parallel Scheduling    232

Database Processing Intent    233

Scheduling a BMP or JBP Application    233

Scheduling Fast Path Transactions    234

Fast Path-Exclusive and Fast Path-Potential Transactions    234

Scheduling in a Shared-Queues Environment    235

IMS Transaction Flow    235

OTMA Message Processing    236

Commit Mode 0 (CM0): Commit-Then-Send    236

Commit Mode 1 (CM1): Send-Then-Commit    236

Synclevel 0 (SL0): None    236

Synclevel 1 (SL1): Confirm    238

Synclevel 2 (SL2): Syncpoint    238

Synchronous Callout    239

IMS Connect Implementation of Synchronous Callout    240

Transaction Expiration    242

Part IV: IMS Application Development

Chapter 14 Application Programming Overview    243

Application Program Structure    244

An ENTRY Statement    245

A PCB or AIB    246

Some DL/I Calls    246

A Status Code Processing Section    246

A Termination Statement    246

Entry to the Application Program    246

PCB Mask    247

AIB Mask    252

Calls to IMS    254

Status Code Processing    255

Application End of Processing    256

IMS Setup for Applications    257

IMS Control Blocks    257

IMS System Definition    259

IMS Application Programming Interfaces    261

IMS Application Calls    261

Get Unique (GU)    261

Get Next (GN)    261

Get Hold Unique (GHU) and Get Hold Next (GHN)    261

Insert (ISRT)    262

Delete (DLET)    262

Replace (REPL)    262

ICAL Call    262

IMS System Service Calls    262

Testing IMS Applications    264

Chapter 15 Application Programming for the IMS Database Manager    267

Introduction to Database Processing    267

Application Programming Interfaces to IMS    268

Processing a Single Database Record    273

IMS Database Positioning    274

Retrieving Segments    275

Updating Segments    279

Calls with Command Codes    283

Database Positioning After DL/I Calls    286

Using Multiple PCBs for One Database    287

Processing GSAM Databases    287

COBOL and PL/I Programming Considerations    289

COBOL Programming Considerations    289

PL/I Programming Considerations    291

Processing Databases with Logical Relationships    293

Accessing a Logical Child in a Physical Database    293

Accessing Segments in a Logical Database    293

Processing Databases with Secondary Indexes    294

Accessing Segments by Using a Secondary Index    295

Creating Secondary Indexes    297

Loading Databases    297

Overview of Loading Databases    297

Loading a Database That Has Logical Relationships    298

Loading a Database That Has Secondary Indexes    300

Using Batch Checkpoint/Restart    300

Using the Restart Call    303

Using the Checkpoint Call    305

Chapter 16 Application Programming for the IMS Transaction Manager    309

Application Program Processing    309

Role of the PSB    311

DL/I Message Calls    312

Message Segments    312

Conversational Processing    312

Output Message Processing    312

Message Switching    313

Callout Requests for External Services or Data    313

Application Program Termination    313

Logging and Checkpoint/Restart Processing    314

Program Isolation and Dynamic Logging    314

Transaction Manager Application Design    314

Online Transaction Processing Concepts    315

Online Program Design    317

Basic Screen Design    318

General IMS TM Application Design Guidelines    320

Chapter 17 Editing and Formatting Messages    321

Message Format Service    321

MFS Components    323

Administering MFS    327

MFS Control Blocks    329

Advantages of Using MFS    331

Basic Edit Function    332

Chapter 18 Application Programming in Java    335

IMS Universal Drivers Overview    336

IMS Database Java Metadata    337

Supported SQL Keywords    340

Variable-Length Segment Support    340

Virtual Foreign Key Fields    341

IMS Support for the JVM Runtime Environment    341

Developing JMP Applications    341

JMP Applications and Conversational Transactions    344

Developing JBP Applications    344

Issuing Synchronous Callout Requests from a Java Dependent Region    346

Enterprise COBOL Interoperability with JMP and JBP Applications    346

Accessing DB2 for z/OS Databases from JMP or JBP Applications    347

Java Interoperability with MPP, IFP, and BMP Applications    348

Distributed Connectivity with the IMS Universal Drivers    348

WebSphere Application Server for z/OS Applications    349

DB2 for z/OS Stored Procedures    349

CICS Applications    349

XML Storage in IMS Databases    351

Decomposed Storage Mode for XML    351

Intact Storage Mode for XML    352

Using IMS Explorer for Development for Testing    357

Part V: IMS System Administration

Chapter 19 The IMS System Definition Process    359

Overview of the IMS System Definition Process    360

Types of IMS System Definitions    362

Stage 1 of the IMS System Definition Process    363

Stage 2 of the IMS System Definition Process    363

JCLIN Processing    364

SMP/E Maintenance    364

IMS Security    364

IMS System Definition Macros    364

Extended Terminal Option    369

ETO Terminology    370

How Structures Are Created and Used    373

Descriptors and Exit Routines    374

How Descriptors Are Created and Used    374

Summary of ETO Implementation    375

Dynamic Resource Definition and Online Change    377

Dynamic Resource Definition    377

The Online Change Process    380

Chapter 20 Customizing IMS    383

What Can Be Customized    384

Exit Routine Naming Conventions    385

Changeable Interfaces and Control Blocks    385

IMS Standard User Exit Parameter List    385

Routine Binding Restrictions    386

Registers and Save Areas    386

IMS Callable Services    386

Storage Services    386

Control Block Services    387

Automated Operator Interface Services    387

Using Callable Services    387

Exit Routine Performance Considerations    387

Summary of IMS Exit Routines    388

Chapter 21 IMS Security    397

Overview of DB/DC and DCCTL Security    397

DB/DC and DCCTL Resources That Can Be Protected    398

Defining Security During DB/DC and DCCTL System Definition    398

Security Facilities for DB/DC and DCCTL Resources    399

Overview of DBCTL Security    401

DBCTL Resources That Can Be Protected    401

Defining Security During DBCTL System Definition    402

Security Facilities for DBCTL Resources    402

Chapter 22 IMS Logging    405

Overview of IMS System Logging    405

Database Recovery Control Facility    407

IMS System Checkpoints    407

IMS Log Data Sets    408

Online Log Data Sets    408

Write-Ahead Data Sets    412

System Log Data Sets    412

Recovery Log Data Sets    413

IMS Restart Data Set    413

IMS Log Buffers    413

Chapter 23 Database Recovery Control Facility    415

Overview of DBRC    416

DBRC Tasks    416

DBRC Components    417

RECON Data Set    417

Database Recovery Control Utility (DSPURX00)    417

Skeletal JCL    418

When to Use DBRC    418

Communicating with DBRC    419

DBRC Commands    419

DBRC API    420

DBRC Functions    420

Recording and Controlling Log Information    421

How DBRC Helps in Recovery    424

Recording Information about Opening and Updating Databases    429

Supporting Data Sharing    430

Supporting Remote Site Recovery    432

Supporting IMSplexes    433

Overview of the RECON Data Sets    433

RECON Records    434

Database-Related Information    436

IMS Systems and the RECON Data Set    436

Database Names in the RECON Data Set    436

Defining and Creating the RECON Data Sets    437

Placement of the RECON Data Sets    438

Initializing the RECON Data Sets    438

Allocating the RECON Data Sets to an IMS System    438

Maintaining the RECON Data Sets    439

Backing Up the RECON Data Sets    440

Deleting Inactive Log Records from the RECON Data Sets    440

Monitoring the RECON Data Sets    440

Reorganizing RECON Data Sets    441

Re-Creating the RECON Data Sets    442

Recommendations for RECON Data Sets    443

Chapter 24 Operating IMS    445

Controlling IMS    445

Controlling IMS with the TSO SPOC Application    445

Issuing Batch SPOC Commands    447

Modifying and Controlling System Resources    448

Modifying System Resources Online    448

List of Commands with Similar Functions for Multiple Resources    453

Modifying Dependent Regions    461

Modifying Telecommunication Lines    461

How to Modify Terminals    461

Modifying and Controlling Transactions    462

Database Control    462

Creating, Updating, Deleting, and Querying Resource Definitions Dynamically    463

Modifying ETO User IDs and Assignments of ISC Users    464

Modifying Multiple System Coupling Resources    464

Modifying Security Options    464

Displaying and Terminating Conversations    465

Modifying and Controlling Subsystems    465

Controlling OTMA Input Messages    465

Recovery During the IMSRSC Repository Data Set Update Process    465

Connecting and Disconnecting Subsystems    465

Starting IMS    466

Starting an IMSplex    467

Starting the CSL    467

Starting the IMS Control Region    467

Starting the IRLM    468

Starting the CQS    468

Starting Dependent Regions    468

Starting the IMS Transaction Manager    469

Starting IMS Connect    469

Restarting IMS    469

Cold Start    470

Warm Start    470

Emergency Restart    470

Monitoring the System    470

Monitoring IMS Connect Connections    471

IMS System Log Utilities    472

Gathering Performance-Related Data    473

IBM IMS Tools    474

Shutting Down IMS    474

Stopping the IMS Transaction Manager    475

Stopping Dependent Regions    475

Shutting Down the IMS Control Region    475

Stopping the IRLM    476

Shutting Down CQS    476

Shutting Down an IMSplex    476

IMS Failure Recovery    477

Executing Recovery-Related Functions    478

Issuing DBRC Commands    478

Dumping the Message Queues    479

Recovering the Message Queues    479

Archiving the OLDS    480

Making Databases Recoverable or Nonrecoverable    480

Running Recovery-Related Utilities    480

Controlling Data Sharing    480

Controlling Data Sharing Using DBRC    481

Monitoring the Data-Sharing System    481

Chapter 25 IMS Recovery Facilities    483

Recovery of Failing IMS Components    484

Recovery Using Dynamic Backout and Batch Backout    485

Recovery Using DBRC    485

Recovery in an IMSplex    486

Recovery of IMS Systems in an IMSplex    486

Recovery of CSL in an IMSplex    486

Recovery of Repository Server in an IMSplex    486

Recovery in a Parallel Sysplex Environment    487

Recovery Using InfoSphere IMS Replication for z/OS    487

Recovery Using IMS Recovery Expert for z/OS    488

Recovery Using the Extended Recovery Facility    489

Recovery Using Remote Site Recovery (RSR)    490

Chapter 26 IBM IMS Tools    493

Application Management Tools    493

IBM IMS Batch Backout Manager for z/OS    494

IBM IMS Batch Terminal Simulator for z/OS    494

IBM IMS Program Restart Facility for OS/390    495

Backup and Recovery Tools    495

IBM IMS DEDB Fast Recovery for z/OS    495

IBM IMS Recovery Expert for z/OS    495

IBM IMS Recovery Solution Pack for z/OS    496

Database Administration and Change Management Tools    497

IBM IMS High Availability Large Database Toolkit for z/OS    497

IBM IMS Sequential Randomizer Generator for OS/390    497

IBM Tools Base for z/OS    497

Data Governance/Regulatory Compliance Tools    498

IBM IMS Audit Management Expert for z/OS    498

IBM InfoSphere Guardium Data Encryption for DB2 and IMS Databases    499

Information Integration Management Tools    499

IBM IMS DataPropagator for z/OS    499

IBM InfoSphere Classic Data Event Publisher for z/OS    500

IBM InfoSphere Classic Replication Server for z/OS    500

Performance Management Tools    501

IBM IMS Buffer Pool Analyzer for z/OS    501

IBM IMS Network Compression Facility for z/OS    501

IBM IMS Performance Solution Pack for z/OS    502

IBM Tivoli OMEGAMON XE for IMS on z/OS    502

IBM Transaction Analysis Workbench for z/OS    503

Transaction Management and System Management Tools    503

IBM IMS Command Control Facility for z/OS    503

IBM IMS Configuration Manager for z/OS    503

IBM IMS Extended Terminal Option Support for z/OS    504

IBM IMS High Performance System Generation Tools for z/OS    504

IBM IMS Queue Control Facility for z/OS    505

IBM IMS Sysplex Manager for z/OS    505

IBM IMS Workload Router for z/OS    505

Utilities Management Tools    506

IBM IMS Cloning Tool for z/OS    506

IBM IMS Database Control Suite for z/OS    506

IBM IMS Database Reorganization Expert for z/OS    507

IBM IMS Database Solution Pack z/OS    507

IBM IMS Fast Path Solution Pack for z/OS    508

IBM IMS Online Reorganization Facility for z/OS    509

Miscellaneous IMS Tools    510

Part VI: IMS in a Parallel Sysplex Environment

Chapter 27 Introduction to Parallel Sysplex    511

Goals of a Sysplex Environment    512

Some Components and Terminology in a Parallel Sysplex    513

IMS Data Sharing and the Sysplex Environment    514

DBRC and Data-Sharing Support    515

Block-Level Data Sharing    515

Fast Database Recovery    516

Sysplex Data-Sharing Concepts    517

Summary of IMS Data Sharing and the Sysplex Environment    518

IMS Transaction Manager and the Sysplex Environment    520

IMS Shared Queues    520

VTAM Generic Resource Support    523

Other Workload-Routing and Workload-Balancing Capabilities    523

Summary of IMS TM and the Sysplex Environment    524

IMS Common Service Layer and the IMSplex    525

Chapter 28 IMSplexes and the IMS Common Service Layer    527

IMSplex Overview    528

IMS Components and System Services That Are Part of an IMSplex    530

Common Queue Server    530

Common Service Layer    530

Repository Server (RS)    531

Multiple Systems Coupling in an IMSplex    531

Recovering Systems in an IMSplex    531

z/OS Components and System Services Used in an IMSplex    532

Common Service Layer Overview    532

CSL Configuration Examples    533

CSL Managers    540

Overview of the CSL Open Database Manager    540

Overview of the CSL Operations Manager    540

Overview of the CSL Resource Manager    542

Overview of the CSL Structured Call Interface    543

Defining and Tailoring an IMSplex    543

Defining CQS    544

Defining the IMS Control Region    544

Defining ODBM    544

Defining OM    545

Defining RM    545

Defining SCI    545

Defining a Simplified IMSplex for the Type-2 Command Environment    545

IMS Functions That Use the IMS Common Service Layer    545

Operating an IMSplex    546

A Single SPOC Program in CSL to Control an IMSplex    547

The TSO SPOC    550

The Batch SPOC    551

Sequence for Starting CSL Address Spaces    552

Part VII: Appendixes

Appendix A Glossary    553

Appendix B Notices    567

Index    571

Purchase Info

ISBN-10: 0-13-288701-0

ISBN-13: 978-0-13-288701-4

Format: eBook (Watermarked)?

This eBook includes the following formats, accessible from your Account page after purchase:

ePubEPUBThe open industry format known for its reflowable content and usability on supported mobile devices.

MOBIMOBIThe eBook format compatible with the Amazon Kindle and Amazon Kindle applications.

Adobe ReaderPDFThe popular standard, used most often with the free Adobe® Reader® software.

This eBook requires no passwords or activation to read. We customize your eBook by discretely watermarking it with your name, making it uniquely yours.

Includes EPUB, MOBI, and PDF

$47.99 $38.39

Add to Cart