Professional Documents
Culture Documents
CICS VT V1 - 2 Presentation
CICS VT V1 - 2 Presentation
CICS VT V1 - 2 Presentation
Satish Tanna
Satish_Tanna@uk.ibm.com
Product highlights
Components
Performance enhancements
Before CICS VT
VSAM
File #1
Application
Program
VSAM
File #2
C
I
VSAM
Application C
File #1
Program S
V
T
VSAM
File #2
Mapping component
Establishes relationship between VSAM record layout and
DB2 row
Testing component
Enables application programs to be tested following data
migration
One time activity for each data set and alternate index
VSAM RUN-TIME
DRIVERS
COPYBOOK or DSECT
CREATE TABLE VSAM_TAB (
TAB_KEY DEC(5, 0)
,ORDER_NO CHAR(3)
01 VSAM-file. ,ORDER_TYPE INTEGER
02 file-key pic 9999 ,NEXT_FIELD DEC(3,0)
02 group-field. PRIMARY KEY(TAB_KEY))
03 order-number pic x(3)
03 order-type pic s9(8) comp
02 next-field pic s999 comp-3
………
………
01 ITEM-DET.
02 ITEM-NUMBER PIC X(6).
02 ITEM-NAME PIC X(12).
02 ITEM-DESC.
03 ITEM-COLOUR PIC X(6).
03 ITEM-WEIGHT PIC X(4).
03 ITEM-COST PIC S99999V99 COMP-3.
02 ITEM-REORDER-QUANTITY PIC S999.
02 ITEM-SUPPLIER-CODE PIC X(3).
02 ITEM-DATE-FIRST-SHIP PIC S9(9) COMP-3.
02 ITEM-SHELF-LIFE PIC X(2).
02 ITEM-DESCRIPTION PIC X(35) .
Manual Mapping
Automated Mapping
Must be RECFM=FB
LRECL = longest record length plus 8 bytes for KSDS and 12
bytes for RRDS
Must be RECFM=FB
LRECL=length of longest DB2 record
CICS VT invoked to perform data re-engineering
IRD exit must set table indicator in first 2 bytes of output record
KEY
0001000013
0101000013DATA1000000000000041DATA1000000000000042DATA1000000000000043
0002000020
0202000020DATA20000000011DATA20000000012DATA10000000013DATA20000000014
0002000021
0202000021DATA20000000021DATA20000000022DATA10000000023DATA20000000024
0002000022
0202000022DATA20000000031DATA20000000032DATA10000000033DATA20000000034
0003000030
0303000030DATA30000011DATA30000012DATA30000013DATA30000014DATA30000015
0003000031
0303000031DATA30000021DATA30000022DATA30000023DATA30000024DATA30000025
Invalid data
CICS VT V1.1
User runs VIDUNLOD against the migrated data in DB2
Compares unload data sets from VSAM and DB2
CICS VT V1.2:
User runs VIDUNLOD enabled for DMF
CICS VT automatically compares data
New file definition for VSAM data set must be added to CICS
File name is derived from original file name
Two new DMF parameters in the VT data set table (DST)
DMF is activated/deactivated with new VT transaction VTMA
VTMA STATUS
VTMA START
VTMA STOP
VTMA RESTART
CEMT I FI(*)
STATUS: RESULTS - OVERTYPE TO MODIFY
Fil(VIDKSDS ) Vsa Ope Ena Rea Upd Add Bro Del Sha
Dsn( VID.VIDKSDS.DUMMY )
Fil(VIDKSDS@) Vsa Ope Ena Rea Upd Add Bro Del Sha
Dsn( VID.VIDKSDS )
Fil(ORDERFIL) Vsa Ope Ena Rea Upd Add Bro Del Sha
Dsn( VID.ORDERFIL.DUMMY )
Fil(@RDERFIL Vsa Clo Ena Rea Upd Add Bro Del Sha
Dsn( VID.ORDERFIL )
Fil(VIDRRDS) Vsa Ope Ena Rea Upd Add Bro Del Sha
Dsn( VID.VIDRRDS.DUMMY )
*********************************************************************
* CICS VT COMPARE EXCEPTION *
*********************************************************************
TRAN: K1P2 DIM: KSDS01 TERMINAL: 0019 TIME:15.31.3300 REQ:0000009
ANALYSIS
MIGRATE
TEST
CUTOVER
Data inconsistencies
© IBM Corporation 2007 IBM European WebSphere Technical Conference
RUN-TIME COMPONENT
CICS
VT DB2
TRUE
C
I
CICS
Application C
VT
Program S
GLUE
V
T VSAM
VTMI RESTART
V1.1 drivers are not compatible with V1.2 and vice versa
Must be re-generated
Before:
//ORDERFL DD DSN=ORDER.VSAM.DATASET,DISP=SHR
//ORDERFL1 DD DSN=ORDER.VSAM.AIX,DISP=SHR
After:
//ORDERFL DD SUBSYS=(VIDS,ssid,DIM-name)
//ORDERFL1 DD SUBSYS=(VIDS,ssid,DIM-name)
Before:
//ORDERFL DD DSN=ORDER.VSAM.DATASET,DISP=SHR
After:
//ORDERFL DD SUBSYS=(VIDS,ssid,DIM-name)
//ORDERFL@ DD DSN=ORDER.DUMMY.VSAM.DATASET,DISP=SHR
Previously, DB2 plan name had to match DIM name. The same
plan/package attributes applied to every application program
accessing a migrated file
Before PK14457:
After PK14457:
//ORDERFL DD SUBSYS=(VIDS,ssid,DIM-name)
//VIDPLAN DD *
any_plan
VSAM1 is updated
VSAM2 is read only but cannot access uncommitted updates
VSAM3 is read only and can access uncommitted updates
UPDATE-KSDS-01.
MOVE WS-ITEM-QUANTITY TO ITEM-QUANTITY .
MOVE WS-ITEM-NUMBER TO ITEM-NUMBER .
REWRITE ITEM-DET. CICS VT migrated data set
UPDATE-DB2TAB.
EXEC SQL
UPDATE ORDER_TAB SET ORDER_DATE = CURRENT DATE
COMMIT
END-EXEC.
Without subtasking:
With subtasking:
After:
//ORDERFL DD SUBSYS=(VIDS,ssid,DIM-name)
//ORDERFL@ DD DSN=ORDER.DUMMY.VSAM.DATASET,DISP=SHR
//VIDSUBSW DD DUMMY
CUTOVER
Assume there are 4 2-byte copybook fields for CC, YY, MM and DD
to be migrated to a single DATE column in DB2
DB2 V7.1