免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3741 | 回复: 3
打印 上一主题 下一主题

IDS计算表的最大区段(extent)数 [复制链接]

论坛徽章:
11
金牛座
日期:2015-03-19 16:56:22数据库技术版块每日发帖之星
日期:2016-08-02 06:20:00数据库技术版块每日发帖之星
日期:2016-04-24 06:20:00数据库技术版块每日发帖之星
日期:2016-04-13 06:20:00IT运维版块每日发帖之星
日期:2016-04-13 06:20:00数据库技术版块每日发帖之星
日期:2016-02-03 06:20:00数据库技术版块每日发帖之星
日期:2015-08-06 06:20:00季节之章:春
日期:2015-03-27 15:54:57羊年新春福章
日期:2015-03-27 15:54:37戌狗
日期:2015-03-19 16:56:41数据库技术版块每日发帖之星
日期:2016-08-18 06:20:00
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-09-10 17:20 |只看该作者 |倒序浏览
1.通过oncheck -pt 获取的物理地址.


  1. <99 [informix] :/opt/informix>oncheck -pt dbmon:alerts
  2. TBLspace Report for dbmon:informix.alerts

  3.     Physical Address              5:30          --所需的物理地址.
  4.     Creation date                  08/01/2008 15:27:54
  5.     TBLspace Flags                 802        Row Locking
  6.                                               TBLspace use 4 bit bit-maps
  7.     Maximum row size               140      
  8.     Number of special columns      0         
  9.     Number of keys                 0         
  10.     Number of extents            15    --已有的extents数..   
  11.     Current serial value           1         
复制代码


2.转换物理地址为 16 进制数.
在这里使用数据库自带的hex来转换..

  1. <100  [informix] :/opt/informix>dbaccess sysmaster -

  2. Database selected.

  3. > select hex(5),hex(30) from systables where tabid="1";


  4. (constant) (constant)

  5. 0x00000005 0x0000001E

  6. 1 row(s) retrieved.
复制代码


3.通过onchek -pP 来获取frcnt. (此操作须用informix操作.)

  1. <101 [informix] :/opt/informix>oncheck -pP 0x00000005 0x0000001E
  2. addr             stamp    chksum nslots flag type         frptr    frcnt next     prev
  3. 5:30             821864040 968f   5      2    PARTN        276   1748 0        0      
  4.         slot ptr   len   flg
  5.         1    24    92    0  
  6.         2    116   32    0  
  7.         3    148   0     0  
  8.         4    148   0     0  
  9.         5    148   128   0  
复制代码

4.则现在可以计算 还可增加的extent的数,最大区段数.
可增加区段数=trunc ( frcnt / 8 )= trunc (1748 / 8 )= 218
最大区段数 = 可增加区段数 + 已有区段数 = 218 + 15 = 233


注:参考informix性能指南.

[ 本帖最后由 liaosnet 于 2008-9-10 17:22 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2008-09-11 10:54 |只看该作者
frcnt/8 中8由什么决定

论坛徽章:
11
金牛座
日期:2015-03-19 16:56:22数据库技术版块每日发帖之星
日期:2016-08-02 06:20:00数据库技术版块每日发帖之星
日期:2016-04-24 06:20:00数据库技术版块每日发帖之星
日期:2016-04-13 06:20:00IT运维版块每日发帖之星
日期:2016-04-13 06:20:00数据库技术版块每日发帖之星
日期:2016-02-03 06:20:00数据库技术版块每日发帖之星
日期:2015-08-06 06:20:00季节之章:春
日期:2015-03-27 15:54:57羊年新春福章
日期:2015-03-27 15:54:37戌狗
日期:2015-03-19 16:56:41数据库技术版块每日发帖之星
日期:2016-08-18 06:20:00
3 [报告]
发表于 2008-09-11 14:38 |只看该作者

回复 #2 xmwinforever 的帖子

本帖最后由 liaosnet 于 2012-08-02 21:44 编辑

具体8指啥意思不清楚..
做了个测试..发现表增加一个extents, frcnt都减8....


Modify 2012-08-02
-------------------
frcnt/8 的原因是 每8字节描述一个区段~

论坛徽章:
0
4 [报告]
发表于 2012-08-02 18:26 |只看该作者
如果一张表有多个索引的怎么办了?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP