DSN1COMP 控制语句的语法和选项

DSN1COMP 实用程序控制语句及其多个选项定义了实用程序作业执行的功能。

DSN1COMP 句法图

DSN1COMP 表格间距的语法:

阅读语法图跳过可视化语法图 DSN1COMP 32KPAGESIZE(4K8K16K32K)DSSIZE(整数G)LARGENUMPARTS( 整数)FREEPAGE( 整数)PCTFREE( 整数)FULLCOPYREORGROWLIMIT( 整数)MAXROWS( 整数)EXTNDICT( 字典名)LOBCOMPTYPE(FIXEDHUFFMANALL)

DSN1COMP 索引语法:

阅读语法图跳过可视化语法图 DSN1COMP LEAFLIM( 整数)

选项说明

要运行 DSN1COMP ,请在EXEC语句中指定以下一个或多个参数来运行 DSN1COMP。 如果您指定了多个参数,请用逗号分隔每个参数。 您可以按任意顺序指定参数。

32K
指定输入数据集 SYSUT1 的页面大小为32 KB。 如果您指定此选项,而 SYSUT1 数据集的页面大小不是32KB,则 DSN1COMP 可能会产生不可预测的结果。

推荐的性能选项是 PAGESIZE(32K)

PAGESIZE
指定由 SYSUT1 定义的输入数据集的页面大小。 可用的页面大小值有 4K、 8K、 16K 或 32K。 如果您指定的页面大小不正确, DSN1COMP 可能会产生不可预测的结果。

如果省略 PAGESIZE, DSN1COMP 会尝试根据输入的数据集确定页面大小。 Db2 如果 DSN1COMP 无法确定输入页面的大小,则会显示错误信息。 如果标题页不在输入数据集中,或者标题页中的页面大小字段包含无效的页面大小,则可能会发生这种情况。

如果输入数据集标题页中提供了有关此值的信息,则标题页信息为默认值。

DSSIZE整数 G)
指定输入数据集的数据集大小(以千兆字节为单位)。 如果省略 DSSIZE, Db2 从数据集标题页获取数据集大小。

如果指定了 DSSIZE,则整数必须与定义表空间时指定的 DSSIZE 值相匹配。

LARGE
指定输入数据集是使用LARGE选项定义的表空间。 如果您指定LARGE, Db2 假定数据集的边界为4GB。

建议使用以下方法指定使用LARGE定义的表空间: DSSIZE(4G)

如果您在需要时省略了LARGE或DSSIZE( 4G )选项,或者为未定义LARGE选项的表空间指定LARGE选项,则 DSN1COMP 的结果将无法预测。

如果输入数据集标题页中提供了有关此值的信息,则标题页信息为默认值。

NUMPARTS(整数)
指定与输入数据集关联的分区数量。 有效规格范围:1 - 4096。 如果您省略了NUMPARTS或将其指定为0, DSN1COMP 将认为您的输入文件未分区。 如果您指定的数字大于64,即使没有指定LARGE关键字, DSN1COMP 也会认为数据集用于使用LARGE选项定义的分区表空间。

DSN1COMP 无法始终验证 NUMPARTS 参数。 如果您输入错误, DSN1COMP 可能会产生不可预测的结果。

DSN1COMP 当遇到包含多个分区的图像副本时,程序会终止并发出消息;压缩报告将针对第一个分区发出。 DSN1946I

如果目标表空间是通用表空间,则不使用此参数。 改为使用DSSIZE。

不推荐使用此参数。

FREEPAGE(整数)
指定计算已保存页面百分比时,页面留出空白区域的频率。 您必须指定一个介于0到255之间的整数。 如果您指定0,当 DSN1COMP 报告已保存的页面百分比时,将不包含任何页面作为可用空间。 否则, 每n页后包含一个免费页面,其中 n 是指定的整数。

默认值为0

请指定与 SQL 语句 CREATE TABLESPACE 或 ALTER TABLESPACE 的 FREEPAGE 选项相同的值。

PCTFREE(整数)
指示在计算已保存页面百分比时,每个页面应保留多少空白空间。 您必须指定一个介于0到99之间的整数。 在计算节省空间时, DSN1COMP 允许每页至少留出 n% 的可用空间,其中 n 是指定的整数。

默认值为5

指定与SQL语句CREATE TABLESPACE或ALTER TABLESPACE的PCTFREE选项相同的值。

FULLCOPY
指定 Db2 数据的完整图像副本(而非DFSMSdss并发副本)将作为输入。 当输入为完整图像副本时,忽略此参数可能会导致错误信息或不可预测的结果。 如果对数据进行分区,请指定 NUMPARTS 参数以识别分区数量。
REORG
提供压缩节省的估算值,与REORG实用程序实现的节省相当。 不过,REORG 和 用于建立压缩字典的行数和相关数据可能有所不同。 DSN1COMP 这种差异会导致两种公用事业的压缩率不同。

