监控记录的数据压缩
缺省情况下, CICS® 对 CICS 监视设施 (CMF) 生成的 SMF 110 监视记录执行数据压缩。 数据压缩可以显着减少写入 SMF 的数据量。 这些记录使用标准 z/OS® 服务进行压缩和扩展。
通过使用 DFHMCT TYPE=INITIAL 宏在 "监控控制表" (MCT) 中指定 COMPRESS 选项来控制监控记录的数据压缩。 COMPRESS=YES 是此选项的缺省值,表示使用数据压缩。 如果指定系统初始化参数 MCT = NO ,那么 CICS 构建的缺省 MCT 指定 COMPRESS=YES。 如果不想压缩监视记录,那么必须在 MCT 中指定 COMPRESS=NO。
您可以使用监视设施事务 CEMN 或等效的 EXEC CICS 命令来动态查询和更改数据压缩选项。 但是,当 CICS 重新启动时,如果使用监视控制表并在 MCT 系统初始化参数上指定监视控制表后缀,那么数据压缩选项将还原为 MCT 中的 COMPRESS 值。
当数据压缩处于活动状态时, CICS 使用标准 z/OS 数据压缩和扩展服务 (CSRCESRV) 来压缩每个监视记录的 CICS 数据部分,然后再将其写入 SMF。 记录的 SMF 头和 SMF 产品部分不会压缩。 此过程可大幅减少写入 SMF 的数据量,并相应减少 SMF 地址空间的 I/O 和 CPU 使用率。 如果通常排除监视数据字段以减少数据量,那么可能会发现使用数据压缩可消除排除的需求,并使您能够收集完整的监视数据。
- 根据记录的数据模式,压缩数据部分可能会导致更大的记录。 如果发生此情况,那么 CICS 不会压缩记录。
- 由于涉及 z/OS 数据压缩和扩展服务的问题,数据压缩可能失败。
- 可以使用 CEMN 事务 或 EXEC CICS SET MONITOR 命令动态关闭数据压缩。
- CICS提供的监视样本程序 DFH$MOLS 支持扩展压缩的 CICS SMF 110 监视记录。 DFH$MOLS 会自动识别输入中的任何压缩监视记录,并在使用这些记录之前使用 z/OS 数据扩展服务对其进行扩展。 如果指定 EXPAND 控制语句,那么 DFH$MOLS 会将压缩的监视记录复制到其扩展格式的输出数据集,其中包含从未压缩的记录。 请参阅 样本监视数据打印程序 (DFH$MOLS) ,以获取有关 DFH$MOLS 程序的更多信息。
- 如果使用 IBM® 或其他供应商提供的 SMF 110 报告工具,并且要使用数据压缩,请确保产品可以识别压缩的 CICS SMF 110 监视记录,并可以使用 z/OS 数据压缩和扩展服务来扩展数据部分,以便可以正确处理监视记录。 如果报告工具无法以此方式处理记录,那么可以将 DFH$MOLS 与 EXPAND 控制语句配合使用,以生成包含 SMF 110 监视记录的扩展格式的输出数据集,以供该工具使用。
- 记录的 SMF 产品部分中的字段 SMFMNCRL 标识数据压缩已用于监视记录的位置,并给出 CICS 数据部分的压缩长度。 此字段的零值表示未对记录执行数据压缩。
- SMF 110 监视记录的 CICS 数据部分的最大长度 (展开时) 为 32598 字节。
有关 z/OS 数据压缩和扩展服务 (CSRCESRV) 的详细信息,请参阅 z/OS MVS Programming: Assembler Services Guide和 z/OS MVS Programming: Assembler Services Reference ABE-HSP。
数据压缩仅适用于 CICS 监视写入的 SMF 110 记录,在 SMF 头的记录子类型字段中具有子类型 X'0001 '。 它不适用于 CICS创建的其他类型的 SMF 110 记录; 即,由 CICS 日志记录, CICS 统计信息, TS 数据共享服务器,耦合设施数据表 (CFDT) 服务器和指定计数器序号服务器写入的记录。