获取DB2表上所有列的大小

时间:2013-02-12 16:26:48

标签: db2

我被要求确定我们的应用程序使用了多少数据以及它的增长速度。问题是许多应用程序共享相同的数据库和表,其中一列用于确定数据属于哪个应用程序。它是一个DB2数据库。

有没有办法找到表用于给定行的所有列的大小(以字节为单位)?重要的是我只选择那些属于我的应用程序的行。

如果列不可为空,我不将它包含在SQL中我只是将其大小乘以行数。我主要是尝试确定可空和可变大小列的平均大小(我们使用VARCHAR和BLOB)。

目前我正在做的事情看起来像这样:

SELECT VALUE(LENGTH(COLUMN_1), 0) AS LEN_COL_1, repeat for each variable size column
FROM TABLE T
WHERE T.APP_ID = my app

1 个答案:

答案 0 :(得分:0)

确定大小的最准确方法是查看构成DB2表的文件的大小。

将文件大小除以属于您的应用程序的行的百分比。

这样,您可以计算DB2的大部分开销大小,包括索引。