[vz-users] Probleme mit Dateisystem? Speicherkarte?

Heine.Thomas at online.de Heine.Thomas at online.de
Fr Jul 29 09:18:13 CEST 2022


Hallo,

Ich hab inzwischen über 50 Kanäle und nur teilweise ne hohe Auflösung, 
da ich das gerne so hab.
Länger als 2-3 Monate zurück brauche ich aber eigentlich keine Daten.
Daher lösche ich öfters Einträge raus.
Wenn der Platz reserviert bleibt, dann ist mir schon klar, warum das 
File inzwischen so groß war.

Ich verstehe jedoch dann nicht ganz, warum beim "Tabelle leeren" der 
Platz *nicht* reserviert bleibt.

Gibt es ne andere Möglichkeit, den reservierten platz wieder freizugeben?

Aggregation ist übrigens aktiv (sonst wäre der Ordner ja nicht 1,2GB groß).

Gruß
Thomas

Am 29.07.2022 um 09:01 schrieb Jakob Hirsch:
> On 2022-07-28 13:58, Heine.Thomas at online.de wrote:
>> Damit hab ich dann herausgefunden, dass die Datei
>> //var/lib/mysql/volkszaehler/data.idb/
>> der Verursacher ist (24 gb)
>
> Ja, das ist bei mysql/mariadb leider so. Wenn man Daten löscht, bleibt 
> der Platz im FS trotzdem belegt, in der Datei werden dann neue Daten 
> da reingeschrieben.Man kann das ein bisschen besser handhaben, wenn 
> man innodb_file_per_table setzt, dann werden für neue Tabellen jeweils 
> eigene Dateien erstellt.
>
> Kaputt ist die eher nicht, du hast wahrscheinlich nur sehr viele Daten 
> drin. Die Frage ist nur, warum da so viel drin ist. Ich logge seit 
> 2011 und habe ca. 66M Einträge in vz.data, das sind insgesamt ca. 3,5 
> GiB.
>
> Loggst du wirklich so viel? Dann solltest du dir die Möglichkeiten der 
> Aggregation anschauen. Also sowohl beim loggen selbst (aggtime oder 
> sowas beim vzlogger) also auch im Nachgang mit dem aggregate-script.
> Normalerweise braucht man ja keine Auflösung besser als eine Sekunde 
> (ich fasse die Impulse in 5s-Intervallen zusammen) und ältere Daten 
> können noch gröber aggregiert werden.
>
> Falls du nicht weißt, woher die vielen Daten kommen, könntest du 
> diesen Query mal laufen lassen (könnte auf einem Raspi aber etwas 
> länger dauern), damit siehst du welche channel_id wieviele Einträge hat:
>
> select channel_id, count(timestamp) from data group by 1 order by 2;
>
>
>
> Gruß
> J
-------------- nächster Teil --------------
Ein Dateianhang mit HTML-Daten wurde abgetrennt...
URL: <http://demo.volkszaehler.org/pipermail/volkszaehler-users/attachments/20220729/8f1c426e/attachment.html>


Mehr Informationen über die Mailingliste volkszaehler-users