Generelle Entscheidungsfrage externes Daten Logging?

Ein freundliches Hallo an das tolle Forum,

ich habe hier im Forum schon eine ganze Zeit etwas mitgelesen und mir nette Anregungen zur Umsetzung eigener Projekte geholt. Doch nun ist es soweit. Ich bin nun bei IPS gelandet, war ja voraus zusehen das es so kommt. :wink:

Meine Hardware besteht momentan vollständig aus Homematic Komponenten mit CCU2 als Zentrale.

Nach dem meine IPS Lizenz nun 2 Jahre brach lag muss ich mich nun mal in IPS ein bisschen einarbeiten. Die Möglichkeiten der CCU sind doch irgendwann begrenzt.

Soweit so gut, da kommen bestimmt noch so einige Fragen in anderen Bereichen nach.

Nun zu der aktuellen Entscheidungsfrage, auf dessen Lösung ich beim Lesen noch nicht gestoßen bin.

Gerne würde ich später externe Diagrammgeneratoren / Scripte benutzen. Dazu würde ich gerne in eine externe Datenbank loggen. Hier lokal habe ich eine größere QNAP zu stehen, welche mir auch schon für andere Dinge gut dient. Auf dieser würde ich gerne den mySQL Dienst nutzen und die Werte in eine mysql DB schreiben lassen. Spricht da etwas dagegen?

Auf der HM Seite läuft schon von Anfang an der CCU Historian mit, wo ja auch alle Werte mit Änderungen erfasst werden. Ich würde auch gerne wieder (wider besseren Wissens) alle Werte loggen und nicht unter einzelnen IPS Variablen wählen ob oder ob nicht. Wenn das Loggen nun IPS übernimmt, fliegt der CCU Historian irgendwann auch mal runter.

Hier im Forum gibt es ja auch schon einen Beitrag für PostgreSQL Datenbanken. Nach dem ich mich auch schon soweit durch die Webseite von Raketenschnecke gelesen habe zum Thema Datenbank und Pflege steht die einfache Frage an?

Ist es sinnvoll in einer Externen DB zu loggen oder nicht. Wenn ja, was wird hier an DB genutzt / empfohlen?

Oder ist die Interne DB ausreichend bei der Anbindung zur Visualisierung für zb. HighchartsPHP?

Gibt es bei der IPS DB die Möglichkeit zentral zu steuern was geloggt werden soll und was nicht? Es wäre nämlich echt mühselig die 250 Instanzen alle von Hand bei jeder Variablen das Loggin einzuschalten.

Soweit erst einmal,
Vielen Dank für die Aufklärung,

Grüße aus Hamburg
dzvo

Hallo dzvo,

willkommen im Forum.

Ich hab für mich folgende Lösung für am praktikabelsten gefunden:
Daten die in kurzen Intervallen geändert werden (z.b. Temperaturen meiner Heizung) logge ich in IPS-Variablen.
Wenn ich die Daten langfristig auswerten/vergleichen möchte schreibe ich die dann, um die Auswertungen performant zu halten, aggregiert, stunden oder tage-weise, in eine MySQL.

Der RS-DB-Analyzer (halte ich, so lange es kein ordentliches (subjektiv) natives DB-Management gibt, für unverzichtbar) räumt meine IPS-DB dann auf. Z.B. halte ich die meisten Daten in IPS-Variablen nur für 1 Monat vor. War früher unbegrenzt. Hab aber mit der Zeit bemerkt, dass ich die „alten“ hochauflösenden Daten nie nutze. Die sind für mich nur interessant zur Kontrolle irgend welcher Wertekombinationen zur Optimierung. Und alle Hochauflösenden Daten in der IPS-DB lassen die ziemlich schnell wachsen. Dadurch dauert die Sicherung der IPS-DB immer länger. Aktuell logge ich 240 Variablen (müsst ich evtl mal prüfen ob die alle notwendig sind) und meine DB hat 145 MB (regelmässige nutzung des sqlite-admins zur Bereinigung). Sie Sicherung des kompletten IPS-Verzeichnisses (600 MB) dauert keine 5 Minuten ohne Dienststopp (mit gelegentlichen DesasterRecoveryTests).

Manche Daten Logge ich auch gar nicht in IPS. Die lese ich per Script aus und schreibe die direkt in die MySQL. In IPS wird dann nur der aktuelle Zustand/Wert, mit oder ohne Variable visualisiert.

Meine MySQL DB und andere Daten (auf einer Synology) sichere ich nächtlich auf eine 2 Synology die für den Sicherungszeitraum aufgeweckt wird. MySQL-IPSDB-Grösse 80MB + IPS-WikiDB 420MB dauert 15 Minuten on the fly.

Die langfristigen Daten in MySQL nehme ich dann für statistische Auswertungen.

Warum MySQL? Kost nix, super dokumentiert, (mit der Synology) einfach zu sichern und zurück zu sichern, spielt super mit php, viele gute Dokus, Wikis und Foren im Netz die mich als DAU, mit meinen nicht gerade kleinen Ansprüchen, fast immer zum Erfolg geführt haben (manchmal hab ich auch einfach nicht umsetzbare Ideen).

Die Visualisierung erfolgt bei mir ausschliesslich mit HighCharts.

Hoffe dass hier noch einige der SQL-Gurus vielleicht noch andere Ideen posten.

Auf Deine letzte frage hab ich leider keine Antwort. Bin mir aber fast sicher, dass einer von den Gurus hier schon sowas hat. Mit dem RS-DB-Analyzer kannst Du zumindest das Logging abschalten. Anschalten geht nicht.

Weiterhin vies Spass und Erfolg mit IPS.