CCU-Historian: Ein Langzeitarchiv für die CCU

Das Langzeitarchiv für HomeMatic

Moderator: Co-Administratoren

MathiasZ

Re: CCU-Historian: Ein Langzeitarchiv für die CCU

Beitrag von MathiasZ » 30.06.2020, 01:49

Ich habe es mal mit ntfs probiert.
Schau ma moi.

Benutzeravatar
Hoppla
Beiträge: 341
Registriert: 29.12.2018, 19:39
System: Alternative CCU (auf Basis OCCU)
Wohnort: Leipzsch
Hat sich bedankt: 35 Mal
Danksagung erhalten: 12 Mal

Re: CCU-Historian: Ein Langzeitarchiv für die CCU

Beitrag von Hoppla » 17.11.2020, 08:19

Guten Morgen
Hier läuft ccu-Historian auf einer DS 220+.
Im Ordner /volume1/@appstore/ccu-historian/data befindet sich eine Datei
history.mv.db mit der Größe 2.181.840.896...

Ich hab gestern den ganzen Abend gesucht, hier und im Wiki, aber nicht herausgefunden was ganau das ist und vor allen wie ich diese Datei in der Größe drastisch reduziere.
In der ccu-historian.config jedenfalls ist nichts zu finden.

Danke

NickHM
Beiträge: 3723
Registriert: 23.09.2017, 12:04
Hat sich bedankt: 64 Mal
Danksagung erhalten: 117 Mal

Re: CCU-Historian: Ein Langzeitarchiv für die CCU

Beitrag von NickHM » 17.11.2020, 08:54

Hoppla hat geschrieben:
17.11.2020, 08:19
.
Im Ordner /volume1/@appstore/ccu-historian/data befindet sich eine Datei
history.mv.db mit der Größe 2.181.840.896...
Hallo

ohne die Quellen jetzt lange raus zu suchen, den das kannst Du selbst hier im Forum oder besser auf der Historian WEb oder GitHub Seite tun ...

Das ist die Datenbank.

Mit diesem Tool (Historian) wird erst mal jeder Datenpunkt aufgezeichnet. Bei anderen Tools muss ich die Datenpunkte auswählen, die mich interessieren. Das ist halt Ansichtssache, was besser passt.
Du kannst folgendes tun
- Datenpunkte die nicht interessieren auf "inaktiv" setzen und auf Wunsch auch in Historian in der Liste unsichtbar machen
- Bei allen Datenpunkten einen Schwellwert eingeben, der überschritten sein muss, um einen neuen Eintrag in die Datenbank zu schreiben. Das geht über die Funktion "Delta" . Dann wird z.B. nicht alle 3min die übermittelte gleiche Temperatur aufgezeichnet (21 Grad) sondern erst wen der Wert z.B. 0.2 Grad vom letzten Wert abweicht.
Bei Logikwerten 0 / 1 kann man 0.5 eintragen. Dann werden nur noch Änderungen aufgezeichnet.
Nachteil kann bei Werten, die sich lange nicht ändern sein, dass in einem Diagramm im gewählten Zeitraum kein Datenpunkt in der DB ist.
- es gibt auch Scripte vom Entwickler, die das Delta bei allen Datenpunkten eines bestimmten Typs default eintragen. Da muss man nicht 1200 mal klicken.
- Nachdem das Delta für alle Datenpunkte die relevant (nicht inaktiv) sind eingetragen ist, gibt es zwei Kommandozeilenbefehle ...
Der eine bereinigt die Datenbank von den überflüssigen Einträgen und der zweite komprimiert die Datenbank
Auch dazu gibt es eine Anleitung. Backup machen, Historian anhalten, Datenbank bearbeiten, Neustart

Danach sollte die Datenbank sehr viel kleiner sein.

Benutzeravatar
Baxxy
Beiträge: 10603
Registriert: 18.12.2018, 15:45
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 594 Mal
Danksagung erhalten: 2173 Mal

Re: CCU-Historian: Ein Langzeitarchiv für die CCU

Beitrag von Baxxy » 17.11.2020, 09:20

Hoppla hat geschrieben:
17.11.2020, 08:19
history.mv.db mit der Größe 2.181.840.896...
Das ist mit ziemlicher Sicherheit deine Historian Datenbank die schon auf über 2GB gewachsen ist.
Vermutlich weil dein Historian jeden "Pups" aufzeichnet den deine Zentrale von sich gibt.

