DM达梦数据库表占用空间大小

问题描述:

        项目涉及用户量大且数据量大,为提高查询性能采用分表方式处理数据;根据业务要求总共4张业务表,每张业务表扩展成100张表,系统中总共400张表。部署至测试环境发现测试环境占用的磁盘空间是开发环境的8倍。

问题排查:

        查询达梦数据库资料,数据库由表空间组成,表空间由多个数据文件组成,数据文件由簇组成,簇由磁盘上连续的页组成,页是数据库的最小分配单元。

查询对比开发环境与测试环境达梦数据库设置的页大小与簇大小

 

可以看到,开发环境页大小为8K,簇大小为16页;测试环境页大小为32K,簇大小为32页。也就是说一个簇在开发环境占用的磁盘空间为8K×16页=128K,测试环境占用空间为32K×32页=1M。测试环境的空间占用正好是开发环境的8倍。

我们再根据簇的大小来推算出每个表空间占用大小,通过查询达梦数据库系统表DBA_SEGMENTS,可以查询到表占用的簇数量和页数量,EXTENTS是段所使用的簇的数量,BLOCKS是占用的页数量。可以看出该表使用2个簇,即占用2*128K=256K的空间。

select t.SEGMENT_NAME, 
       t.SEGMENT_TYPE, 
       t.TABLESPACE_NAME, 
       t.BLOCKS, 
       t.EXTENTS, 
       t.BYTES, 
       t.NEXT_EXTENT
  from DBA_SEGMENTS t
 where t.OWNER= '用户名' 
   AND t.SEGMENT_NAME='表名';

  • 6
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值