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 method
  • Define optimization parameters for maximum efficiency
  • Describe the tools and techniques used in 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)
  • IV. VSAM Review
    • 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
  • V. IMS Access Methods Overview
    • z/OS Access Methods
    • IMS Access Methods
    • HSAM (Hierarchic Sequential Access Method): structure, limitations, usage, & DBD
    • HISAM (Hierarchic Indexed Sequential Access Method): structure, characteristics, retrieval, root insert, dependent segment insert, usage, performance implications, DBD, and exercise
    • GSAM (Generalized Sequential Access Method): special usage and definition
    • SHSAM & SHISAM (Simple HSAM & Simple SHISAM): usage and definition
    • HISAM Exercise
  • VI. IMS Direct Access Methods
    • Direct Points: types, usage by IMS
    • DBD Pointer Definition
    • Free space management
    • VSAM vs. OSAM comparision
    • HD Exercise
    • Features
    • Structure (IMS View vs z/OS view)
    • Characteristics
    • Processing
    • Usage
    • HIDAM and primary index DBDs
    • Features
    • Structure: primary and overflow (IMS view vs z/OS view)
    • Characteristics
    • Loading
    • Synonyms
    • Processing
    • Usage
    • HDAM DBD
  • IX. HDAM Tuning
    • Design Goals
    • Performance Parameters: Randomizers, RAPs, BYTES
    • Calculations: RAPs, RAA, Overflow
    • Cascading
    • HDAM Exercise 1
    • HDAM Exercise 2
  • X. 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
  • 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
    • Performance consideration
  • XII. Miscellaneous Topics
    • Data set groups
    • Unkeyed and non-unique keyed segments
    • Variable length segments
    • Segment data compression
    • 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
    • Application considerations
  • XIV. Monitoring & Tuning Utilities