NEWS
Influx2 DB - retentiontime ändert sich "von alleine"
-
@mickym Das würde ich wohl machen, wenn die SSD unendlich Speicherplatz hätte. Da müsste ich erstmal hochrechnen, wieviel die aktuelle Datenbank belegt und dann hochrechnen. 2GB Reserve lasse ich für Updates und Co. Einige Leute entschlacken wohl ältere Werte, um Platz zu sparen.
-
@peterfido Ich bin kein Influx Experte - ich hab mir das nur mal aus Neugierde angeschaut und dann diese Online Kurse mal durchgemacht.
In der Regel lässt man auf der Influx DB eine Routine laufen, die die Daten konsolidiert. Nehmen wir mal an, es wird mehrfach pro Stunde irgendwas geloggt. Dieses Skript erstellt dann in einem neuen Bucket aus den vorhanden Werten - Durchschnitte auf Tagesbasis. Die können dann ggf. ewig bleiben oder Du konsolidierst ebenfalls auf Wochenbasis. Letztlich interessiert Dich nach 1 Jahr nicht mehr ob irgendein Wert um 15 Uhr oder 18 Uhr erzeugt wurde.
Für die erste Datenerfassung zum Beispiel über den influx Adapter, langt dann eine Aufbewahrungszeit von 1-3 Monaten, wenn monatlich dieser Konsolidierungsjob läuft. Die nennen den bei Influx etwas anders, aber so ist das Ganze gedacht.
Wie gesagt, ich bin was Influx betrifft keiner, der Dir Skripte macht, aber schau Dir diese University an - da gibts paar Onlinekurse.
-
@mickym sagte in Influx2 DB - retentiontime ändert sich "von alleine":
Letztlich interessiert Dich nach 1 Jahr nicht mehr ob irgendein Wert um 15 Uhr oder 18 Uhr erzeugt wurde.
darüber liesse sich trefflich debattieren.
Bei Daten die du im Jahresvergleich betrachtest sieht das ggf. anders aus -
@homoran Wie Du das konsolidierst ist ja Dir überlassen, jedenfalls ist das was von dem Influx Team empfohlen wird, regelmäßig zu konsolidieren. Man kann ja auch Maxima oder was weiß ich nehmen - oder nur Daten, wenn die Sonne schien - der Fantasie sind keine Grenzen gesetzt. Von mir aus langt ja auch einmal im Jahr. Nur Du wirst mir nicht erzählen, dass nach 10 Jahren noch 1000ende Werte innerhalb eines Tages brauchst.
-
@mickym Ich habe nun alle paar Wochen das Phänomen, dass die in der InfluxDB im Bucket eingestellte Retentiontime "forever" sich scheinbar von allein auf 365d verändert und ich meine historischen Daten in diesem Bucket verlieren.
In der Instanz zu diesem Bucket im ioBroker habe ich "keine automatische Lösung" eingestellt. Starte ich nun (nachdem sich in der InfluxDB die Retentiontime auf 365d verändert hat) die Instanz neu, wird die 365d auf "forever" geändert.
Liegt die Ursache für diese spontane Änderung der Retentiontime ggfs. beim ioBroker? Wie kann ich der Usache auf die Spur kommen und abstellen?
-
@cocomp Ehrlich gesagt, kann ich dir da nicht viel sagen, da ich die Influx nur mal als Test eingerichtet habe und nicht produktiv nutze. Aber vielleicht gibts ja noch andere Leute, ob die das gleiche Problem haben.
Sorry, dass ich keine qualifizierte Antwort geben kann.
-
@cocomp Ich habe auch keine automatische Löschung im Adapter und in der influxdb selbst im Bucket auf forever stehen.
allerdings muss man dann den freien Speicherplatz im Augebehalten. -
-
@marc-berg Ja, nur bei mir sind sowohl in der InfluxDb als auchbin ioBroker die Einstellung „nie löschen“ hinterlegt. Aber irgendetwas verändert dann die Einstellung in der InfluxDb auf 365d, während im ioBroker die Einstellung immer noch korrekt ist. Ich kann dann in der InfluxDB die Einstellung nicht auf „forever“ anpassen. Starte ich im ioBroker die InfluxDb-Instanz aber neu, wechselt auch in Influx die Einstellung für das Bucket auf „forever“…..
Nur finde ich die Störquelle / den Auslöser nicht.
-
@cocomp sagte in Influx2 DB - retentiontime ändert sich "von alleine":
Ja, nur bei mir sind sowohl in der InfluxDb als auchbin ioBroker die Einstellung „nie löschen“ hinterlegt.
Bitte zeigen (Einstellung in ioBroker). Das wäre sehr ungewöhnlich.
-
-
@cocomp
Es gibt nur diese eine Instanz?Exportiere mal bitte die Einstellungen:
Was steht da hinter "retention"?
-
@marc-berg said in Influx2 DB - retentiontime ändert sich "von alleine":
@cocomp
Es gibt nur diese eine Instanz?Exportiere mal bitte die Einstellungen:
Was steht da hinter "retention"?
Es gibt eine weitere Instanz für ein anderes Bucket mit einer Retention von 30d, die aber keine Probleme macht.
Hier der gewünschte Auszug aus der json:
{ "debounce": 1000, "retention": 0, "dbname": "nodered", "host": "192.168.178.33", "protocol": "http", "path": "", "port": 8086, "user": "", "password": "", "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", "organization": "cohrs", "round": 4, "seriesBufferMax": 0, "seriesBufferFlushInterval": 600, "changesRelogInterval": 0, "changesMinDelta": 0, "reconnectInterval": 10000, "pingInterval": 15000, "requestTimeout": 30000, "validateSSL": true, "dbversion": "2.x", "usetags": false, "pingserver": true, "blockTime": 0, "debounceTime": 0, "disableSkippedValueLogging": false, "enableLogging": false, "customRetentionDuration": 365, "relogLastValueOnStart": true }
-
Okay, passt.
Du hattest eingangs geschrieben, dass die Änderung der Retentiontime über die Weboberfläche nicht funktionierte. Kam da eine Fehlermeldung? Welche Version der InfluxDB hast du?
-
Das ist eine InfluxDB2. Der "Fehler" tritt nur bei einem von insgesamt 6 Buckets auf.
Ich kann weder über die Weboberfläche noch via CLI via "influx bucket update --id bxxxxxxxxxxxxxx -r 0". Es gibt keine Fehlermeldung, die Retention-Time bleibt schlicht auf 365d stehen.
Über den Neustart der Instanz im ioBroker wird die Retention-Time problemlos geändert.Ein Mysterium.....
-
@cocomp sagte in Influx2 DB - retentiontime ändert sich "von alleine":
Das ist eine InfluxDB2.
Dass eine "2" vor dem Punkt steht ist klar, interessant wären jetzt die Ziffern nach "2."
-
@marc-berg said in Influx2 DB - retentiontime ändert sich "von alleine":
@cocomp sagte in Influx2 DB - retentiontime ändert sich "von alleine":
Das ist eine InfluxDB2.
Dass eine "2" vor dem Punkt steht ist klar, interessant wären jetzt die Ziffern nach "2."
Das ist eine 2.2.1, die auf meiner Synolgy in einem Docker arbeitet.
-
@cocomp sagte in Influx2 DB - retentiontime ändert sich "von alleine":
Das ist eine 2.2.1, die auf meiner Synolgy in einem Docker arbeitet.
Die Version ist fast drei Jahre alt. Ein Update wäre sicher eine Überlegung Wert.
-
@marc-berg said in Influx2 DB - retentiontime ändert sich "von alleine":
@cocomp sagte in Influx2 DB - retentiontime ändert sich "von alleine":
Das ist eine 2.2.1, die auf meiner Synolgy in einem Docker arbeitet.
Die Version ist fast drei Jahre alt. Ein Update wäre sicher eine Überlegung Wert.
Den Gedanken hatte ich auch schon....aber bisher galt "never touch a running system"
Denke aber nicht, dass da der Fehler herkommt, weil es eben nur das eine Bucket betrifft. Ein Versuch wäre es wert...