Persistence

Persistence services enable the storage of item states over time.

Some openHAB 1 persistence services have not yet completed validation for inclusion in the distribution; however, they may indeed work properly under openHAB 2. All openHAB 1 add-ons can be downloaded in a zip file. We need your help testing them so that they may be easily installed in a future distribution. Please see the compatibility layer documentation and also search the openHAB community forum for the latest information and steps for manual installation.

Name Description

CalDAV

This binding can be used to connect through the CalDAV Interface to calendars.

Xively (formerly Cosm)

This service allows you to feed item states to the Xively IoT Platform.

db4o

db4o is a pure Java object database, which uses a simple database file for persistence.

Amazon DynamoDB

This service allows you to persist state updates using the Amazon DynamoDB database. Query functionality is also fully supported.

Exec

This service allows you to execute commands in the underlying OS to persist item states. It could be used to, for example, call the original rrdtool CLI tool.

This service allows you to persist and query states using the InfluxDB time series database. The persisted values can be queried from within openHAB. There also are nice tools on the web for visualizing InfluxDB time series, such as Grafana.

InfluxDB (up to 0.8.x)

This service allows you to persist and query states using the InfluxDB time series database. The persisted values can be queried from within openHAB. There also are nice tools on the web for visualizing InfluxDB time series, such as Grafana.

JDBC

This service writes and reads item states to and from a number of relational database systems that support Java Database Connectivity (JDBC). This service allows you to persist state updates using one of several different underlying database services. It is designed for a maximum of scalability, to store very large amounts of data and still over the years not lose its speed.

Java Persistence API (JPA)

This service allows you to persist state updates using a SQL or NoSQL database through the Java Persistence API. The service uses an abstraction layer that theoretically allows it to support many available SQL or NoSQL databases.

mapdb

The mapdb Persistence Service is based on simple key-value store that only saves the last value. The intention is to use this for restoreOnStartup items because all other persistence options have their drawbacks if values are only needed for reload. They:

MongoDB

This service allows you to persist state updates using the MongoDB database. It supports writing information to a MongoDB document store, as well as querying from it.

This service allows you to feed item states to an MQTT broker using the openHAB persistence strategies. The destination broker, topic and messages are configurable.

MySQL

This service allows you to persist state updates using the MySQL database. Note that other SQL databases need a separate service due to incompatibilities between different SQL databases.

rrd4j

The rrd4j Persistence service is based on a round-robin database.

Sen.Se

This service allows you to feed item data to Sen.Se web site.

SiteWhere

The SiteWhere persistence service allows openHAB item states to be forwarded to a SiteWhere server instance running locally or in the cloud. Selected events from an openHAB instance can be stored in SiteWhere under a virtual device with hardware ID specified in the persistence provider implementation.