データベースCacheについて

 以前、「ポストリレーショナルデータベースCache」のセミナーに行ってきたことを書きました。そこで貰ってきた評価版をインストールし、マクロソフトのSQLServerと比較してみました。
 Cacheはオブジェクト型データベースに分類してもいいと思いますが、外からはリレーショナルデータベースとしても使えるようなしくみになっています。そこでSQLServerで構築したデータベース(テーブル数13種類)をCacheに持ってきて、アプリケーションからはSQLServer向けと同じ処理(SQL文での制御)でCacheを利用してみてレスポンスを比較してみました。
移行手順は以下のとおりです。
1.Cacheに受け入れいるためのネームスペースを用意する。
2.CacheのODBCインタフェースを作成する。
3.SQLServerの移行ウィザードを使用して、ODBC経由でCacheにエクスポートする。
また、アプリケーション(JavaからJDBC経由でアクセス)の変更点は以下の通りです。
1.JDBCドライバ名をCache提供のJDBCドライバ名に変更する。
2.コネクション取得時の接続パス指定をCache用に変更する。
変更は以上です。これで今までSQLServerを操作していたのがCacheを操作するように変更となります。
それで結果ですが、1000件の検索処理を行う時間を測定したのですが、
  SQLServer  20秒
  Cache     13秒
となりました。かなり速いですね。
販売元のインターシステムズのセールストークでは「単純に他の製品からSQLベースで置き換えるだけで3倍高速になる」とのことでしたが、今回の環境では2倍近い性能は出ました。もっとデータ件数の多いテーブルなどで試すとまた違った結果が出るのかもしれません。
現在はCacheネイティブのオブジェクト設計でデータベースを構築することに挑戦しています。まだオブジェクトデータベースに慣れていないのでなかなか進まないのですが、こちらも動いたら内容をまとめたいと思います。

コメント

  1. ボク より:

    キャシエの私設応援団(笑)をやってますボクといいます。
    キャシエなかなか魅力的ですよね。キャシェオブジェクトスクリプトで書いてみると早さが実感できますよ。

  2. ブライアン より:

    ボクさん、コメントありがとうございます。
    すでに4年も経った記事で、忘却の彼方にありました(笑)
    私はすでに現役を引退したのですが、現役の頃Cacheをかなり研究しましたよ。
    ボクさんは業務で実際に使われているのですか?いろんな攻め口があって噛みがいのあるDBMSですよね。

    ブログ拝見しましたよ。「森の暮らしと~」のタイトルなかなかいいですね。技術関係の記事も一般向けに書かれているし、私のブログの位置づけとも近いものを感じました。これからもよろしくお願いします。