Mit der sog. Persistenz haben die Entwickler von OpenHAB ein mächtiges Werkzeug geschaffen, das es korrekt einzusetzen gilt. Wie das gelingt erfahrt ihr in diesem Beitrag.

Nutzen einer Persistenz

Eine Persisten bedeutet nichts weiter, als die Werte der Automatisierungsanlage zu speichern, zB. in einer Datenbank. Entweder nachdem sie sich verändert haben, oder im Intervall zB. alle Stunde. Auf Basis dieser Datenbank kannst du:

  • Durchschnittswerte im zurückliegenden Zeitraum berechnen und verwenden
  • Werte nach einem Neustart wiederherstellen
  • Diagramme und Auswertungen

Die gängigsten Persistenzen und deren Unterschiede

Eine Liste aller verfügbarer Persistenzen gibt es hier. Aus meiner Sicht sind die wichtigesten folgende:

RRD4J
RRD4J ist die Standard-Persistenze für OpenHAB. Sie ist schnell, zuverlässig und dauerhaft Wartungsfei. Sie ist jedoch nicht exakt, auswertbar und verträglich mit SD-Karten.
Schnell = kurze Reaktionszeiten, gute Performance
Zuverlässig = immer ein Ergebnis, keine Störungen, keine Ausfälle
Wartungsfrei = keinerlei Wartung erforderlich
Nicht exakt = Daten werden mit der zeit aggregiert / gelöscht
Nicht auswertbar = Kein Zugriff wie bei JDBC
SD-Karten = häufige schreibzugriffe beschädigen SD-Karten

JDBC
JDBC steht für Java DB Connector und bedeutet nichts weiter als die Verwendung einer beliebigen Datenbank über das JDBC-Protokoll. Mit allen Vor- und Nachteilen dieser Datenbank. Sofern diese stabil läuft und nicht auf dem Rasp. mit SD-Karte betrieben wird, steht dem fast nichts im Weg. Ledigleich das Thema Wartung, denn über JDBC findet kein Aufräumen statt, die Daten werden fortlaufend und unbegrenz gespeichert. Bis die Platte voll ist. Dies gilt es zu vermeiden, und ist garnicht so trivial wie es klingt.

InfluxDB
Eine relative neue Datenbank, geschaffen um Daten in zeitliche Serien zu sortieren und auswertbar zu machen. Dies klingt für unseren Anwendungsfall passend, sofern diese nicht – ich wiederhole mich – auf der SD-Karte läuft.

Meine Empfehlung

Ich persönlich setze auf eine im Internet betriebe MySQL Datenbank. Diese läuft stabil, außreichend sicher und ist durch SQL Mechanismen wartbar, wenn auch mit etwas Aufwand. Als Service biete ich diese Art von Persistenz ebnfalls an, siehe Services.

Categories:

Tags:

Noch keine Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert


The reCAPTCHA verification period has expired. Please reload the page.

Haftungsausschluss

Die Inhalte meines Blogs dienen ausschließlich der allgemeinen Information und Unterhaltung. Sie stellen keine professionelle Beratung oder Anleitung dar und erheben keinen Anspruch auf Richtigkeit, Vollständigkeit oder Aktualität. Die Anwendung der Inhalte dieses Blogs erfolgt auf eigene Gefahr und Verantwortung des Nutzers. Ich übernehme keine Haftung für Schäden oder Verluste, die direkt oder indirekt durch die Nutzung oder Nichtnutzung der Inhalte dieses Blogs entstehen.

Produktplatzierungen

In diesem Beitrag befinden sich Produktplatzierungen. Dabei handelt es sich um Produkte, welche ich aus eigener Motivation heraus gekauft und selbstverständlich bezahlt habe. Für die Platzierung in meinen Beiträgen erhalte ich keinerlei Gegenleistung von Seiten des Herstellers. Die verlinkten Produkte sind zum überwiegenden Teil provisioniert, d.h. ich erhalte beim Verkauf eine kleine Provision. Als Amazon-Partner verdiene ich an qualifizierten Verkäufen.

Kategorien