InMemory is usually only used for future predictions like weather forecasts or electricity prices. If you are not doing any of that sort of thing you may not need it.
What’s your query? Also remember that rrd4j only works with Number, Switch, and Contact Items.
I did try http://openhab-hostname:8080/rest/persistence/items?serviceId=rrd4j just now, and it returned an empty array, which is not right. There might be a bug that needs to be addressed. But if you see a chart, data is being saved. And a query on an individual Item returns results.
What’s your default persistence? That’s where charts will pull their data by default.
I don’t see anything complex about MapDB’s documentation. It really doesn’t even say anything at all about installation. Like any other database add-on, you need to install it from the Add-on store and optionally configure it’s persistence strategy.
What made you think you needed InfluxDB in the first place? Technically you don’t need any persistence at all. If you want restoreOnStartup, MapDB is the best choice for that because it only saves one value and it supports all Item types. If you just want some charts of your data, and you don’t mind the data becoming compressed/decimated as it gets older, rrd4j is your best choice. InfluxDB et al is really only needed if you want to do some analysis of your data outside of OH or want to use a third party tool to generate charts, like Graphana.
No, MapDB only saves one value per Item. Period. Both MapDB and rrd4j have a fixed size per Item and never grow (except if you add new Items). From the docs you linked to above:
The MapDB (opens new window)persistence service is based on a simple key-value store that only saves the last value.
If you are using openHABian with zram enabled (which is the default), rrd4j and mapdb gets written to RAM and only written to disk during a graceful shutdown of zram (which usually means a reboot).
It depends on the database. If you are using a third party DB like InfluxDB, it’s where ever and however you set that up.
If you are using an embedded database like mapdb, rrd4j, sqlite, etc., the data is stored in $OH_USERDATA/persistence (e.g. /var/lib/openhab/persistence).
InMemory doesn’t get written to the file system ever. It only exists in RAM.