[pgsql-jp: 36078] Re: ramdisk上のtablespaceの効果

TANIDA Yutaka tanida @ sraoss.co.jp
2005年 10月 3日 (月) 14:10:11 JST


谷田です。

On Mon, 3 Oct 2005 13:21:54 +0900
"Morita Kazuro" <morita @ yuki.ad.jp> wrote:

> WEBを使ったロールプレイングゲームという性格上、URLを直にたたかれるとまずいので、
> 直前にアクセスしたURLとそこからリンクしているURLを常にテーブルに保持しております。
> このテーブルはユーザーのアクセスごとに必ず参照、更新が行われ、1日あたり数百万回の
> update があります。このテーブルへの参照、更新がデーターベース全体の数割をしめています。
> 
> で、このテーブルへのアクセスの高速化ができればと思い、この部分をramdiskからmountした
> 所を使ったtablespaceにすることを検討しております。もし、電源ダウンが起こればこのテーブル
> は消滅しますが、この場合はシステムの再立ち上げであり、ユーザーにはトップページからアクセス
> してもらうことになり、いずれにしろこのテーブルは初期化されるからです。
> 
> で、質問ですが、ramdisk を使うのと、その領域を shared_buffers にするのでは、どちらが
> 高速化を期待できるのでしょうか?

ramdisk上にtablespaceを置くと、クラッシュ後、再起動してしまったときにファ
イルがなくなっているのがリカバリ時の妨げになるので、復旧処理が大変なので
はないでしょうか。

私的には、上記のような事象なら、専用に別のオンメモリDBを用意するのが筋か
なと思います。もちろん、それに相当する機能をPostgreSQLで用意できていれば
理想だったのでしょうが・・・

-- 
TANIDA Yutaka <tanida at sraoss.co.jp>





pgsql-jp メーリングリストの案内