更改开始如果输入数据集是LOB表空间,则REORG不适用。更改结束

DSN1COMP 的REORG选项在REORG实用程序的卸载阶段模拟压缩字典的构建过程。 然而, DSN1COMP 仅能提供足够的数据行来构建字典,而REORG则不同,它能够继续采样更多数据,并完善字典,使其超出所需的数据行数。 这种差异是导致这两个实用程序使用不同数量的行来构建字典的因素之一。

建立字典后,REORG 实用程序会尝试压缩加载的每一行。 使用 REORG 选项的 DSN1COMP 也会出现这种情况。 DSN1COMP 也会尝试使用内置字典压缩每一行。 如果未指定 REORG 选项, DSN1COMP 将不尝试压缩用于构建字典的行,而只尝试压缩后续输入行。

ROWLIMIT(整数)
指定为提供压缩估算而评估的最大行数。 此选项可防止 DSN1COMP 检查输入数据集中的每一行。 有效规格范围从1到99000000。

使用此选项可限制 DSN1COMP 所需的运行时间和处理器时间。 对表空间前5到10 MB的分析提供了表空间的一个相当有代表性的样本,可用于估算压缩节省量。 因此,请指定一个 ROWLIMIT 值,将 DSN1COMP 限制在表空间的前 5 到 10 MB。 例如,如果表空间的行长度为200字节,指定ROWLIMIT(50000)会导致 DSN1COMP 分析大约10MB的表空间。

MAXROWS(整数)
指定 DSN1COMP 在计算已保存页面百分比时考虑的最大行数。 您必须指定一个介于1到255之间的整数。

默认值为 255

指定与SQL语句CREATE TABLESPACE或ALTER TABLESPACE的MAXROWS选项相同的值。

EXTNDICT字典名
指定 DSN1COMP 生成的固定压缩字典外部副本的名称。 词典名称必须:
  • 八个字节
  • 仅包含大写英文字母和数字
  • 从字母开始

压缩字典的外部副本主要用于 IBM® 数据加密,用于 IMS 和 Db2 工具。

指定 EXTNDICT 时,运行 DSN1COMP 的 JCL 中必须包含 DSN1DICT DD 语句,COMPTYPE 必须是 FIXED 或 ALL(明确指定或默认)。

更改开始LOB更改结束
更改开始指定输入数据集是 LOB 表空间或 LOB 表空间的映像副本数据集。 当指定了 LOB 时, DSN1COMP 将使用 zEnterprise® 数据压缩( zEDC )硬件估算 LOB 表空间的空间节省量和压缩率。

如果LOB表空间未压缩, DSN1COMP 将计算使用 COMPRESS YES选项定义表空间时压缩可节省的空间。 DSN1COMP 将收集数据,直到达到LOB的平均大小(或最大大小为1 MB),并将收集的数据传递给 卡(如果安装了 硬件),该卡将返回压缩信息和统计信息,用于生成 报告。 zEDC zEDC DSN1COMP

如果LOB表空间已经压缩(表空间使用COMPRESS YES选项定义),则 DSN1COMP 将从LOB映射页面收集单个LOB元数据的统计信息,而无需再次使用 zEDC 卡收集和压缩数据。

更改开始如果指定了 LOB,则不能指定任何其他 DSN1COMP 选项。更改结束

更改结束
更改开始COMPTYPE更改结束
更改开始指定 DSN1COMP 估算可节省空间的压缩类型。 可指定下列某个值:
胡夫曼
霍夫曼压缩。 您只能为通用表格空间指定HUFFMAN。
FIXED
固定长度压缩
全部
霍夫曼压缩和固定长度压缩

如果您没有指定COMPTYPE选项,则 DSN1COMP 提供的空间估算值取决于硬件的压缩类型。 如果 DSN1COMP 运行在 IBM z14® 或更新的硬件上运行,该实用程序将提供霍夫曼压缩和固定长度压缩的估计值。 否则, DSN1COMP 仅提供固定长度压缩的估算值。

更改结束
LEAFLIM(整数)
指定应评估多少索引叶页以确定压缩估计值。 此选项可防止 DSN1COMP 处理输入数据集中的所有索引页。 有效规格范围从1到99000000。

如果未指定 LEAFLIM 参数,则将扫描整个索引并检查所有叶页。

在压缩索引中,只有叶页被压缩。 所有其他页面类型保持未压缩状态。