CSQL Cacheは複数のデータベースに対応したキャッシュシステム。

CSQL CacheはRDBMS用のオープンソース・ソフトウェア。Webシステムを構築する上で欠かせない存在になっているのがデータベースだ。オープンソースであればMySQLやPostgreSQL、エンタープライズであればOracleやDB2などが有名だ。

データベースを使えばデータの蓄積はもちろん、詳細な条件を指定したデータの取得や更新、集計等が容易にできる。だが高性能故にアクセス頻度が多くなってボトルネックになることも多い。そんな時に考えたいのがCSQL Cacheだ。

CSQL Cacheは実際には試せていないのだが、興味深いソフトウェアなので紹介したい。CSQL Cacheはいわゆるデータベースアクセスをキャッシュするソフトウェアだ。データベースとプログラムの間に立ち、メモリ上にキャッシュするシステムだ。

JDBCまたはODBCをサポートし、MySQL/PostgreSQL/Oracle/DB2/Sybaseに対応している。キャッシュはテーブルレベルはもちろん、部分的なカラムや行に対しても使えるとのこと。更新されれば自動的にキャッシュが更新される。複数のシステムからデータベースを活用している場合などに有効そうだ。

MOONGIFTはこう見る

データベースは便利さ故にちょっとしたデータでも保存する傾向があるため、ネットワークやディスクI/Oと並んでボトルネックになりやすい。クエリーキャッシュは有効な解決策だが、個別のアクセスに対して最適化されていたり、個別のシステム単位でしか最適化されていないといった問題もある。

またサービスの規模に応じてデータベースを変更した場合、キャッシュの手法もまた変わってしまうという問題もある。個々のデータベースでもキャッシュ機能はあるが、CSQL Cacheはさらに高度化したシステムと言えるだろう。

CSQL Main Memory Database and Cache | Download CSQL Main Memory Database and Cache software for free at SourceForge.net