Upload
ibm-ims
View
147
Download
4
Embed Size (px)
Citation preview
© 2014 IBM Corporation© 2012 IBM Corporation
IMS Version 15
© 2017 IBM Corporation
IMS 15 Systems Enhancements
IMS Version 14 IMS Version 15
Systems: 343
IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice at IBM’s sole discretion. Information regarding potential future products is intended to outline our general product direction and it should not be relied on in making a purchasing decision. The information mentioned regarding potential future products is not a commitment, promise, or legal obligation to deliver any material, code or functionality. Information about potential future products may not be incorporated into any contract. The development, release, and timing of any future features or functionality described
for our products remains at our sole discretion.
IBM, the IBM logo, ibm.com, z Systems, IMS, and z/OS are trademarks or registered trademarks of International Business
Machines Corporation in the United States, other countries, or both. If these and other IBM trademarked terms are marked
on their first occurrence in this information with a trademark symbol (® or ™), these symbols indicate U.S. registered or
common law trademarks owned by IBM at the time this information was published. Such trademarks may also be
registered or common law trademarks in other countries. A current list of IBM trademarks is available on the Web at
“Copyright and trademark information” at www.ibm.com/legal/copytrade.shtml
Other company, product, or service names may be trademarks or service marks of others.
THE INFORMATION CONTAINED IN THIS PRESENTATION IS PROVIDED FOR INFORMATIONAL PURPOSES ONLY.
WHILE EFFORTS WERE MADE TO VERIFY THE COMPLETENESS AND ACCURACY OF THE INFORMATION
CONTAINED IN THIS PRESENTATION, IT IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED. IN ADDITION, THIS INFORMATION IS BASED ON IBM’S CURRENT PRODUCT PLANS AND STRATEGY,
WHICH ARE SUBJECT TO CHANGE BY IBM WITHOUT NOTICE. IBM SHALL NOT BE RESPONSIBLE FOR ANY
DAMAGES ARISING OUT OF THE USE OF, OR OTHERWISE RELATED TO, THIS PRESENTATION OR ANY OTHER
DOCUMENTATION. NOTHING CONTAINED IN THIS PRESENTATION IS INTENDED TO, NOR SHALL HAVE THE
EFFECT OF, CREATING ANY WARRANTIES OR REPRESENTATIONS FROM IBM (OR ITS SUPPLIERS OR
LICENSORS), OR ALTERING THE TERMS AND CONDITIONS OF ANY AGREEMENT OR LICENSE GOVERNING THE
USE OF IBM PRODUCTS OR SOFTWARE.
© Copyright International Business Machines Corporation 2017. All rights reserved.
U.S. Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with
IBM Corp.
Trademarks, copyrights, and disclaimers
IMS Version 14 IMS Version 15
Systems:
Topics
CQS Automatic Structure Checkpoint
CQS Unique Return Code for z/OS Logger Write Errors
Reduce IMS Sysgen
VSAM VATVPTR Clearing
Enhanced Error Handling for OLC
Enhanced DFSQUEI0 AOI Exit Interface
Eliminate need to calculate CNBA for DRA
Minimum thread specification for ODBM
IMS ESS (External Subsystem) Enhancements
Logger Media Manager Support
344
IMS Version 14 IMS Version 15
Systems:
CQS Automatic Structure Checkpoint
CQS takes a structure checkpoint based on log record volume
– When specified number of log records are written to the structure, CQS
internally triggers a structure checkpoint
This new automatic structure checkpoint option is in addition to any
existing automation processes designed to take a structure checkpoint
CQS structure checkpoints may still be taken using IMS commands
345
>>-STRUCTURE(STRNAME=name,CHKPTDSN=name-
'-,BATCHDEL=YES-'+------------------+-+---------------+-+------------------+)-><
'-,SYSCHKPT=number-' '-,BATCHDEL=NO--' '-,STRCHKPT=number-'
/CQCHKPT SHAREDQ
And via Type2 command
CQSCHKPT FUNC=CHKPTSTR CQS
IMS Version 14 IMS Version 15
Systems: 346
CQS Automatic Structure Checkpoint - User Exits
The current Structure Event User Exit is called to notify users of structure
event processing (such as an automatic structure checkpoint)
The Structure Statistics User Exit allows users to gather structure related
statistics
– The existing structure checkpoint statistics, mapped by DSECT CQSSSTT7, will
contain new field SS7LGCT1 containing the current log record count
– The value is updated at every structure checkpoint
The new SS7LGCT1 statistic field is added to the end of the current
Structure checkpoint statistics table:
– Structure checkpoint statistics entry
Field name Offset Length Field usage Description---------- ------ ------ ----------- -------------------------------------. . .SS7WRTS X'5C' X'04' Input Number of SRDS writes requiredSS7LGCT1 (new) X'60' X'04' Input Number of current log records written
IMS Version 14 IMS Version 15
Systems: 347
CQS Automatic Structure Checkpoint Log Records –CQS Structure Statistics
Existing log record X‘6001’, CQS Structure Statistics, contains
the new field “SS7LGCT1”
– Holds the number of log records that has currently been written in
the structure checkpoint statistics
DFSERA10, with exit CQSERA30, can be used to format the
x’6001’ log record structure statistics in the log stream
SYSLOG.MSGQ01.LOG
IMS Version 14 IMS Version 15
Systems:
Challenge
– Some z/OS logger write related errors return a generic return code
– The z/OS logger related issues may not be singled out for handling
separately and this could lead to a system outage
Solution
– Create new unique return and completion codes for the z/OS logger
write related errors
– New unique CQS-to-clients feedback for the z/OS logger write related
errors
Benefit
– Serviceability
• Eases problem determination and speeds problem analysis
CQS Unique Return Code for z/OS Logger Write Errors
348
IMS Version 14 IMS Version 15
Systems:
CQS Shared Queues Logger Error Return
IMS CQS
Write dataAPI Request
Log data
IMS
QMGR
z/OS
LOGGER
Structure
Shared
queues
LOG Write ErrorLOG Write Error
1
2
3
349
CQSPUT , CQSREAD , and CQSMOVE requests can receive new reason codes.
CQSUNLCK and CQSCHKPT requests can receive new completion codes.
IMS Version 14 IMS Version 15
Systems:
Reduce IMS Sysgen
Eases provision of an IMS System
– Remove building of sample PROCs from system generation
• now built during SMP/E processing and placed in the new
ADFSPROC and SDFSPROC library data sets.
– Eliminate the IMS.OPTIONS dataset
– Eliminate BUFPOOLS macro
• Specify in DFSPBxxx or use IMS Default values
– Eliminate IMSCTF Macro
– Remove user exits from system generation and the NUCLEUS
Continue long-term goal of eliminating IMS system definition and
generation
Business Value
– Simplifies IMS
350
IMS Version 14 IMS Version 15
Systems:
Solution Highlights
IMSCTF Support:
– IMSCTF macro is ignored during Stage 1 System Definition
• Message G122 issued as an MNOTE 2 if IMSCTF is specified
– CPLOG must now be specified in DFSPBxxx/JCL
– LOG is obsolete
• DUAL/MONITOR DD statements available in new
SDFSPROC/ADFSPROC libraries
– PRDR must now be specified in DFSPBxxx/JCL
– RDS must now be specified in DFSPBxxx/JCL
– SVC2 and SVC4 must now be specified in DFSIDEF0
• Enhanced to support SVC specifications
• DFSIDEF0 loaded in all environments in 15, was only processed by Batch
in 14
351
IMS Version 14 IMS Version 15
Systems:
VSAM VATVPTR Clearing
IMS 13 and 14, and prior releases, clear the VSAM control block pointer
VATVPTR by default during IMS batch (DFSRRC00) initialization
– This can cause DBRC errors in JOBs that access the RECONs and then
attach an IMS batch program
APARs PI48618 (V14), PI47278 (V13), and PI47270 (V12), provide a way for
programs to tell IMS NOT to clear the field
IMS 15, the default has been changed:
– IMS will not clear VATVPTR at startup by default
– Products which require VATVPTR to be cleared (eg. test tools) must use the
interface employed by the above APARs to tell IMS to clear the field
This primarily affects vendor test/debug tools that can attach multiple batch jobs
in an address space
352
IMS Version 14 IMS Version 15
Systems:
Enhanced Error Handling for OLC
Online Change enhancement for FMTLIB user error handling
– Addresses ABENDU904 by rejecting the command with an error indicator
• Local OLC: /MODIFY COMMIT
– New message - DFS4596E OLC COMMIT REJECTED. INVALID MEMBER IN
FMTLIB ddname -nn fmtname
Note: first 2 characters of fmtname are in hex and may not be the same as
what is shown when browsing the dataset in TSO
• Global OLC: INITIATE OLC PHASE(COMMIT) TYPE(FMTLIB)
– New completion code – CC=80 Dataset error
– User response
• Delete the invalid member from the FMTLIB dataset and retry the
command or abort the online change
Benefit
– Prevention of an IMS Abend U094
353
IMS Version 14 IMS Version 15
Systems:
Enhanced DFSQUEI0 AOI Exit Interface
The DFSAOUE0 AOI Exit Interface module, DFSQUEI0, has been
modified to obtain storage from the AOIP pool instead of the CIOP
– The UEHB and any additional buffers passed to the DFSAOUE0 exit are now
obtained from 31-bit storage
– If storage cannot be obtained from the AOIP pool, the new DFS3458
message will be issued
• DFS3458 INSUFFICIENT STORAGE AVAILABLE IN AOIP POOL
– The DFSAOUE0 AOI Exit Interface module, DFSQUEI0, was called to pass a
command to the type-1 AO user exit (DFSAOUE0). DFSQUEI0 failed to obtain
storage from the Automated Operator Interface (AOI) Pool
Benefit
– More efficient use of storage
354
IMS Version 14 IMS Version 15
Systems:
Eliminate need to calculate CNBA for DRA
DRA Runtime
– CCTL (CICS) environments accessing IMS FP databases
– ODBM RRS=N environments accessing IMS FP databases
Current
– The current restriction of 9999 CNBA buffers for CCTLs can limit the number of parallel
DRA Threads that can be allowed for that CCTL.
Solution
– IMS will calculate the total number of FP buffers (CNBA) to allocate for a CCTL (CICS)
or ODBM RRS=N connecting to IMS
– Dynamically expand FP buffers assigned to a CCTL when using 64 bit FP buffer
manager
– Allow the CNBA= parameter to be specified as 0 when FPBUF= and FPBOF= are non-
zero.
• IMS can calculate and can grow each thread up to FPBUF max.
Benefit
– With 64-bit FP buffer support, the CNBA limitation is not needed; allowing more buffers
allows for more scalability for CCTL usage
– Increase scalability for Open Database
355
IMS Version 14 IMS Version 15
Systems: 356
DFSPRP MacroCCTL(DFSPZPxx)/ODBA(DFSxxxx0)
//DFSIVP10 EXEC PROC=ASMDRA,MBR=DFSIMSP0
//ASM.SYSIN DD *
DFSIMSP0 CSECT
DFSPRP DSECT=NO,
CNBA=0|NNNN Total Fast Path NBA buffers for CCTL/ODBA use
DBCTLID= IMSID default SYS1
DDNAME= ddname default CCTLDD
DSNAME= data set name default IMS.SDFSRESL
FPBOF=NNNN Fast Path DEDB overflow buffers default 00
FPBUF=NNNN Fast Path DEDB buffers default 00
FUNCLV= CCTL/ODBA DRA level. Use default
GENSNAP= SNAP output in DFSPAT20 default YES
IDRETRY= IDENTIFY to IMS retry default 0
IMSPLEX= ODBA routes calls to the ODBM address space
MAXTHRD= DRA MAX threads max 4095 default 1
MINTHRD= DRA MIN threads max 4095 default 1
ODBMNAME= ODBM name ODBA interface routes ODBA calls
OPENTHRD= DRA Open Thread support DISABLE is default
SOD= SNAP DUMP output class default is A
TIMEOUT= Time CCTL waits completion of DRA TERM
TIMER= time between attempts DRA identify to IMS
TIMETHREADCPU= DRA CPU usage statistics DRA Open Thread
USERID= Name of the CCTL region
END
//*
IMS Version 14 IMS Version 15
Systems: 357
ODBM Configuration Member CSLDCxxx
• FPBUF=0 | nnnn
– Number of Fast Path DEDB buffers allocated and fixed per thread
– Maximum is 9999
• FPBOF=0 | nnnn
– Number of Fast Path DEDB overflow buffers allocated per thread
– Maximum is 9999
• CNBA=0 | nnnn
– Total Number of Fast Path NBA buffers for ODBM's use
– Range 1K-32K
– Maximum is 9999
<SECTION=GLOBAL_DATASTORE_CONFIGURATION>
IMS Version 14 IMS Version 15
Systems:
Minimum thread specification for ODBM
Challenge
– ODBM calculates minimum thread value does not allow tuning
Solution
– IMS APAR PI64152 New ODBM MINTHRDS parameter
Business Value
– Provides ability to balance the competing performance factors of having
excessive
• thread creation and termination processes due to a too low value minimum
value
• control blocks allocated for open threads due to a too high minimum value
Target Market:
All IMS ODBM
IMS Version 14 IMS Version 15
Systems:
IMS ESS (External Subsystem) Enhancements
Challenge
– ESAF SIGNON ACEE Performance
– ESAF Connection Thread pooling
– ESAF Db2 JCC statement caching
Solution
– IMS APAR PI64496 ESAF SIGNON ACEE Performance Enhancement
• IMS creates the ACEE only once for the ESAF thread commit cycle and
passes the ACEE to the ESS through the Signon exit routine
– ESAF Connection Thread pooling - IMS Associate Thread Exit
• Db2 utilizes ESAF Associate thread exit support
– IMS APAR PI60400 ESAF Db2 JCC statement caching
• Db2 JCC utilizes ESAF Connection Thread Pooling
Business Value
– Reduce performance impact ESS creating/ACEE for every ESAF Call
– Improve efficiency of connection thread management
– Improve runtime efficiency of dynamic prepared SQL statements
Target Market:
All IMS External Subsystem
users
IMS Version 14 IMS Version 15
Systems: 360
ESAF SIGNON ACEE PERFORMANCE ENHANCEMENT FOR PERSISTENT JVM MPP, IFP, BMP, JMP, JBP Regions
Performance impact ESS creating/ACEE for every ESAF call when
needed.
An option has been added to the ENVIRON= member called
– ESAF_SIGNON_ACEE=YES | NO. The default is NO.
• External Subsystem create/manage the ACEE for every ESAF call
– ESAF_SIGNON_ACEE=YES is specified,
• IMS will create/manage the ACEE in a persistent JVM dependent region
• Mutually exclusive with OTMA FULL
New ACEE address parm to the ESAF Signon exit parm list
New DFS549I message indicate function enabled for dependent region
– DFS549I ESAF SIGNON ACEE ENABLED
Note:
– ESAF_SIGNON_ACEE=YES overrides the DFSBSEX0 exitmanaging the
IMS Version 14 IMS Version 15
Systems:
ESAF Db2 Connection Thread pooling
ESAF Associate thread exit support delivered in IMS 14
Db2 delivered ESAF support DSNMIN20
– APARs PI41599, PI41600 and PI41601
Support connection thread pooling utilizing ESAF Associate thread exit
Max 50 connection thread pool entries
Each pool entry is keyed off of a Db2 plan name plus the active user
name
Default Db2 plan name is IMS application program load
module name
Db2 with DSNMIN10 supports only one to one connection
IMS Version 14 IMS Version 15
Systems: 362
ESAF Db2 Connection Thread pooling
POOL 1-50 Entries
Thread 1
UID1PGM1
Thread 2
UID3PGM3
Transaction 1
UID1
Schedule
PGM 1
Associate
Thread
Exit (pooling)
Dependent Region
StartESAF identify
ESAF Sign-on
User ID 1
ESAF Create
ThreadApplication
Processing
Application
Termination
and ESAF
Terminate
Thread
Transaction 1
UID1Schedule
PGM 1
Associate
Thread
Exit (pooling)
ESAF Sign-on
User ID 1ESAF Create
Thread
( Uses Thread 1 )
Application
Processing
DB2 puts in
thread pool
(eg:Thread 1
UID1/PGM1)
Transaction 3
UID3
Application
ProcessingESAF Sign-on
User ID 3
Associate
Thread
Exit (pooling)
Schedule
PGM 3
ESAF Create
Thread
(New Thread 2)
Application
Termination
and ESAF
Terminate
Thread
DB2 puts in
thread pool
(eg: Thread 2
UID3/PGM3)
CTHREAD and MAXDBAT values set in Db2 ZPARM
IMS ESAF SSM SST=DB2,SSN=GRP1,LIT=SYS1,ESMT=DSNMIN20,REO=R,CRC=-
IMS Version 14 IMS Version 15
Systems:
Db2 JCC Statement Caching
Runtime
– IMS 14/15 persistent JVM MPP, IFP,BMP regions with Db2 JCC
• JMP and JBP not supported
Current
– Db2 JCC dynamically prepared SQL statements are not cached causing
additional CPU utilization to re-prepare them in each transaction.
Solution
– Enable Db2 JCC statement caching
• JCC prepared statements cache will associate SQL entries in the pool with
the received ESAF thread token
Benefit
– Improve runtime efficiency of dynamic prepared SQL statements
363
IMS Version 14 IMS Version 15
Systems:
Setup
MPP,IFP,BMP where JVM is launched
Configure IMS SSM member
SST=DB2,SSN=GRP1,LIT=SYS1,ESMT=DSNMIN20,REO=R,CRC=-
Configure IMS DFSJVMEV(ENVIRON=) member
DB2JCC_ESAF_THREAD_NOTIFICATION= YES | NO
NO is default Note: DB2JCC_ESAF_THREAD_NOTIFICATION=YES is MANDATORY
When application issues JCC calls
DB2 IMS attachment thread pooling is enabled
Set “KEEPDYNAMIC ” to YES
property in com.ibm.db2.jcc.DB2BaseDataSource
Set “maxStatements” > 0
property in com.ibm.db2.jcc.DB2BaseDataSource
maxStatements default is 0 pooling is disabled
Db2 JCC Statement Caching
364
IMS Version 14 IMS Version 15
Systems: 365
Logger Media Manager Support
IMS Version 14 IMS Version 15
Systems:
Logger Parms Moved to DFSDFxxx
In IMS 15, the IMS Logger parameters are consolidated in DFSDFxxx
– In a new <SECTION=LOGGER>
– Optional enablement of zHyperWrite support for both WADS and OLDS
– The DFSDFxxx member of PROCLIB is now mandatory
– Having all the Logger parms in one location will simplify the IMS definition
process
– Continuous Delivery: To increase IMS system availability, the zHyperWrite
parameters will be modifiable using an IMS type-2 command
– IMS 15 is the first IMS release where the DFSDFxxx member of the
PROCLIB data set is mandatory.
366
IMS Version 14 IMS Version 15
Systems:
Logger’s Use of MM for Writing to the WADS
IMS 15 Logger will use DFSMS Media Manager for all WADS I/O
– Logger’s use of Media Manager for WADS I/O is not optional
– WADS data sets must be defined as VSAM Linear Data Sets
– DFSMS Media Manager is a no-charge feature
– Media Manager leverages zHyperWrite to reduce replication latency
– Media Manager uses zSystem High Performance FICON (zHPF) to
increase Logger throughput, when available
IMS Logger processing can run faster and consumes fewer resources
Exploiting hardware features zHPF and zHyperWrite can increase
IMS throughput by reducing WADS replication latency and overall
WADS I/O time
– Customers who experience replication problems when mirroring WADS
data sets will benefit most, but all customers can benefit
367
IMS Version 14 IMS Version 15
Systems:
IMS Logging in IMS 15
368
(VSAM LDS)
IMS 15 Requires that the WADS be defined as a VSAM Linear Data Sets
IMS Version 14 IMS Version 15
Systems:
OLDS use of zHyperWrite
– OLDS must be extended format data sets
• OLDS are already extended format if above-the-bar storage is
being used for the LOG buffers
• BUFSTOR=64 parameter of OLDSDEF statement
369
IMS Version 14 IMS Version 15
Systems:
Logger’s Exploitation of Hardware Features
Logger’s use of Media Manager positions IMS to exploit newer
hardware features
– zHyperWrite – part of the zSystem I/O Supervisor
• Can reduce replication latency in HyperSwap-Managed metro
mirror environments
– zHPF - High Performance FICON for System z
• Increases I/O throughput, when accessing data on IBM DS8000
family storage
Media Manager’s interface is much more user-friendly than typical
channel programming
370