# Package oracle.kv.coherence

This package contains the public API for integration of the Oracle NoSQL Database with Oracle Coherence.

See: Description

- Interface Summary
  Interface | Description
  --- | ---
  CacheKeyMapper | This interface defines a mechanism for translating an Oracle Coherence cache key object into an Oracle NoSQL Database `Key`.

- Class Summary
  Class | Description
  --- | ---
  NoSQLAvroCacheStore | This is an Oracle NoSQL Database-based implementation of the `CacheStore` interface.
  NoSQLAvroSerializer | This is an Oracle NoSQL Database-based implementation of the Oracle Coherence `Serializer` interface.
  NoSQLBinaryStore | Oracle NoSQL Database implementation of the `BinaryEntryStore` interface.
  PofKeySerializer | This class provides Coherence Portable Object Format (POF) serialization of the `Key` class.

## Package oracle.kv.coherence Description

This package contains the public API for integration of the Oracle NoSQL Database with Oracle Coherence. The classes provided provide the ability to use NoSQL DB as persistent backing for a Coherence distributed, or partitioned cache. There are 2 primary use cases that that this package attempts to support.

The first is the case that the Oracle NoSQL Database is used solely as a persistent backing for Oracle Coherence-based applications. In this case, the format of data in the database is likely of limited concern. For this case we provide the NoSQLBinaryStore module.

The second use case is one where the Oracle NoSQL Database is to be shared by both Oracle Coherence-based applications and non-Oracle Coherence applications. In this case, we suggest that the objects stored in the database be Avro schema-based. The NoSQLAvroCacheStore module is aware of Avro schema-based objects and will automatically store and retrieve them, using the Avro object format you configure. Since the objects have an associated Avro schema, we provide the NoSQLAvroSerializer module, which is a natural complement to NoSQLAvroCacheStore, and provides serialization functionality in the Oracle Coherence environment without the need to write additional code.

For either of the two use cases, you will use the Oracle Coherence cache configuration files to define a distributed-scheme cache, where a variety of configuation parameters can be specified to identify the Oracle NoSQL Database instance that will back the cache, plus parameters to control Consistency, Durability, and other store type-specific attributes.

Copyright (c) 2011, 2014 Oracle and/or its affiliates. All rights reserved.