Home About Courses Schedule Services Webinars Contact Search

IMS Database Design and Implementation


Duration: 5 Days

Method: Instructor led, Paper labs, Group discussions

Price: $2950.00

Course Code: IM1050


Information Technology professionals (database administrators, application programmers & designers, and production support personnel) who want a detailed understanding of the structure of and implementation options for IMS full-function and HALDB databases, including performance implications and guidelines.


This course is designed to provide you with the skills necessary to design, implement, and tune IMS database structures (full-function and HALDB only). Comprehensive physical design alternatives and their implications on performance are discussed. Classroom exercises reinforce topics presented in lectures.


Upon successful completion of this course, the student will be able to:

  • Choose the appropriate IMS database access methods and z/OS access methods
  • Define optimization parameters for maximum efficiency
  • Describe the tools and techniques used in measuring tuning existing structures


A working knowledge of the IMS database environment as obtained by on the job work or attending IMS FUNDAMENTALS; programming experience is not required.


  • I. The Project Life Cycle
    • Data requirements analysis
    • Data Element identification
    • Data Structures
    • Data Mapping
    • Database Design
    • Data Conflict resolution
  • II. IMS Database Management System
    • Components of an IMS system
    • Hierarchic databases terminology and characteristics
    • Segment prefix area and pointers
    • The “LOAN” database and details
    • Database Positioning
  • III. IMS Database Control Blocks
    • The control blocks used by IMS
    • Database Definition (DBD)
    • Program Communication Block (PCB)
    • Processing options
    • Program Specification Block (PSB)
    • Application Control Block (ACB)
    • OSAM Data Sets
    • VSAM Data Sets used by IMS
    • Entry Sequenced Data Set (ESDS)
    • Key Sequenced Data Set (KSDS)
    • CI / CA Splits
    • KSDS Index Architecture and performance issues
    • VSAM vs OSAM Comparison
  • V. IMS Access Methods Overview
    • IMS Access Methods
    • HSAM & SHSAM (Hierarchic Sequential Access Method): structure, limitations, usage, & DBDs
    • GSAM (Generalized Sequential Access Method): special usage and definition
    • HISAM & SHISAM (Hierarchic Indexed Sequential Access Method): structure, characteristics, retrieval, root insert, dependent segment insert, usage, performance implications, DBDs
    • HISAM Exercises 1, 2, & 3
  • VI. IMS Direct Access Methods
    • Direct Points: types, usage by IMS
    • DBD Pointer Definition
    • HD Data Set Structure
    • Free space management
    • HD Exercise
    • Features
    • Structure (IMS View vs z/OS view)
    • HIDAM Usage
    • HIDAM and primary index DBDs
    • HIDAM Exercise
    • Structure: primary and overflow (IMS view vs z/OS view)
    • Characteristics
    • HDAM DBD
    • HDAM Tuning
    • HDAM Calculations
    • Discussion Point
    • HDAM Exercises 1 & 2
    • Analyze Actual HDAM Database
  • IX. Secondary Indexes
    • Terminology
    • Features
    • Definition
    • Creating unique keys
    • Storing duplicate data
    • Secondary data structure
    • Sparse indexing
    • Processing as a stand-alone database
    • PSB specifying secondary index processing
    • Performance considerations
    • Secondary Index Exercise
    • Utilities to Build
  • X. Miscellaneous Topics
    • Data set groups
    • Unkeyed and non-unique keyed segments
    • Variable length segments
    • Segment data compression
  • XI. Logical Relationships
    • Unidirectional: terminology, concatenated segment, logical view
    • Bidirectional physically paired: physical and logical views
    • Bidirectional Virtually Paired: physical and logical views
    • LR Pointers: Direct vs symbolic, DBD implementation
    • DBD examples
    • Insert / Delete / Replace rules
    • Logical relationship guidelines
    • Recursive structures and implementation
    • Utilities for (Re)Loading
    • Performance consideration
    • Logical Relationship Exercise
    • Overview
    • Structure: partitions, pointers, self healing pointer implementation
    • Naming conventions
    • Definition: DBD changes, DBD / SEGM / LCHILD examples, partition secondary index, exit routines
    • DBRC commands and records for partitions and data sets
    • Buffer pool specifications
    • Dynamic allocation
    • Partition selection for processing
    • Utilities specific to HALDB
    • Migration considerations
    • Administration
    • Application considerations
  • XIII. Database Buffers
    • VSAM Buffering
    • OSAM Buffering
    • VSAM vs OSAM Summary
  • XIV. Monitoring & Tuning Utilities
    • DB & IMS Monitor and reports
    • Reorganization utilities
    • IMS Tools Solution Packs
  • XV. Review and Recap