Oracle Coherence は RDBMSのキャッシュではない
JJUGセッションまとめ その1 Oracle Coherence - ワインと将棋とインターネット で以下の疑問があったのだけど、どうやら的外れでした。
- キャッシュ側でロジックを実行できるということを除いて考えると(DataStoreの機能にFocusすると) 10gRAC との違いはどのあたりにあるのか?
そもそも、まったく違う。CoherenceはRDBMSのキャッシュではない。
BigTableに近いイメージか。アプリケーションからはJavaのMapを拡張したInterfaceでアクセスする。
CacheをRDBMSに永続化させることは可能。どのRDBMS製品でも問題なさそう。(JDBC経由)
- アプリにはどのようなインターフェースが提供されているか?(キャッシュを意識せず、JDBCのレイヤでラップしてくれていると嬉しい。)
JCacheというJavaの仕様らしい。シンプルなクエリーはできるみたいだけど、JOINだとか副問い合わせだとかRDBMSを包むものではないので、最初からCoherenceありきで設計しないとだめだと思う。
すでにWeb+RDBMSで作られたアプリケーションの性能アップのために間に挟むことができるというわけではないようだ。
逆に↑のようなことができるものがあったらいいのにな。。。