You are on page 1of 3

IMS-DB

IMS stands for Information management system. It is a data management system


software. This is a product of IBM. IMS product also contains a teleprocessing monitor
called IMS-DC as well as a database interface called DLI.
DLI
It is IBM's name for the collection of software modules that provide access to the data
stored in a database. It is the interface language that programmers use for accessing the
database in an application program. For all u Open System buffs out there, It is analogous
to SQL. Just as how SQL is used to manipulate data stored in an oracle server, DLI is
used to manipulate data stored in IMS/DB- Simple is'nt it?
IMS
Ims database has a hierarchical structure. They are normally stored in direct access
storage but under certain circumstances, sequential datasets can be used. Application
programs make calls to IMS to request data. IMS performs the actual manipulation of
data in the database.
An Example

Lets jump right into it…


The above database represents a hierarchical database containing information regarding
employee departments, their personal details and their official details.
First, u got to understand the nomenclature used !

 The segment is the smallest unit of data which is retrieved.


 The topmost segment is called the root segment. There can only be ONE root
segment in a database.

 A segment comprises fields


 Within a database, there is only one of each segment, but there can be unlimited
number of occurrences of each segment type.

 A record consists of a single occurrence fo the root segment plus all its dependent
segment occurrences. i.e. in the above figure, the official and personal details of
all the employees in one particular department constitutes ONE record

 A Key or Sequence field is a field within a segment selected to identify which


occurrence the segment is, i.e., it maintains the segments in ascending sequence.
Only a single field within each segment can be designated as a key or sequence
field.

 To search for a segment based on the contents of some field, but the segments not
be sequenced on that field, the field can be designated as a Search field

 The access of segments is always TOP to BOTTOM, LEFT to RIGHT, FRONT


to BACK.

I am sure, I have totally and thoroughly confused u!!! Please take a couple of aspirins, or
a jug of coffee,but make sure u get the above fundas cleared before proceeding.....
Once segments have been difined, the hierarchical structure decided upon, and key and
search fields chosen, the data base administrator communicates this information to IMS.
To do this, a control block called DATA BASE DESCRIPTION(DBD) is created. It
describes the physical nature of the database. A process called DBDGEN is used to create
the DBD.
The DBDGEN process
The DBDGEN process is as explained below for the sample employee database shown
above...
PRINT NOGEN
DBD NAME=EMPDBD, ACCESS=HIDAM
DATASETDD1=EMP,DEVICE=3350
SEGM NAME=EMPDEPT,PARENT=0,BYTES=128
FIELD NAME=(EMPNUM,SEQ,U),BYTES=6,START=1,TYPE=C
FIELD NAME=DEPTMNT,BYTES=6,START=7,TYPE=C
FIELD NAME=EMPNAME,BYTES=31,START=7,TYPE=C
FIELD NAME=EMPADD,BYTES=30,START=32,TYPE=C
SEGM NAME=EMPPERS,PARENT=EMPDEPT,BYTES=124
FIELD NAME=EMPAGE,BYTES=3,START=1,TYPE=N
FIELD NAME=MARSTAT,BYTES=1,START=4,TYPE=C
FIELD NAME=QUALIF,BYTES=10,START=5,TYPE=C
.....
.....
There are 2 levels in the hierarchy. The segments that are present are
· Department
· Employee personal Details
· Employee official Details

Note the following :-


1. In each department, there can be (will be) numerous employees. For each of these
employees, there will be both personal and official details.
2. The figure shown above illustrates the structure of 1 department. Similarly, each dept
may have a varying number of employees.
This tutorial is under construction. Please visit later for more info.

M.N. Shankaranarayanan
Senior Software Engineer , Satyam Computer Services Ltd.
e-mail : nshankar@hd2.dot.net.in

A queue as you must all have studied is a "first-in-first-out" structure as shown. A


transaction, defined very simply , is any unit of work. There exists a utility called
IMSGEN which maps the transaction names and the program names. An active
transaction causes the corresponding program to run.

Depending on the number of transactions in the DC region of the mainframe, multiple


queues may be present. Depending on the transaction code, the message is inserted into
the appropriate queue(and retrived upon request) by the queue manager. The queue
manager is responsible for maintaining the queue.

You might also like