Coherence統合

Oracle Coherenceは、クラスタ化されたアプリケーションのデータ管理サポートを提供するミドルウェア・アプリケーションです。アプリケーションがOracle Coherenceに委任するデータは、自動的にアプリケーション・クラスタ内のすべてのサーバーで使用可能およびアクセス可能になります。複数のマシンに対してデータを分散することにより、Oracle Coherenceはクラスタ化されたアプリケーションの可用性、信頼性、スケーラビリティ、パフォーマンス、保守性および管理性の実現に関連する問題を解決します。

Oracle Coherenceの説明については、http://docs.oracle.com/cd/E24290_01/index.htmを参照してください。

これらの解決を実現するために、Oracle Coherenceではキャッシュが実装されています。このキャッシュは、いくつかの異なるデータ・リポジトリを使用してキャッシュ済データを格納するようにカスタマイズできます。このようなデータ・リポジトリの1つが、Oracle NoSQL Databaseです。

これは、Oracle NoSQL Database Enterprise Editionのユーザーのみが使用可能な機能であることに注意してください。

Oracle NoSQL Databaseと統合するには、構成XML、ストックCoherenceコードおよびカスタムOracle NoSQL Databaseコードの組合せを使用して、Oracle Coherenceをカスタマイズする必要があります。Oracle NoSQL Databaseコードは、oracle.kv.coherenceパッケージで提供されるクラスを使用して実装されています。

Oracle NoSQL Databaseを使用して、Oracle Coherenceの2つの異なるキャッシュ・ストラテジをサポートできます。このうちの1つめは、oracle.kv.coherence.NoSQLBinaryStoreで実装されます。このクラスによって、キャッシュベースでないアプリケーションとは共有されないキャッシュ・データを実装でき、したがってこのクラスではまったく不透明なデータ形式を使用します。これは、効率的で構成しやすいキャッシュ・オプションです。

もう1つとして、キャッシュベースでないアプリケーションと共有されるデータが得られるキャッシュ・ストラテジを実装できます。これは、oracle.kv.coherence.NoSQLAvroCacheStoreを使用して行います。このキャッシュ・メカニズムはAvro対応であり、いずれのAvro準拠のアプリケーションでも、これらのデータ・レコードの読取りおよび書込みが可能になります。

Oracle CoherenceでこれらのAvroベース・オブジェクトを使用するには、Avroレコードをネットワークでの伝送用にシリアライズできる必要があります。これを有効にするには、oracle.kv.coherence.NoSQLAvroSerializer クラスを使用します。