Lately I come across an middle ground solution between embedded SQL database and influxdb which is called QuestDB. I wanted to check if there is any interest in making it available as openHAB 3.x persistence service.
QuestDB brings some semantics known from influx - namely time series approach, while still being well performing embedded java solution. There are several native parts which are portable across major operating systems. Some optimizations in questdb make it very efficient to store and retrieve sensor data.
In this regard especially interesting feature is “designated timestamp” which turns tables into “append only” mode. This trick alone allows to use memory mapped files which are flushed to disk when buffer is full.
Another one is handling of “symbol” columns which are repetitive strings (think of ON/OFF or multi state items) which are translated into numeric values making disk utilization much smaller than storing all values as text.
I began my own experimentation on my development box to see is it possible to get quest running together with OH. So far I managed to get it up and store some basic data. Hopefully I will also be able to retrieve it.