I was in the midst of reimplementing the KB as partitions using Oracle Berkeley DB Java Edition as the storage engine. Based on what I saw at the recent AAAI-07 conference in Vancouver, I’ve decided to follow the pattern set by YARS2 and create an RDF triple store with extensions to suit the needs of this project. The primary motivation is to obtain the fastest possible lookup time and also use the least amount of disk space.

The lookup performance will be fast:

  • no SPARQL or SQL query layer, instead use index lookup
  • no provision for transactions

The index structures and disk blocks will follow the YARS2 pattern and be compressed.

RDF extensions for each stored triple include:

  • Context term
  • Timestamp
  • Creator
  • Creation purpose

Serialization for export / import will be RDF and the extensions will be handled via RDF statement reification.