Cozo 0.5: the versatile embeddable graph database with Datalog is half-way 1.0#
It’s been a quarter of a year since Cozo’s initial release and today we are glad to present to you the “half-way 1.0” version. This marks the completion of all the features we envisaged for Cozo when we first started but weren’t present in the initial release:
User-defined fixed rules (added in v0.5)
Callbacks for mutation (added in v0.5)
Multi-statement transaction (added in v0.5)
Indices (added in v0.5)
Imperative mini-language (added in v0.5)
Time-travelling (added in v0.4)
Swappable backend (added in v0.2)
In addition, v0.5 brings major behind-the-scene changes that has big performance benefits:
The semi-naive algorithm for executing queries is now executed in parallel for each Horn-clause (now it is even more advisable to split your queries into smaller pieces–better readability and performance!)
The evaluation of expressions is no longer interpreted but instead through stack-based bytecodes (a few percent improvements for filter-heavy queries–the improvement mainly comes from the avoidance of memory allocations)
From now on, until version 1.0, development will “shift-gear” to focus on:
stability
performance
interoperability with other software, e.g.:
If you find Cozo to be useful in your work, please send us feedbacks so that we can make Cozo better still!