In this topic, we described about the below sections -
The physical path for accessing the data from application program to IMS DB as shown like below.
IMSDB Physical view:
Let’s discuss about each individual item in detail.
Application program/ Application:
It is self described and everyone know about it. So no additional details required to provide about it. The user module written in ALC, COBOL or PL/I.
DL/I is not a programming language. DL/I is a set of modules which interface between the IMS modules(database manager/Transaction manager) and the application program.
IMS uses the DL/I as an interfacing technology that application program can communicate with Database. DL/I is an external to the application program. DL/I will be discussed in details here.
IMS databases sometimes referred as DL/I database because of IMS databases referred Data Language I (DL/I). DL/I is a command-level language.
DL/I can be used in batch and online programs to access data stored in databases. Application programs use DL/I calls to request data from IMS Database. IMS databases makes provisions to more than 9 access methods to access the data.
IMS Transaction Manager:
IMS Transaction manager controls I/O (input/output) processing. IMS TM also provides formatting, logging, and recovery of messages. IMS TM maintains communications security and oversees the scheduling and execution of programs.
IMS TM uses the messaging and queuing method. IMS accepts the transaction triggered from the application program and put it in queue. IMS invokes a scheduler to process the request transactions added to the queue.
IMS will take the request and process it and if required, it will add a response message to output messaging queue. The Output message will send to the actual program.
IMS TM is responsible for all the above process and TM will complete thousands of processes of this kind. TM uses a messaging mechanism for queuing requests.
IMS Database Manager:
IMS Database manager contains access method, operating system and disk storage. IMS database manager is primarily responsible for controlling the memory and accessing the database.
IMS Database Manager is too responsible for to maintain the database by allowing only valid transactions on it. Hierarchical databases and DL/I calls are key parts of IMS DB.
IMS DB organize business data with both program and device independence. Data within the database is arranged in a tree structure and the data at each level is in some way dependent on the data at the higher level of the hierarchy.
In a hierarchical database, data is stored within the database only once. The data item is then available to all users who are all authorized to use it. Users do not need to have personal copies of the data. The IMS Database Manager can perform:
- Maintain the databases.
- Maintain data integrity.
- Defining the database structure and the relationships among the database elements.
- Provides a centralized point to control and access for the IMS database.
- Perform queries against the data in the database.
- Perform database transactions.
- Perform multiple database transactions concurrently
IMS Database manager provides to different ways of accessing methods.
File Manager is running in the user’s TSO address space, and connects to an IMS subsystem. IMS databases and other data sets required by IMS are allocated to an IMS.
DC or DBCTL control region. Access databases directly. When accessing an IMS database in BMP mode, File Manager connects to an IMS subsystem.
IMS databases and other data sets needed by IMS are allocated to the control region. In BMP mode, the data bases owned by the IMS control region can be connected.
File Manager will be running in the user’s TSO address, but does not connect to an IMS subsystem. IMS databases and other data sets required by IMS needs to be allocated by File.
Manager IMS before calling IMS services. When an IMS database is accessed in DLI mode, the data sets required by IMS are allocated by File Manager. In DLI mode, user can specify the names of the data base data sets and can use own data bases if required.