Hallo,
nachdem mich die Auswertung von Daten aus der Datenbank schon länger beschäftigt, aber alle Lösungsansätze mit eval, logic, userfunction mich nie voll endlich zufrieden gestellt haben, gibt es nun dazu einen Plugin-Entwurf!
Was macht das Plugin?
Das Plugin bietet eine Funktionserweiterung zum Database Plugin und ermöglicht somit die einfache Auswertung von Messdaten. Basierend auf den Daten in der Datenbank können bspw. Auswertungen zu Verbrauch (heute, gestern, ...) oder Auswertungen zu Minimal- und Maximalwerten gefahren werden. Diese Auswertungen werden zyklisch zum Tageswechsel, Wochenwechsel, Monatswechsel oder Jahreswechsel erzeugt. Um die Zugriffe auf die Datenbank zu minimieren, werden diverse Daten zwischengespeichert.
Anforderungen
Es muss eine Instanz des Datenbank vorhanden sein. Getestet ist es bislang mit dem Database-Plugin mit MySQL und nur einer laufenden Instanz. SQLite funktioniert aktuell (noch) nicht weil dort andere SQL Abfragen zum Einsatz kommen.
Konfiguration
Die Items mit einem DatabaseAddon-Attribut müssen im gleichen Pfad sein, wie das Item, für das das Database Attribut konfiguriert ist. Bedeutet. Die Items mit dem DatabaseAddon-Attribute müssen im Kinder oder Kindeskinder oder Kindeskinderkinder des Items sein, für das das Database Attribut konfiguriert ist.
Beispiel:
Auswertefunktionen:
Verfügbar sind aktuell 3 Auswertegruppen mit Verbrauch, Zählerstand und Wertehistorie min/max. Auch diverse structs für die einfache Anwendung sind verfügbar.
Wie geht es weiter?
Alles weitere findet ihr hier: https://github.com/sisamiwe/shng-db_addon-plugin
Wie ihr das am besten verwenden könnt, ist hier beschrieben: https://knx-user-forum.de/forum/supp...-herunterladen
Ich möchte hier zum erweiterten Test einladen. Onkelandy und ich haben das Plugin bereits seit einiger Zeit in Betrieb bzw. getestet.
Wenn das Plugin weiter getestet wurde, stelle ich einen PR, um das Plugin in das Repo aufnehmen zu lassen.
Beste Grüße
nachdem mich die Auswertung von Daten aus der Datenbank schon länger beschäftigt, aber alle Lösungsansätze mit eval, logic, userfunction mich nie voll endlich zufrieden gestellt haben, gibt es nun dazu einen Plugin-Entwurf!
Was macht das Plugin?
Das Plugin bietet eine Funktionserweiterung zum Database Plugin und ermöglicht somit die einfache Auswertung von Messdaten. Basierend auf den Daten in der Datenbank können bspw. Auswertungen zu Verbrauch (heute, gestern, ...) oder Auswertungen zu Minimal- und Maximalwerten gefahren werden. Diese Auswertungen werden zyklisch zum Tageswechsel, Wochenwechsel, Monatswechsel oder Jahreswechsel erzeugt. Um die Zugriffe auf die Datenbank zu minimieren, werden diverse Daten zwischengespeichert.
Anforderungen
Es muss eine Instanz des Datenbank vorhanden sein. Getestet ist es bislang mit dem Database-Plugin mit MySQL und nur einer laufenden Instanz. SQLite funktioniert aktuell (noch) nicht weil dort andere SQL Abfragen zum Einsatz kommen.
Konfiguration
Die Items mit einem DatabaseAddon-Attribut müssen im gleichen Pfad sein, wie das Item, für das das Database Attribut konfiguriert ist. Bedeutet. Die Items mit dem DatabaseAddon-Attribute müssen im Kinder oder Kindeskinder oder Kindeskinderkinder des Items sein, für das das Database Attribut konfiguriert ist.
Beispiel:
Code:
temperatur: type: bool database: yes auswertung: type: foo heute_min: type: num database_addon_fct: heute_min gestern_max: type: num database_addon_fct: heute_minus1_max
Verfügbar sind aktuell 3 Auswertegruppen mit Verbrauch, Zählerstand und Wertehistorie min/max. Auch diverse structs für die einfache Anwendung sind verfügbar.
Wie geht es weiter?
Alles weitere findet ihr hier: https://github.com/sisamiwe/shng-db_addon-plugin
Wie ihr das am besten verwenden könnt, ist hier beschrieben: https://knx-user-forum.de/forum/supp...-herunterladen
Ich möchte hier zum erweiterten Test einladen. Onkelandy und ich haben das Plugin bereits seit einiger Zeit in Betrieb bzw. getestet.
Wenn das Plugin weiter getestet wurde, stelle ich einen PR, um das Plugin in das Repo aufnehmen zu lassen.
Beste Grüße
Kommentar