Semantic Data in the Database

We store RDF graph data (triples and quads) as key-value pairs in Oracle NoSQL Database. To allow an easy separation of the key-value pairs for RDF graph data, we add a prefix (customizable) to all key-value pairs that are inserted into the Oracle NoSQL Database for RDF related data.

Note that duplicate entries are removed from the store. Duplicate triples and quads are not stored. However, blank nodes are supported because they are part of the RDF modeling.

Each triple (quad) is modeled as a set of K/V pairs in NoSQL Database.

Each graph is managed as a set of quads and stored and encoded as key-value pairs in the Oracle NoSQL Database. Those key-value pairs are used to answer SPARQL queries. In particular, each SPARQL query pattern is translated into a multi-get API call against the Oracle NoSQL Database and the resulting key-value pairs are combined with those from other query patterns to form a final result set for the client.

The following requirements apply to the specifications of URIs and the storage of semantic data in the database: