如何用RAMDISK來提高PostgreSQL訪問速度

這篇論壇文章(賽迪網)主要介紹了使用RAMDISK提高PostgreSQL訪問速度的具體方法,詳細內容請參考下文。

RAMDISK作用于硬盤空間的內存。無論什麽時候你使用RAMDISK,實際上你是在使用內存而不是硬盤。在這一點上既有優點又有缺點。最基本的,最大的優點是你是在使用內存,你所做的一切都會快一些,因爲硬盤的速度較內存慢。最大的缺點是如果你改變了數據庫服務器的內容並且重新啓動機器時,所做的一切改動都將丟失。

對于數據庫Server PostgreSQL來說, 如果你將所有的數據庫調入內存將會大大提高它的速度。

建立一個RAMDISK /Test

將默認RAMDISK中的一個指向目錄/Test。

mkdir -p /Test

mkfs -t ext2 /dev/ram0

mount /dev/ram0 /Test

如果這一步失敗的話,也許是因爲你所編譯的內核不支持RAMDISK。你應該將內和配置選項中的CONFIG_BLK_DEV_RAM 一向置爲可用的狀態。

以上的步驟只能給你提供一個4M大小的RAMDISK。The above gives you a RAMDISK with available space of just under 4Mb. 請參看 RAMDISK Article 一文,看看如何將其改變成50M大小。

爲 PostgreSQL 建立一個RAMDISK

理論上你應該優良兩個數據庫server。一個是你可以進行修改的,另一個是在RAMDISK上的拷貝。實現這一點你應該用到"pg_dump" 或是 "pg_dumpall"命令。

注意: 我們假定你已經在文件中進行過設置是你的RAMDISK大于你的數據庫的大小。如果你想得到它的近似的大小可以用命令"cd /var/lib/pgsql; du ".

無論怎樣,使你的postgresql安裝在 "/var/lib/pgsql" 並且將他們放到內存中,這樣做:

### Stop the current postgresql server

/etc/rc.d/init.d/postgres stop

### rename the current directory

mv /var/lib/pgsql /var/lib/pgsql_main

#### Create a directory to have our RAMDISK on

mkdir -p /var/lib/pgsql_memory

#### change the ownership of the new directory to postgres or whatever

#### the actual owner is.

chown postgres /var/lib/pgsql_memory

#### Make an alias or link to the original name, /var/lib/pgsql

ln -s /var/lib/pgsql_memory /var/lib/pgsql

#### Format the RAMDISK

mkfs -t ext2 /dev/ram0

#### Mount the RAMDISK to the postgresql directory

mount /dev/ram0 /var/lib/pgsql_memory

#### Copy everything from the main directory into the RAMDISK

tar -C /var/lib/pgsql_main -cp . | tar -C /var/lib/pgsql_memory -xp

### Start the current postgresql server

/etc/rc.d/init.d/postgres start

關于速度Comments on the speed

我已經把postgresql分別在RAMDISK上和不在RAMDISK上進行過速度方面性能的測試。有些時候,在RAMDISK上的postgresql的速度將會快出50%。當然有些時候不是這樣的。

我注意到,當系統對數據設置緩沖時,系統性能的提高並不很大只有大約10%到20%。當有大量新的數據被同時輸入數據庫時,系統的性能有著顯著的提高。

在使用RAMDISK中最大的好處就是你可以強制你的數據庫留在內存中而避免使用硬盤。如果你不使用RAMDISK,你的數據庫將可能被換出內存。當它被使用時再被從硬盤上調入內存。

結論:

對于linux環境下,當一個文件被讀取時,它將被保存在內存中直到內存空間被其他程序要求使用。這樣便是緩存。也許這是一個解決之道。如果不是這樣,當我的機器有訪問的時候,會聽見硬盤的聲音。利用RAMDISK時數據庫放在內存中而不會被到處內存。如果經常用數據庫server的話,要是我就把它放在內存中。

在數據庫上使用RAMDISK的好處就是可以得到高速度,簡單而明快。對于那些只讀的數據庫來說,這可是一個非常棒的主意。

它的不足就是你必須知道如何管理,並且在你進行修改時,最好確信你已經做了修改的備份。

如何用RAMDISK來提高PostgreSQL數據庫的訪問速度
  介紹  --------------------------------------------------------------------------------  Okay, 什麽是RAMDISK?我們如何用它來提高數據庫server的響應速度?  Ramdisk就是說用作于硬盤空間的內存。無論...查看完整版>>如何用RAMDISK來提高PostgreSQL數據庫的訪問速度
 
如何提高Linux操作系統速度
     我們以前介紹了通過優化配置桌面環境來提高系統速度的方法,其實在其他的一些方面,我們一樣可以精心配置來提高系統速度。  一、提升硬盤和光驅的數據傳輸性能  我們可以使用命令“hdparm 參數 設...查看完整版>>如何提高Linux操作系統速度
 
如何提高網頁加載速度三點分析
  爲什麽要提高網站頁面加載速度?用戶體驗角度:換位思考,假如你去訪問某網站,打開一個頁面時,它猶如“千呼萬喚始出來,猶抱琵琶半遮面”,那麽,先不談頁面內容多麽好,對這個頁面的第一印象,那就是...查看完整版>>如何提高網頁加載速度三點分析
 
如何提高網站速度四個辦法
  隨著用戶體驗被越來越多被納入搜索引擎算法,對于網站速度和質量提出了更高要求,本文以網站速度優化爲重點,教給大家4個實用辦法,讓你的網站速度得到明顯提升。  1、靜態快,動態慢  因爲靜態內容是固定的...查看完整版>>如何提高網站速度四個辦法
 
如何提高Linux操作系統速度
  我們以前介紹了通過優化配置桌面環境來提高系統速度的方法,其實在其他的一些方面,我們一樣可以精心配置來提高系統速度。  一、提升硬盤和光驅的數據傳輸性能  我們可以使用命令“hdparm 參數 設備”(如果...查看完整版>>如何提高Linux操作系統速度
 
如何提高用戶訪問網站的響應速度?
如何提高用戶訪問網站的響應速度?  目前,國內訪問量較高的大型網站如新浪、網易等,均使用CDN網絡加速技術,雖然網站的訪問巨大,但無論在什麽地方訪問都會感覺速度很快。而一般的網站如果服務器在網通,電信用戶...查看完整版>>如何提高用戶訪問網站的響應速度?
 
如何提高數據庫的訪問速度
  不同數據庫類型的速度排序從快到慢大致如下:Paradox → Access → DBISAM → dBase。 要提高數據庫訪問速度,尤其是遍曆速度,還可采用以下措施。 1、用字段序號讀寫數據而不要通過字段名,我對Paradox數據庫進...查看完整版>>如何提高數據庫的訪問速度
 
如何提高網站的訪問速度?
據Websense調查公司稱多達70%的上網者表示不願意在頁面讀取上超過8秒鍾,超過70%的人會因爲“慢悠悠的網頁下載速度”而放棄在線浏覽和購物行爲。網站的訪問速度問題已經直接影響到了網站的流量,而網站的訪問量幾乎與...查看完整版>>如何提高網站的訪問速度?
 
如何提高網站的訪問速度?
據Websense調查公司稱多達70%的上網者表示不願意在頁面讀取上超過8秒鍾,超過70%的人會因爲“慢悠悠的網頁下載速度”而放棄在線浏覽和購物行爲。網站的訪問速度問題已經直接影響到了網站的流量,而網站的訪...查看完整版>>如何提高網站的訪問速度?
 
 
回到王朝網路移動版首頁