informix的性能优化(一)
作者: CCBZZP
以下是我用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
歡迎大家一起探討!
待續...
没有相关教程
|