coolmax 发表于 2009-06-26 15:17

minimize_storage=ON

我从query plan的信息里看到Index Advisor的建议是:
   Rebuild DBA.TT_BST_CDR_05.DATASOURCE_ID with minimize_storage=ON
有哪位高手能帮我解释一下不?为什么会是这样的建议,我如何优化呢?在网上搜不到确切的答案,真的无从下手啊!

enjoy-work 发表于 2009-06-26 21:07

这是Sybase IQ发现数据可以使用优化的fp索引存放但是却是使用的Flat Style FP索引。两种方法可以:

1. 导入数据为文本或者二进制文件,drop table, recreate table, set temporary option minimize_storage='ON', load table from.....。就可以了。

2. 比如提示sale 表的sales_amt有此问题
set temporary option Minimize_Storage = 'ON';
sp_iqrebuildindex 'sale', 'column sales_amt';


good luck.

chuxu 发表于 2009-06-29 07:54

回复 #1 coolmax 的帖子

当 MINIMIZE_STORAGE 是 ON 时,IQ 将通过在只要合适则每行可仅使用
一字节的磁盘空间,以优化对新列的存储。缺省情况下,此选项对
PUBLIC 组是 OFF,并且对所有最近创建的列使用一字节存储;当它对
PUBLIC 组是 OFF 但作为临时用户选项是 ON 时,对该用户 ID 创建的新
列使用一字节存储。
MINIMIZE_STORAGE=ON 等同于在每个新列上放 IQ UNIQUE 255 子句,但
某些一字节存储天生太宽的数据类型除外。当 MINIMIZE_STORAGE 是 ON
时,除了具有超过 65536 个唯一值的列以外,不需要指定 IQ UNIQUE。
当 MINIMIZE_STORAGE 是 ON 时,对包含较少列的表有好处。如果关闭
此选项,通常对包含很多列的表有好处。“少”的定义取决于处理器;
对于更多处理器,该数字可以比处理器更少时更大。

coolmax 发表于 2009-06-30 14:18

chuxu说的和官方文档上写的一样。如果能像enjoy-work 提供更加可操作性的说明就好了。:wink:

coolmax 发表于 2009-06-30 14:20

enjoy-work
按照你说得第二种方式执行了,开始query plan的执行计划还是跟以前的提示一样。
Rebuild DBA.TT_BST_CDR_05.DATASOURCE_ID with minimize_storage=ON
ps:按照你的方式运行命令没有报错,但是执行计划的index advisor提示不变。

coolmax 发表于 2009-06-30 14:30

try it again!enjoy-work 的方法可行哦!多谢!
再看看按照index advisor的提示修改后对整个的查询性能有什么提升没有!
页: [1]
查看完整版本: minimize_storage=ON