What are storage attributes of records?
The following are the storage attributes of records:
Storage attributes of records
Length: Records can either be stored as fixed length or variable length
Fixed length: The whole record instance is persisted in a contiguous block of memory on the line
Variable length: The root part of the record is persisted on the current line. The remaining part of the record is persisted on some other part of the memory.
Distinguish among erase, erase permanent, erase selective and erase all?
Erase cancels the membership of a record in specific set occurrences and removes only the named record.
Erase permanent removes the specific record and all mandatory occurrences it owns. It disconnects all optional members.
Erase selective removes the record, all mandatory members and all optional members not connected to other sets. It disconnects those that are connected.
Erase all removes the specified record and all the mandatory and optional records it owns.
What is Auto status in IDMS?
Autostatus is a protocol mode which causes the expansion of each DML statement to include a ‘perform IDMS-Status’ statement.
What is the Difference between Fixed length and Variable length records?
Fixed length records access is faster
Variable length records maintain better utilization of space
What is currency in IDMS?
Currency is the location within the database during run-unit execution.
There are four levels of currency:
Record Currency – Most recent record occurrence of each record type is identified by db-key. IDMS/R maintains unique record currency for each record.
Set Currency – This is the most recent record occurrence of every set that is accessed by the program. Separate currency key for each set is maintained by IDMS/R.
Area Currency – Area currency is the most recent record occurrence of every area that is accessed by the program. Separate currency for each area is maintained by IDMS/R.
Run Unit Currency – RUC is the database key of the most recent record occurrence that is accessed by the program.
What is the purpose of a READY?
The READY prepares a database area for access by DML functions.
What are the uses of COMMIT and FINISH?
COMMIT:
- A CHECKPOINT is written to the Journal File.
- Releases record locks, if any.
FINISH:
- Releases the database resources that are active.
- Terminates all the processes of database.
- Writes statistical information to IDMS.
- Logs a CHECKPOINT.
What is a bind in IDMS?
A bind associates record types with the program work area; for run unit and records it is the first command issued in the program.
Explain about FIND and OBTAIN commands.
FIND:
- FIND command is a choice when the contents of the records are not needed.
- IDMS will not through the overhead of record contents movement occurrence into program storage area.
OBTAIN:
- Locating and accessing database records is done by OBTAIN command.
- When contents of the records are needed, do not use GET / FIND commands.
- Less verbiage is used by OBTAIN command.
What is a junction record in IDMS?
A junction record is a member record type that allows for many-to-many relationship between its two owner records.
What is an OOK-Rec in IDMS?
An OOK-Rec is a one of a kind record set, used to get to another record set.
What is a database?
Database is a collection of organized information.
Database models are of four types:
Flat files: The whole data is persisted in a series of files without controls and redundancy.
Hierarchical Database: The database architecture resembles a tree structure.
Network Database: The network database architecture resembles that of hierarchical database with some variations.
The main difference is that a relationship between two nodes at the same level, say F and G (siblings) can be established;
Relational Database: In relational database, the data is represented in the form of tables.
What is the difference between local and central version operating modes?
Local mode:
- A batch program, which is operates in local mode, has its own copy of IDMS DBMS loaded into its address space.
- It is suggested for Batch Retrieval programs.
- The operation of local mode is faster.
- When the records are updated, offline areas are taken. Other users have no access to the database even in retrieval mode.
- JCL can run in any of the regions.
Central Version:
- A single copy of IDMS DBMS will control various operations of a particular IDMS set application programs run unit.
- All COBOL/Online are to be used only Central Version.
- The operations of local mode is slow
- There is no need of taking offline area.
- Concurrent users can access the same area at a time.
- JCL mandatorily run in a particular region.
Name and explain the location modes?
calc:
- The values of any field of a record is converted into a combination of page no and line no.
- This process is implemented by means of a hashing algorithm.
- A record can be accessed directly.
via:
- The member is persisted near to the owner.
- The member can be accessed only by owner.
direct:
- The storage location is specified in the application program.
Explain about logical data model of IDMS
- The logical data model is the data model offered to CODASYL (Conference On Data System Languages).
- The prime structure of this model is records and sets.
- All the records essentially follow COBOL pattern, consisting of fields of different types, which allows internal structure, like repeating items and groups.
- The most distinctive structure is the ‘set’.
- The ‘set’ represents a one-to-many relationship among records – one owner and many members.
- A record can be a member in different sets, which is the key factor for distinguishing network model from hierarchical models.
- Each set belongs to a set identified by a name. Every set is an ordered sequence of records.
- A record is an owner and member of any number of sets.
- The database key is directly related to the physical address of the record on a disk.
- Records could be accessed directly by using database key, followed by set of relationships or by direct access using the key values.
What methods are available for persisting records in an IDMS database?
There are four methods are available for persisting records in an IDMS database.
Direct:
- The target is specified by the user and persists as close as possible to that page.
Sequential:
- The records are simply places each record at the end of the area.
Calc:
- A hashing algorithm is utilized for deciding the place of the record.
- The hash key provides an efficient retrieval of the records.
- The CALC records are linked to the page of CALC owner record by utilizing a single link-list.
Via:
- VIA attempts to store a record near its owner in a particular set.
- The records are clustered on the physical page as the owner
- The records are persisted in a different IDMS area, yet remain clustered together for efficiency.
Here are some scenario-based IDMS (Integrated Database Management System) interview questions along with their answers:
How would you retrieve a specific record from an IDMS database based on a given key?
 In IDMS, you can use the FIND statement to retrieve a record based on a given key. The FIND statement specifies the record type and the search arguments (key values) to locate the desired record. The retrieved record can then be processed further within the program.
