IMS DB Physical View
The physical path for accessing the data from application program to IMS DB as shown like below.
IMSDB Physical view -

The IMS DB Physical View represents the flow of data and control from an application program to the IMS database. It outlines the components involved in processing a database request, ensuring efficient data retrieval and management.
Key Components -
Application Program -
This is the user-written program, typically in languages like COBOL, PL/I, or Assembler. It initiates requests to access or manipulate data in the IMS database.
Example: A COBOL program that retrieves customer information based on account numbers.
DL/I (Data Language/I) -
DL/I acts as an intermediary between the application program and IMS. It's not a programming language but a set of modules that facilitate communication with the IMS database.
Example: When an application issues a "Get Unique" (GU) call, DL/I translates this request to fetch the specific data segment from the database.
IMS Transaction Manager (TM) -
The Transaction Manager handles input/output processing, message formatting, logging, and recovery. It manages the queuing of transactions and ensures they are processed in order.
Example: When multiple users submit transactions simultaneously, TM queues them and processes each in turn, maintaining system integrity.
IMS Database Manager (DBM) -
The Database Manager oversees the actual storage and retrieval of data. It ensures data integrity, manages hierarchical relationships, and controls access methods.
Example: When a program requests to update a customer's address, the DBM ensures the correct segment is modified without affecting other data.
Access Modes: BMP and DLI -
- BMP (Batch Message Processing) Mode: Allows batch programs to access the database concurrently with online transactions.
Example: A nightly batch job updating account balances while users continue to access their accounts online. - DLI (Data Language/I) Mode: Used for standalone batch programs that access the database without the need for online transaction processing.
Example: A report generation program that reads customer data sequentially without user interaction.