howto:datenmengen
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| howto:datenmengen [2020/04/22 22:36] – typo boenki | howto:datenmengen [2024/05/18 10:16] (aktuell) – [Performance der Middleware erhöhen: Datenaggregation / Cache] jau | ||
|---|---|---|---|
| Zeile 29: | Zeile 29: | ||
| delete FROM `data` where timestamp< | delete FROM `data` where timestamp< | ||
| </ | </ | ||
| - | Das Beispiel löscht alle Daten die vor den letzten 24h liegen. | + | Das Beispiel löscht alle Daten die vor den letzten 24h liegen. |
| === weich === | === weich === | ||
| Zeile 35: | Zeile 35: | ||
| Dazu steht das Script [[https:// | Dazu steht das Script [[https:// | ||
| < | < | ||
| - | mysql --user=root -praspberry | + | sudo mysql --user=root -praspberry |
| Welcome to the MySQL monitor. | Welcome to the MySQL monitor. | ||
| Your MySQL connection id is 37217 [..] | Your MySQL connection id is 37217 [..] | ||
| Zeile 72: | Zeile 72: | ||
| </ | </ | ||
| - | Mit den folgenden Einträgen in einer crontab hält man den Cache aktuell. Erstellt wird die crontab mit: ' | + | Mit den folgenden Einträgen in einer crontab hält man den Cache aktuell. Erstellt wird die crontab mit: '' |
| Das Script legt nur an, was noch nicht angelegt wurde und läuft daher nur kurz: | Das Script legt nur an, was noch nicht angelegt wurde und läuft daher nur kurz: | ||
| < | < | ||
| Zeile 80: | Zeile 80: | ||
| </ | </ | ||
| - | Anmerkung: | + | < |
| - | wenn die Last auf dem System hoch ist, kann die Aggregation schon mal länger dauern als das Intervall zwischen zwei Aufrufen. | + | |
| Das kann dazu führen, dass die Last weiter ansteigt, da die Aggregation dann ein weiteres Mal aufgerufen wird etc. | Das kann dazu führen, dass die Last weiter ansteigt, da die Aggregation dann ein weiteres Mal aufgerufen wird etc. | ||
| - | In diesem Fall empfiehlt sich der Einsatz eines Wrappers, der verhindert, dass die Aggregation mehrfach läuft, z.B. " | + | In diesem Fall empfiehlt sich der Einsatz eines Wrappers, der verhindert, dass die Aggregation mehrfach läuft, z.B. " |
| + | === flock === | ||
| Hierzu werden obige Cron-Einträge ergänzt um: | Hierzu werden obige Cron-Einträge ergänzt um: | ||
| < | < | ||
| flock -n / | flock -n / | ||
| </ | </ | ||
| - | der Eintrag für " | + | der Eintrag für " |
| < | < | ||
| */10 * * * * flock -n / | */10 * * * * flock -n / | ||
| </ | </ | ||
| - | Anm.: Die Einträge für " | + | So stellt man sicher das nie mehr als höchstens 3 Aggregate-Jobs gleichzeitig (minute, hour, day) laufen. |
| + | < | ||
| + | |||
| + | === Im Falle eines Docker-Setups zu beachten === | ||
| + | Bei dem Einsatz von Docker funktionieren bestimmte Teile der Anleitung etwas anders. Es muss z.B. erstmal der Docker Container betreten werden. Welche ID der Dockercontainer hat findet Ihr mittels des folgenden Befehls heraus: | ||
| + | < | ||
| + | docker ps | grep volkszaehlerorg_volkszaehler | ||
| + | </ | ||
| + | |||
| + | danach könnt ihr den docker Container betreten mittels des folgenden Befehls: | ||
| + | < | ||
| + | docker exec -it --user root hier-die-id-von-eben-eintragen sh | ||
| + | </ | ||
| + | |||
| + | hier kann die aggregation | ||
| + | < | ||
| + | php / | ||
| + | </ | ||
| === Aggregation prüfen === | === Aggregation prüfen === | ||
howto/datenmengen.1587587818.txt.gz · Zuletzt geändert: von boenki