Suppose you need to update multiple related records in an IDMS database. How would you ensure data integrity during the update process?
 IDMS provides support for batch updates through the use of the Program Controlled Recovery (PCR) mechanism. By defining a logical database area (LDB) and using the DB-ACCESS module, you can update multiple related records within a single logical unit of work. If any update fails, all the updates are rolled back, ensuring data integrity.
How can you optimize the performance of an IDMS program that frequently accesses a large database?
 To optimize performance in IDMS, you can consider the following techniques:
- Use the AREA clause to define selective retrieval areas to limit the amount of data accessed.
- Create indexes on frequently accessed fields to improve search performance.
- Utilize sorted key sequences for efficient retrieval of sorted data.
- Use caching techniques such as buffer pools to reduce disk I/O.
How would you handle referential integrity constraints between different IDMS databases?
 IDMS provides support for enforcing referential integrity through the use of relationships. By defining relationships between record types in different databases, you can enforce constraints such as parent-child relationships. When updating or deleting records, IDMS automatically checks and maintains referential integrity to ensure data consistency.
Suppose you need to extract data from an IDMS database and load it into a different database system. How would you accomplish this?
 In IDMS, you can use the Extract and Load utility (E&L) to extract data from an IDMS database and load it into another database system. The utility allows you to define extraction and mapping rules to transform and transfer the data between the two systems. It supports various data formats and can handle large volumes of data efficiently.
How can you handle concurrent access to an IDMS database by multiple programs?
 IDMS provides concurrency control mechanisms to handle concurrent access. Locking mechanisms such as record locks and database locks can be used to ensure data integrity and prevent conflicts. By acquiring appropriate locks during read and update operations, programs can control access to the database and avoid conflicts.
How would you handle the deletion of a record from an IDMS database that is referenced by other records?
 IDMS enforces referential integrity through relationships between record types. When deleting a record that is referenced by other records, IDMS automatically checks for referential constraints and prevents the deletion if it violates integrity. To delete such records, you need to first delete the referencing records or modify the relationships to allow deletion.
How can you ensure data security in an IDMS environment?
IDMS provides security features such as user authentication, access controls, and data encryption to ensure data security. By defining user profiles and granting appropriate privileges, you can control access to the IDMS system and databases. Additionally, you can use encryption techniques to protect sensitive data stored in the database.
Â