DB2 Version 10.1 for Linux, UNIX, and Windows

RDF store tables

An RDF store consists of multiple tables. These tables contain metadata about the RDF store or user data.

Metadata tables

The following tables contain metadata about the RDF store:
  • One metadata table, which has the same name as the RDF store.
  • The System Predicates metadata table, which stores information about RDF predicates that you can use for further filtering results of a SPARQL query.
  • The Basic Statistics table, which stores statistics about the data in the RDF store.
  • The Top K Statistics table, which stores information about the least selective RDF data in the store.

Data tables

The following tables store RDF data if the value of the data does not exceed a particular character length:
  • The Direct Primary table stores RDF triples and the associated graph, indexed by subject. Predicates and objects for a subject are stored in pair columns in this table. A particular predicate can occur in any one of three columns in this table. The object for that predicate is stored in the corresponding object column of the predicate-object pair.
  • The Direct Secondary table stores RDF triples that share the subject and predicate within an RDF graph. Such triples have only a placeholder identifier in the Direct Primary table.
  • The Reverse Primary table stores RDF triples and the associated graph, indexed by object. Predicates and subjects for an object are stored in pair columns in this table. A particular predicate can occur in any one of three columns in this table and the subject for that predicate can occur in the corresponding subject column of that pair.
  • The Reverse Secondary table stores RDF triples that share the object and predicate within an RDF graph. Such triples have a placeholder identifier in the Reverse Primary table.
  • The Datatypes table stores the mapping of internal integer values for SPARQL data types, user-defined data types, and language tags.
If the value of an RDF subject, predicate, object, or graph exceeds a particular character length, the previously mentioned five tables store a placeholder identifier only. The actual value is stored in the Long Strings table.