聚簇表的空间扩得这么厉害?

[复制链接]
查看11 | 回复9 | 2007-1-6 21:14:12 | 显示全部楼层 |阅读模式
聚簇表的空间扩得这么厉害?
我两张表,分别各600m数据,有相同得PK,每张表表只有两个字段
然后建立聚簇,这个居然有4G多了

回复

使用道具 举报

千问 | 2007-1-6 21:14:12 | 显示全部楼层
cluster得查询也很慢,比普通的堆表慢,也许我没设计好吧
回复

使用道具 举报

千问 | 2007-1-6 21:14:12 | 显示全部楼层
size参数没有指定好
回复

使用道具 举报

千问 | 2007-1-6 21:14:12 | 显示全部楼层
数据分布的不好
回复

使用道具 举报

千问 | 2007-1-6 21:14:12 | 显示全部楼层
楼主的每个表应当是50万条记录左右吧
回复

使用道具 举报

千问 | 2007-1-6 21:14:12 | 显示全部楼层
Table 大了,用Cluster就不合适了……
最初由 atgc 发布
[B]聚簇表的空间扩得这么厉害?
我两张表,分别各600m数据,有相同得PK,每张表表只有两个字段
然后建立聚簇,这个居然有4G多了
晕 [/B]

回复

使用道具 举报

千问 | 2007-1-6 21:14:12 | 显示全部楼层
cluster默认会为每一个key, 保留1个block吧.
SIZE
specifies the amount of space in bytes to store all rows with the
same cluster key value or the same hash value.You can use K or M
to specify this space in kilobytes or megabytes.The value of this
parameter cannot exceed the size of a data block.If you omit this
parameter, Oracle reserves one data block for each cluster key value
or hash value.
回复

使用道具 举报

千问 | 2007-1-6 21:14:12 | 显示全部楼层
最初由 d.c.b.a 发布
[B]cluster默认会为每一个key, 保留1个block吧.
SIZE
specifies the amount of space in bytes to store all rows with the
same cluster key value or the same hash value.You can use K or M
to specify this space in kilobytes or megabytes.The value of this
parameter cannot exceed the size of a data block.If you omit this
parameter, Oracle reserves one data block for each cluster key value
or hash value. [/B]


正解.
不过前面说50万条记录倒不是很准确,准确点说应该是有50万个key。
回复

使用道具 举报

千问 | 2007-1-6 21:14:12 | 显示全部楼层
最初由 rollingpig 发布
[B]Table 大了,用Cluster就不合适了……
[/B]

表大了Cluster就不合适是何原因呢?
其实我觉得聚集表挺好的,比堆表省空间,表和索引是一个东东.
其次就是联合表查询速度又快
回复

使用道具 举报

千问 | 2007-1-6 21:14:12 | 显示全部楼层
最初由 d.c.b.a 发布
[B]size参数没有指定好 [/B]

我觉得可能是size没设置好吧,我再分析一下,谢谢各位
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行