Was kann man machen:
  • unwichtige Datenpunkte über die Datenpunktliste auswählen und über Werkzeuge --> "Historien löschen" löschen
  • dieselben Datenpunkte dann über Werkzeuge --> Datenpunktkonfiguration auf inaktiv & versteckt setzen damit nicht weiter aufgezeichnet werden
  • die wichtigen Datenpunkte mal durchgehen und die Vorverarbeitung aller Wertaktualisierungen einrichten.
  • zuletzt den Historian stoppen, mittels recalc die Datenkompression berechnen lassen, mittels compact die Datenbank kompaktieren
    (Startparameter)
Möglichst vor den Aktionen ein Backup der aktuellen Datenbank anlegen!

Benutzeravatar
Hoppla
Beiträge: 341
Registriert: 29.12.2018, 19:39
System: Alternative CCU (auf Basis OCCU)
Wohnort: Leipzsch
Hat sich bedankt: 35 Mal
Danksagung erhalten: 12 Mal

Re: CCU-Historian: Ein Langzeitarchiv für die CCU

Beitrag von Hoppla » 17.11.2020, 21:34

Guten Abend.

Danke für die Unterstützung.
Ich habe die Punkte Datenpunkte inaktiv setzen und Löschen durchgeführt.
Es wurden laut Ausgabe im GUI hunderttausende Datenpunkte gelöscht, einzelne Parameter alleine fast 400000.

Das Datenbankfile ist nicht ein einziges Byte kleiner geworden.
Die Größe ist dadurch immer noch so, das ich nichtmal ein Backup auf eine 2TB-Platte ziehen kann.

Der letzte Punkt:
"zuletzt den Historian stoppen, mittels recalc die Datenkompression berechnen lassen, mittels compact die Datenbank kompaktieren
(Startparameter)"
lässt mich hilflos zurück.
Ich finde keinen Menüpunkt zum Aufräumen der Datenbank.
Ich hab keine Ahnung was ich wo eingeben muss, ich finde wohl Befehle und Parameter auf Github, aber ein Syntaxbeispiel fehlt.
Java ist ein Buch mit 7 Siegeln, ich kann nicht programmieren, und ich finde im Wiki und hier nichts ausser den Hinweis irgend welche Scripte zu schreiben. selbst wo man die schreibt finde ich nicht. Und da ich nicht weis nach was ich suche, ist der Verweis auf Github auch nich zielführend.

Das ganze läuft wie gesagt auf einem Synology DS 220+ , für etwas genauere hinweise wäre ich dankbar.
Ich hab kein Backup und kann keins machen solange ich dieses File nicht kleiner bekomme!
Rumprobieren ist also keine Option.


Danke!

Benutzeravatar
Baxxy
Beiträge: 10603
Registriert: 18.12.2018, 15:45
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 594 Mal
Danksagung erhalten: 2173 Mal

Re: CCU-Historian: Ein Langzeitarchiv für die CCU

Beitrag von Baxxy » 17.11.2020, 22:06

Hoppla hat geschrieben:
17.11.2020, 21:34
Rumprobieren ist also keine Option.
Verständlich.
Ich dachte die 3 ... an der
Hoppla hat geschrieben:
17.11.2020, 08:19
Größe 2.181.840.896...
stehen da nur so. Aber das deine Datenbank tatsächlich 2TB groß ist, ist ja mal richtig krass. :shock:
Hoppla hat geschrieben:
17.11.2020, 21:34
Das Datenbankfile ist nicht ein einziges Byte kleiner geworden.
Das passiert erst wenn "compact" benutzt wird (vielleicht reicht auch ein Neustart?). Wie man aber auf der Synology DS 220+ dazu vorgehen muss weiß ich nicht.
Wahrscheinlich geht das bei Dir auch gar nicht (mehr) da deine HDD vermutlich voll ist und ein temporäres dump-File (automatisch) angelegt werden müsste.

Vielleicht kennt jemand noch Tricks wie man der Größe beikommt.

Ich würde mir die Datenbank auf einen PC mit viel freiem Speicherplatz kopieren (dreifache Menge der .db) und mit einer lokalen Historian-Instanz die .db compacten.

Benutzeravatar
Hoppla
Beiträge: 341
Registriert: 29.12.2018, 19:39
System: Alternative CCU (auf Basis OCCU)
Wohnort: Leipzsch
Hat sich bedankt: 35 Mal
Danksagung erhalten: 12 Mal

Re: CCU-Historian: Ein Langzeitarchiv für die CCU

Beitrag von Hoppla » 17.11.2020, 22:37

Angehalten und neu gestartet hab ich das schon über das GUI der DS.
Das hat nichts geändert. Die Platte ist nicht voll, da sind noch 1,5 TB frei, in der DS stecken 4TB, nur wollte ich die nicht für die Datenbank benutzen ;-)

