如何从列数据类型大小确定最大行大小?

时间:2010-03-25 13:36:55

标签: oracle indexing

如果我只给出表中列的数据类型长度(来自all_tab_cols.data_length列)(即没有统计信息或ANALYZE),我如何计算表中的最大行大小?还有一个额外的复杂因素是这是一个物联网,所以还要考虑索引树的大小。

2 个答案:

答案 0 :(得分:0)

涉及公式大小索引 - 它们通常专注于计算每个块的行数,以确定N行所需的实际磁盘空间 - 以及我最后一次发现Oracle在其文档中包含的内容是在Oracle 8.0中。见here.

答案 1 :(得分:0)

我重新创建表格,使用Data Generator生成一些数据并实际测量它。 我通常不会超过10 MB的生成数据足以作为指南。

在某些地方,它们往往会产生过大的数据长度(例如,标准化字符串大小为20,50,100字节/字符)。即使在名字上,当大多数人处于5-10长度时,你可以允许30个字符。因为从字段大小而不是实际长度得出的这种估计将非常模糊,并且您将具有非常大的误差范围。