DS18S20 - Volumen Filelog reduzieren

Begonnen von Muschelpuster, 21 Mai 2015, 07:17:53

Vorheriges Thema - Nächstes Thema

Prof. Dr. Peter Henning

Ich glaube ebenfalls nicht, dass sich die Anzahl der Nachkommastellen signifikant auf die Darstellungsgeschwindigkeit auswirkt.

LG

pah

Muschelpuster

Nein, die Anzahl der Nachkommastellen wohl kaum. Aber die Anzahl der Werte! Hier ist deutlich zu beobachten, wie die Geschwindigkeit mit wachsender Dateigröße sinkt und ich habe nur ein Leseintervall von 240 Sekunden, aber eben auf 6 Werte. Umso mehr Nachkommastellen, umso größer ist die Wahrscheinlichkeit einer Änderung zwischen 2 Messungen. Daher reduziert sich die Datenmenge schon deutlich, wenn man das event-on-change-reading auf den gerundeten Wert anwendet.
Alternativ könnte man evtl. noch die monatliche Logdatei auf täglich oder wöchentlich umstellen, zumal in diesem Fall eine Aufbewahrung von 1-2 Monaten völlig ausreicht. OK, täglich ist vermutlich kein Problem, aber geht auch wöchentlich (nur ml so aus purem Interesse gefragt)?
Eine weitere Alternative ist, alles auf Datenbank umzustellen, aber das steht eigentlich deutlich weiter hinten auf meiner Roadmap und ich mag aus Zeitgründen hier nun keine weitere Baustelle aufreißen. Dazu möchte ich erst einmal mehr Sicherheit im Umgang mit FHEM bekommen.

runde Grüße
Niels
fhem @ ZBOX mit 1,6MHz Celeron, 4GB RAM & 120GB SSD mit Debian Bullseye # MiLight # Homematic via CCU3 # W&T WebIO # Rademacher DuoFern # ESPeasy # logdb@mysql # configdb@mysql # Shelly @ MQTT2 # go-eCharger mit PV-Überschussladung via DOIF

Prof. Dr. Peter Henning

Das ist, pardon das direkte Wort, immer noch Unsinn. Natürlich dauert es eine ganze Weile, aus einigen zehntausend Werten die paar herauszusuchen, die man für einen kurzen Plot benötigt - das macht das FileLog Modul, das vom SVG-Modul mit den Suchparametern aufgerufen wird.

Aber erstens ist es tatsächlich Unsinn, minütliche Temperaturwerte über einen ganzen Monat aufzuzeichnen - die schaut niemand jemals wieder an.

Und zweitens ist es für Langzeitaufzeichnungen Unsinn, jeden Sensor in eine eigene Zeile zu schreiben. Dafür macht man eine ReadingsGroup auf und lässt diese über einen zyklischen Timer z.B. alle 5 Minuten abfragen. Hat somit alle z.B. Temperaturen zu einem gegebenen Zeitpunkt in einer Zeile, und die Abfrageintervalle der Einzelsensoren sind vollkommen irrelevant.

LG

pah

Muschelpuster

#18
Zitat von: Prof. Dr. Peter Henning am 22 Mai 2015, 07:51:26Das ist, pardon das direkte Wort, immer noch Unsinn.
Wenn es so ist, dann ist es so  ;)

Zitat von: Prof. Dr. Peter Henning am 22 Mai 2015, 07:51:26Und zweitens ist es für Langzeitaufzeichnungen Unsinn, jeden Sensor in eine eigene Zeile zu schreiben. Dafür macht man eine ReadingsGroup auf und lässt diese über einen zyklischen Timer z.B. alle 5 Minuten abfragen. Hat somit alle z.B. Temperaturen zu einem gegebenen Zeitpunkt in einer Zeile, und die Abfrageintervalle der Einzelsensoren sind vollkommen irrelevant.
Hey, genau der Hinweis auf die ReadingGroups hat mir gefehlt! Schon studiert und in der Umsetzung  ;D
Dank vernünftiger Benennung der Sensoren ist das auch gut zu greifen:define Terrarium_reading_grp readingsGroup 1Wire_Terra.*:(Temperatur)|(Luftfeuchte)
Nun muss ich nur noch kapieren, wie ich das zyklisch logge...
Ich bin begeistert, nur fällt es mir noch sehr schwer, die passenden Optionen zu finden, da die Möglichkeiten unglaublich sind. Ich denke da immer noch zu stark in den Dimensionen meiner Buyware-Büchse, bei der man alles aus den wenigen zur Verfügung stehenden Modulen bauen muss. FHEM hingegen bietet ja für jede Lebenslage das passende Modul, man muss es nur kennen bzw. die passenden (Such)worte formulieren können um es zu finden.

begeisterte Grüße
Niels
fhem @ ZBOX mit 1,6MHz Celeron, 4GB RAM & 120GB SSD mit Debian Bullseye # MiLight # Homematic via CCU3 # W&T WebIO # Rademacher DuoFern # ESPeasy # logdb@mysql # configdb@mysql # Shelly @ MQTT2 # go-eCharger mit PV-Überschussladung via DOIF

Prof. Dr. Peter Henning

Mit einem at oder DOIF einen Event generieren und den zuerst im Event Monitor überprüfen und dann in einem FileLog abfangen.

LG

pah

Muschelpuster

OK, Teil 1 war mir klar, ein Event schlechthin zu erzeugen ist auch nicht das Thema. Doch welches Event beinhaltet alle Messwerte? Da ist meine Suche erfolglos geblieben, oder soll das Event wirklich nur ein Trigger sein und ich muss im Filelog die Werte aktiv lesen (so das überhaupt geht...)?

unklare Grüße
Niels
fhem @ ZBOX mit 1,6MHz Celeron, 4GB RAM & 120GB SSD mit Debian Bullseye # MiLight # Homematic via CCU3 # W&T WebIO # Rademacher DuoFern # ESPeasy # logdb@mysql # configdb@mysql # Shelly @ MQTT2 # go-eCharger mit PV-Überschussladung via DOIF