Die Frage ist jetzt: wie benutze ich compact.
Und was mir jetzt kommt von wegen 3facher Platz:
Das wäre an der DS kein wirkliches Problem, eine externe 3Tb-Platte anzuschließen. Da ist wieder die Aufgabe, dem Ding beizubringen wohin der das Tmp-File schreiben soll.

Benutzeravatar
Baxxy
Beiträge: 10603
Registriert: 18.12.2018, 15:45
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 594 Mal
Danksagung erhalten: 2173 Mal

Re: CCU-Historian: Ein Langzeitarchiv für die CCU

Beitrag von Baxxy » 18.11.2020, 00:33

Hoppla hat geschrieben:
17.11.2020, 22:37
Die Frage ist jetzt: wie benutze ich compact.
Hmm, das muss ein Historian @ Synology Nutzer beantworten. Oder du ackerst dich mal durch den 53Seitigen CCU-Historian@Synology Thread, vielleicht steht da was.
Hoppla hat geschrieben:
17.11.2020, 22:37
Und was mir jetzt kommt von wegen 3facher Platz:
Das war nur Spekulation meinerseits. Ich weiß nicht wie groß das dump-File wird und wieviel Platz für ein erfolgreiches compact frei sein muss.
Edit: Kurz auf der Zentrale getestet... Die temp.sql ist bei meiner mickrigen .db (25MB) um ca. 12% größer (28MB)
Ergo brauchst du grob 4,5TB Platz (frei 2,5TB)... alles Schätzwerte.
Hoppla hat geschrieben:
17.11.2020, 22:37
dem Ding beizubringen wohin der das Tmp-File schreiben soll.
Da hast du meines Wissens keine Eingriffsmöglichkeit. Auf der Zentrale (Add-On) wird die temp.sql direkt in /usr/local/addons/ccu-historian/ccu-historian erzeugt.

Benutzeravatar
Hoppla
Beiträge: 341
Registriert: 29.12.2018, 19:39
System: Alternative CCU (auf Basis OCCU)
Wohnort: Leipzsch
Hat sich bedankt: 35 Mal
Danksagung erhalten: 12 Mal

Re: CCU-Historian: Ein Langzeitarchiv für die CCU

Beitrag von Hoppla » 18.11.2020, 10:28

Irgendwie voll krank das System, man löscht hunderttausende Datenpunkte und die Datei wird nicht kleiner .
Muss man nicht verstehen.

NickHM
Beiträge: 3723
Registriert: 23.09.2017, 12:04
Hat sich bedankt: 64 Mal
Danksagung erhalten: 117 Mal

Re: CCU-Historian: Ein Langzeitarchiv für die CCU

Beitrag von NickHM » 18.11.2020, 12:15

Hallo

... nein dass muss man nicht verstehen, aber man könnte, wenn man sich mit dem Thema Datenbanken beschäftigen würde.
Das Löschen einzelner Einträge kennzeichnet diese nur als gelöscht, macht physisch aber keinen Platz frei.
Das ist wie bei einem Betriebssystem, wo ich Dateien i den Papierkorb lege. Mehr freier Platz auf der Platte entsteht nicht.
Oder stell Dir einen Text vor, wo Du eine Zeile als durchgestrichen formatierst. Wird der Text dadurch kürzer?

Deshalb heisst das erwähnte Zaubermittel auch Kompression, weil dadurch die frei gewordenen Lücken geschlossen und der Rest quasi nachgerückt wird.

Auf der DS muss der Dienst Historian angehalten werden. Das hattest Du ja schon geschafft.
Dann musst Du Dich auf die Kommandozeile begeben. Das könnte mit einer Terminal SSH Verbindung geschehen. Je nachdem ob Windows oder MacOS mit verschiedenen APPs.
Auf der Kommandozeile der DS warst Du schon mal ?

https://ccu-historian.de/uploads/CCU-Hi ... eitung.pdf

ab Seite 15.
- recalc räumt die Datenreihen an Hand der "Delta" Parameter auf. Das muss nur ein mal für eine datenbank gemacht werden, nachdem Delta Werte geändert wurden. Neue Werte berücksichtigen natürlich ab dann das Delta
- compact dampft die DB ein.

Ich würde trotzdem versuchen das Verzeichnis DATA irgendwo zu sichern. Kein Platz auf der DS ??


viewtopic.php?f=38&t=45169&start=10#p453216

Etwas weiter unten Beispiele für den Kommandozeilenbefehl

Antworten

Zurück zu „CCU-Historian“