Logger log stream supersized structure suggestion to IMS CQS
Zhaoyu 120000FVH1 Visits (2203)
The objective of this is to exploit IMS CQS and log stream primary storage usag
The system logger and IMS CQS (Common Queue Services) teams provided tuning advice to support an IMS CQS client to facilitate the use of a very large CF list structure (order of magnitude in gigabytes vs. megabytes). The use of a supersized structure is intended to help minimize the likelihood of log stream offload delays impacting an exploiter that writes log data into the log stream.
This approach involves configuration changes to the IMS CQS and logger environment to provide a larger CF log stream structure which can hold at least 2 IMS checkpoints’ worth of log data within the logger offload threshold, to minimize (and in most cases, eliminate) the need to move data to DASD during “normal” processing. Logger's log stream offload processing can physically delete unneeded log data from the CF log stream structure, but does not need to do any I/O to DASD offload datasets. The detailed setting is:
Structure SIZE = (2 IMS Check Points of Data + Safety Zone + 2 minutes of data + Reaction Time Data)
- 2 IMS Check Points of Data = 2 * Amount of Data Written in One Minute * # minutes between structure checkpoints
- Safety Zone = 20% of the 2 IMS Check Points of Data
- Reaction Time Data = (Minutes Of Reaction Time Desired+1) * data written in a minute
INITSIZE and MINSIZE - do not code these options.
FULLTHRESHOLD = (100 - HIGHOFFLOAD) / 3 + HIGHOFFLOAD
ALLOWAUTOALT(NO) - typically CF structures used for log streams have this specification.
STG_DUPLEX(NO) - Stipulated that the "super-sized" structure works if and only if the staging dataset was not being used due to the staging data set size limitations
RETPD = 0 (default)
HIGHOFFLOAD = (2 IMS Check Points of Data + Safety Zone + 2 minutes of data) / (Total Structure Size)
LOWOFFLOAD = (2 IMS Check Points of Data + Safety Zone) / (Total Structure Size)
If log stream offload processing must performed DASD I/O to move data to offload data sets, the following attributes will assist with performance:
LS_DATACLAS - 24K CIsize and striping
LS_STORCLAS - striping
Following is what we did in z/OS Integration Test environment to eliminate/minimize IMS CQS structure offload I/O. Additional details on this sort of configuration can be found in z/OS Setting up a Sysplex, section "Managing log data in interim storage to minimize movement to DASD".
1. Check the IMS CQS structure CQS_FF_LOGSTR definition and it is 25G as below:
J80 2013222 05:36:55.37 -D XCF,
J80 2013222 05:36:55.81 IXC360I 05.36.55 DISPLAY XCF 038
EVENT MANAGEMENT: MESS
POLICY SIZE : 25 G
2. Check the IMS CQS log stream definition:
LS_MGMTCLAS() LS_STORCLAS() HLQ(CQSOFF) MODEL(NO) LS_S
STG_MGMTCLAS() STG_STORCLAS() STG_DATACLAS() STG_SIZE(0)
LOWOFFLOAD(0) HIGHOFFLOAD(50) STG_DUPLEX(NO) DUPL
RMNAME() DESCRIPTION() RETPD(0) AUTODELETE(NO) OFFL
DASDONLY(NO) DIAG(NO) LOGG
3. Verify with IMS administrator that our IMS checkpoints take place every 30 minutes. This 30 minutes is just our environment settings and you can change it in your installation.
4. Produce logger activity report and we can know there are some offloads and many DASD I/Os. See the Columns “BYT WRITI TO DASD” and “BYT DELETD INTERIM ST W/DASD”
5. Now let’s follow the above suggestion to calculate the best configuration for our environment.
The max value is 8474688000 for a 30-minute interval. So:
a. 8474688000 / 30 min = 282489600 / min
b. 2 IMS Check Points of Data = 2 * 282489600 * 30 = 16949376000
c. Safety Zone = 20% of the 2 IMS Check Points of Data = 0.2 x 16949376000= 3389875200
d. 2 minutes of data = 2 x 282489600 = 564979200
e. Reaction Time Data = (Minutes Of Reaction Time Desired+1) * data written in a minute = 11 * 282489600 = 3107385600
f. Structure SIZE = (2 IMS Check Points of Data + Safety Zone + 2 minutes of data + Reaction Time Data) = (16949376000 + 3389875200 + 564979200 +3107385600) bytes / (1024*1024*1024) = 2401
g. HIGHOFFLOAD = (2 IMS Check Points of Data + Safety Zone + 2 minutes of data) / (Total Structure Size) = 74/85 *100% = 87.06%
h. LOWOFFLOAD = (2 IMS Check Points of Data + Safety Zone) / (Total Structure Size) = 72/85 *100% = 84.70
6. According to above calculation, we think the current 25G is ok to have a little more buffer than the ideal value 22.36G. But we need to modify the HIGH
7. So we use the utility to update those attributes with below settings and make it effect with structure rebuild.
//SYSIN DD *
UPDATE LOGSTREAM NAME
8. Captured several hours’ data as below:
We can find columns “BYT WRITI TO DASD” and “BYT DELETD INTERIM ST W/DASD” are ZERO