程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SyBase數據庫 >> SyBase綜合文章 >> Sybase 安裝及系統管理(下)

Sybase 安裝及系統管理(下)

編輯:SyBase綜合文章

五.內存使用

充裕的內存可以減少磁盤IO,在數據庫系統中磁盤IO是極其昂貴的開銷。當用戶訪問資料時如果在緩存中能夠找到的話稱之為“邏輯IO“,否則從磁盤讀取稱之為“物理IO“....

五.內存使用

充裕的內存可以減少磁盤IO,在數據庫系統中磁盤IO是極其昂貴的開銷。當用戶訪問資料時如果在緩存中能夠找到的話稱之為“邏輯IO“,否則從磁盤讀取稱之為“物理IO“

內存問題大致是以下幾個方面:

1.總的數據高速緩存太小。

2.過程高速緩存太小。

3.在SMP系統中只配置了缺省高速緩存,導致對高速緩存的爭用。

4.高速緩存大小不適用於特殊的應用。

5.IO大小不適用於特定的應用。

高速緩存分類:

1. 數據高速緩存。用於數據,索引和日志頁

2. 過程高速緩存。用於存儲過程和觸發器以滿足短期內存需求。

確定過程高速緩存的大小可用以下辦法實現:

過程高速緩存大小=最大用戶並發數目*最大的計劃大小*1.25

具體如下:在使用一段時間的服務器上用dbcc traceon(3604)將信息寫到屏幕,然後運行dbcc memusage確定最大的查詢計劃的大小,然後根據應用確定並發用戶數量就可以大約得到高速緩存的大小了。其實在我們的ERP應用中最大的計劃所需內存在450K左右,所以,一般來說,過程高速緩存的大小到100M肯定是夠用的,並且當過程高速緩存不夠時會有701的錯誤發生。

Sybase default只有”default data cache”,並且只有一個2K的緩沖池,對於大多數的情況這都是不適合的,我們需要建立命名高速緩存並將對象綁定到高速緩存。

Sybase支持的緩沖池大小有2K,4K,8K,16K。給tempdb建立單獨的命名高速緩存,並合理分配緩沖池,一般4K的log IO的大小能夠得到比較好的性能。在SMP的環境中還有一個問題就是螺旋鎖的競爭,當用sp_sysmon觀察到資料緩存螺旋鎖爭奪超過10%時就需要分區。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved