informix linux 速度,informix的性能优化(之一)

以下是我用INFORMIX DATABASE的一点体会,分享给大家,欢迎大家一起探讨!

1. 日志缓冲

如果不怕丢失几个事务则最好用缓冲日志,这样可以得到更好的性能.

如果数据性很重要,则最好用非缓冲日志.

2. DSS SERVER的优化有三个目标:

1>. 总查询通过量最大化

可以将ONCONFIG文件中的PDQPRIORITY设置限制小于25%

2>. 每个查询处理时间最小化

可以将ONCONFIG文件中的PDQPRIORITY设置限制大于50%

3>. 平衡优先级

可以将ONCONFIG文件中的PDQPRIORITY设置限制大于25%,小于50%

3. OLTP SERVER的优化有三个目标:

1>. 更新活动通过量最大化

使用缓冲日志

将检验点间隔最大化,周期最小化

可以将ONCONFIG文件中的PDQPRIORITY设置限制为0

增加物理日志长度

最大化写入缓冲百分比

其实以上的目标也是会矛盾的,关键在于如何取舍.

2>. 查询活动通过量最大化

最大化BUFFERS

可以将ONCONFIG文件中的PDQPRIORITY设置为0或1

最大化读取缓冲百分比

3>. 事务安全最大化

最小化CKPTINTVL

使用非缓冲日志

使用冗余磁盘和I/O路径

减少物理日志长度

4. 简单查询SERVER的优化有三个目标:

最大化BUFFERS,它一般>=40%RAM

可以将ONCONFIG文件中的PDQPRIORITY设置<25%

5. 内存问题

INFORMIX可以使用的内存是不限制的,给多少用多少,下面以IDS7.X为例:

缓冲区最多 768000 PAGES (OS 3GBW/4KB)

DSS内存最多1G

锁最多8000000

逻辑日志缓冲区 3个 LOGSIZE最大2G, TOTAL 6G

物理日志缓冲区 2个 PHYSFILE最大2G, TOTAL 4G

数据字典缓冲区 没有限制,可以调整参数DD_HASHSIZE和 DD_HASHMAX

onstat -g dic确定数据字典缓冲区是否接近容量

存储过程缓冲区 没有限制,可以调整参数PC_HASHSIZE和PC_POOLSIZE

onstat -g prc确定存储过程缓冲区是否接近容量

数据分布缓冲区 可以调整参数DS_HASHSIZE和DS_POOLSIZE

onstat -g dsc确定数据分布缓冲区是否接近容量

6. 磁盘问题

磁盘是越多越好的

多些驱动器比大的驱动器好

采取RAID磁盘阵列

7. 内核限制

不同的OS有不同的内核,这是可以调整的.

8. 内存参数

onstat -g seg确定共享内存分配和查询内存分区

SHMVIRTSIZE确保最低正常负荷内存,如果消息日志文件中表示动态新共享内存的消息很多,则要增加此参数的数值.

SHMADD至少应为SHMVIRTSIZE的10%

SHMTOTAL除非很小的系统,否则社为0让内存增长.

9. 分块表和大量区域

用oncheck -pt 和 oncheck -pe检查表的区域数及其在磁盘上的布局

一般说表格超过33个区域系统比较慢,可以压缩表格来解决

1>. 删除表格重建並重新装入数据

2>. 重新创建索引

3>. 将表和索引放在不同的DBSPACE

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值