1 / 41

Introduction to CICS Transaction Server

Introduction to CICS Transaction Server. for OS/390 – Unit 3. Unit 3: CICS and databases. Topics: 3A. Types of databases Relational Hierarchical 3B. The CICS-DB2 interface 3C. Working with databases. Unit 3 overview.

coxdeborah
Download Presentation

Introduction to CICS Transaction Server

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Introduction to CICS Transaction Server for OS/390 – Unit 3

  2. Unit 3: CICS and databases Topics: • 3A. Types of databases Relational Hierarchical • 3B. The CICS-DB2 interface • 3C. Working with databases

  3. Unit 3 overview Databases are included as key resources for almost any mainframe business environment. All businesses use some type of database setup to store customer information or other types of important data that needs to be updated and retrieved easily. Today, large relational databases such as DB2 are used widely. However, hierarchical applications, used more frequently in the early days of mainframes, are still popular. (continued)

  4. Unit 3 overview This unit deals with databases and CICS interactions with them. Using a financial institution’s CICSPlex as a model, you will trace the path of a transaction from a remote terminal through CICS to an Information Management System (IMS) database.

  5. Unit 3 objectives Upon completing this unit, this is what you should be able to do: • Distinguish between a relational and a hierarchical database, and list the advantages of each • Explain how CICS supports and interacts with the two largest database products used: DB2 and IMS • Describe the functions and advantages of the CICS attachment facility for DB2 • Describe the typical CICSPlex setup, and how the various products interact to provide customer services in a modern banking model • Describe the path of a transaction from a remote terminal to a CICS-connected database • Describe the role that CICS plays in a typical bank transaction based on an IMS model

  6. 3A. CICS-supported databases The two most common types of databases are relational and hierarchical. CICS supports both types of databases, primarily through these IBM applications: • DB2, developed in the 1980s • IMS, used since the early 1970s

  7. 3A. CICS-supported databases The database application that a business selects depends directly on business needs. Although DB2 is widely popular in mainframe use, some businesses (financial institutions in particular) have found it expensive and difficult to adapt their existing data resources entirely to DB2. Therefore, IMS is still widely used in businesses that have need for a large and accessible database with well-defined structural and maintenance requirements.

  8. 3A1. Relational databases Relational databases are based on a model developed by an IBM researcher in 1970. In a relational database, data is structured into tables whose columns specify a particular data category.

  9. 3A1. Relational databases DB2 accesses data by referring to its content rather than its location or organization in storage. In this type of system, data can be accessed or viewed in many different ways without having to reorganize the database. Relational databases are the most common today, because they: • Are flexible • Are consistent • Offer data and application independence

  10. 3A1. Relational databases The DB2 family (DB2 for ESA, DB2 for VSE, DB2 for VM, DB2 for OS/390) includes the most common relational database products found in mainframe environments with CICS TS. CICS provides both attachment interfaces for DB2 and monitoring and control services. DB2’s data manager supplies interfaces and utilities that enable programmers to write data access commands in Structured Query Language (SQL) with the structure EXEC SQL. This style is very close to CICS’ EXEC CICS commands. DB2 programs can therefore be created and modified by programmers with CICS knowledge, and vice versa.

  11. 3A1. Relational databases In addition to the CICS EXEC / EXEC SQL similarity, CICS applications that can process DB2 tables can also access any SQL data manager and file control. That is, CICS applications can use SQL, and any SQL database manager can access CICS applications. This means that DB2 data can be accessed from a CICS TS for OS/390 environment.

  12. 3A2. Hierarchical databases Hierarchical databases are based on a parent-child relationship in data storage, much as the way a genealogical diagram traces backward to an original ancestor. Their greatest strength is their speed, especially for large data banks. However, programmers who maintain them must be very familiar with their structure, and they are much less flexible than relational databases.

  13. 3A2. Hierarchical databases Until recently, most of the world’s commercial information was stored on IMS structures. This means that the continued use of IMS is likely, considering the high costs and complexity of converting large data banks to a product like DB2. Database managers like IMS are particularly effective on CICSPlex systems where networks take transactions from many terminals or sources to the appropriate AORs in CICS.

  14. 3A2. Hierarchical databases The language used for data manipulation in IMS is Data Language I (DL/I). DL/I enables the definition of data structures and the relation of structures to applications, and the loading and reorganization of these structures. DL/I can enable application programs to retrieve, replace, delete and add segments to databases.

  15. 3A2. Hierarchical databases There are other important interfaces that are helpful when using IMS as a primary database structure. In many systems, CICS online programs interface with the IMS Database Control (DBCTL) facility.

  16. 3A2. Hierarchical databases IMS Resource Locks Management (IRLM), another interface, helps ensure efficient updates of a database without loss of data integrity. IRLM’s primary purpose is to hold locks on segments of the database that IMS/DBCTL is trying to update, thus ensuring that segments are not accessed until the update is complete. Database Recovery Control (DBRC) is an IMS facility containing information for database recovery. DBRC’s functions are: • Generate recovery control statements • Verify recovery input • Maintain a separate change log for database data sets • Support the sharing of an IMS DL/I database by multiple subsystems (including IMS or CICS regions) (continued)

  17. 3A2. Hierarchical databases Database resource adapter (DRA) is a component of the CICS/DBCTL interface in the CICS address space. It performs request, contact and other functions between CICS and DBCTL. Database-level sharing is an IMS data-sharing type which allows an application to read data in one region while another application reads or updates the same data in another region. In this data-sharing type, CICS can be designated an IMS region.

  18. 3B. Functions of CICS attachment facility CICS TS for OS/390 comes with an attachment facility that allows you to operate DB2 with CICS. Through this facility, CICS applications can access DB2 data while operating within the CICS TS for OS/390 environment. Thus, the CICS applications can access both DB2 and CICS data. CICS coordinates the recovery of both DB2 and CICS data if transaction or system failure occurs.

  19. 3B. Functions of CICS attachment facility The CICS DB2 attachment facility provides the following major functions: • An application program interface that allows you to operate DB2 with CICS • Attachment commands that display and control the status of the attachment facility

  20. 3B. Functions of CICS attachment facility Through the DB2 attachment facility API, the connection between CICS and DB2 can be created or terminated at any time. This connection and disconnection can be set up to occur automatically. You can also start and stop CICS and DB2 independently. The DB2 system can be shared by several CICS systems, but an individual CICS system can be connected to only a single DB2 system at a time.

  21. 3B. Using the CICS attachment facility The attachment commands that come with the CICS DB2 attachment facility are issued using the CICS-supplied DSNC transaction ID. The attachment commands include: • STRT – Start the connection to DB2 • STOP – Stop the connection to DB2 • DISP – Display the status of the connection to DB2 • MODI – Modify the characteristics of the connection to DB2 • DISC – Disconnect threads

  22. 3B. Using the CICS attachment facility CICS application programs make requests to DB2 in the form of Structured Query Language (SQL) statements. • When a CICS application issues an SQL request, the CICS resource manager processes the request and passes control to the CICS attachment facility.

  23. 3B. Using the CICS attachment facility 2) A transaction thread is scheduled by the attachment facility. 3) DB2 checks the authorization for the request and creates control blocks for it. 4) When the SQL request has been completed, DB2 passes data back to the CICS attachment facility, and the CICS application program regains control.

  24. 3B. Using the CICS attachment facility You can use RDO to declare a particular DB2 database available to your CICS TS system. Defining database resources online means that you do not have to shut down the CICS-DB2 attachment facility in order to make changes to CICS-DB2 resources. This allows continuous availability for both systems.

  25. 3B. Using the CICS attachment facility Using RDO to define DB2 resources as CICS-managed resources also has the advantage of providing a consistent end-user interface. This means that users can use familiar CICS transaction identifiers to perform tasks such as installing and manipulating database entries.

  26. 3C. Architecture example overview In order to get a good understanding of the respective roles played by CICS and a database system, it helps to look at an example of a transaction processing setup. In our example, 1st Bank is a midsize financial institution that has two clusters of OS/390 systems, each with two MVS system images. Within the MVS images there are multiple CICS and IMS regions. The OS/390 clusters are located in different cites that are miles apart.

  27. 3C. Architecture example overview

  28. 3C. Architecture example overview CICS receives transactions and communicates with other regions through Virtual Telecommunications Access Method (VTAM). VTAM is an IBM API that is used for communicating with telecommunication devices. The systems in our example are connected to remote locations and to each other through a network. Each system also has VTAM connections in place for each MVS image accessed from the network via network control program (NCP).

  29. 3C. Architecture example overview NCPs are key for routing communication as they manage the communication traffic between terminals and CICS. NCPs also route information between the VTAM-serviced OS/390 images and connected CICS regions using ISC (intersystem communication).

  30. 3C. Transaction initiation A customer goes to an ATM and inserts a bankcard. The ATM requests the PIN number and other information needed for the transaction. The customer enters the information at the PIN pad (1). The information is routed to the remote NCP (2), which in turn takes it through the network to the mainframe switch and then to the system NCPs (3), which are tied to miniprocessors.

  31. 3C. Transaction initiation The system NCP interfaces with VTAM, which is tied to all applications on the mainframe. VTAM recognizes the transaction header and routes it through the security translator application. Every remote terminal, such as an ATM, is defined as a resource in a CICS TOR. VTAM establishes a session with the TOR where the initiating remote terminal is defined. CICS then takes over the transaction routing. Throughout processing, CICS will invoke VTAM again if any cross- region communication is needed. Each CICS system has a TOR with a CSD file where all resources are defined, including remote terminals such as ATMs.

  32. 3C. Transaction initiation After VTAM establishes a session with the CICS TOR, CICS gives the transaction a name and sends it back through VTAM to the appropriate AOR, which might or might not be in the same CICS system. After CICS determines the source of the transaction and names it, the application required for processing the transaction is located by the AOR.

  33. 3C. Transaction initiation The AOR also initiates updates by scheduling a program specification block (PSB). The PSB is sent by CICS to IMS, where it is accepted by DBCTL. The DBCTL controls the different functions involved in the database update.

  34. 3C. Transaction initiation Like CICS, IMS/DBCTL can be split into regions, which improves speed and efficiency in updating and accessing data. A multiregion setup consists of these four regions: • Control region, which performs the DBCTL functions contained in the other regions.

  35. 3C. Transaction initiation • DL/I region, which actually carries out the update. It contains the DL/I code, control blocks and buffers for IMS databases, and performs the accessing and updating of data through DL/I calls. • DBRC region, which is where logging and recovery information is kept in case there are problems with the update. • IRLM region, which functions as a gatekeeper during the actual database update executed by DBCTL, preventing any accessing of the database segments being used by the update.

  36. 3C. Transaction completion Once DBCTL receives the transaction request, it executes the transaction, retrieves the database segment information and sends the information back to CICS. If there are any problems at the database level, they will be logged by the DBCTL region containing DBRC, which can then be accessed by CICS in problem determination. The IRLM prevents any corruption by other transactions requesting the same database segment as the update. The DL/I region runs and receives back the completed program to pass on to the DBCTL control region.

  37. 3C. Transaction completion Now the transaction path reverses itself. The completed update is sent back to the CICS AOR, where it is acknowledged and renamed. The transaction is then sent on to the original receiving AOR, retracing its path. The receiving AOR records the transaction name, logs its completion level and sends the information on to CICS TOR.

  38. 3C. Transaction completion A VTAM session is once again initiated, this time from the CICS side. VTAM takes over the transaction routing, through the security translation application and out to the system NCP and miniprocessors. The transaction is then sent out over the network to the remote NCP and from there to the ATM, where the customer is waiting. The ATM then issues the requested service, such as a cash withdrawal or bank balance, to the waiting customer.

  39. 3C. Transaction summary The role of CICS in this complex transaction can be summarized as follows: • CICS resource definition allows VTAM to establish a successful session with CICS TOR. • The interregion interface between CICS TOR and AORs allows CICS to recognize, name and pass the transaction to the appropriate region where IMS programs are located.

  40. 3C. Transaction summary • The CICS/IMS interface, involving CICS resource definition, resident utilities and commands, allows efficient handling of the transaction both going and coming from IMS/DBCTL. • The CICS information logged during the inward-bound path of the transaction facilitates the outward handling to VTAM and from there to the originating remote terminal (ATM).

  41. Unit 3 summary This is what you learned in this unit: • CICS supports both relational and hierarchical database structures. • Relational databases, such as DB2, structure data in terms of tables containing predefined data categories. • Hierarchical databases, such as IMS, structure data in a hierarchy where data lower in the hierarchy is dependent upon data higher in the hierarchy. • CICS receives transactions and communicates with other regions through VTAM. • IMS/DBCTL, an important interface between CICS and IMS databases, is often structured into several different regions, including a control region, a DL/I region, a DBRC region and an IRLM region.

More Related