DB wird auch nach Datenlöschung nicht kleiner – was läuft hier falsch?
F (aus IPS-Forendiskussion):
Wir haben hier ja schon oft diskutiert das dies in einer SQLite ja eigentlich Blödsinn ist, da die Daten nur als gelöscht markiert aber nicht physisch gelöscht werden. Die Filegröße bleibt gleich.
Ist das bei deiner Löschfunktion auch so, oder reorganisierst du die Datenbank hinterher ?
Macht es also Sinn für die Behaltezeiten einzupflegen, oder ist das nur Makulatur – in Bezug auf Filegröße ?
A: Also: Blödsinn ist das m.E. nicht. zwar wird das File nicht kleiner (was durch es reagggregieren übrigens auch nicht wird), dazu müsste man IPS runterfahren und manuell verdichten.
Der Vorteil ist schon gegeben, da der durch gelöschte Daten eingesparte File-Space anschließend mit neuen Datensätzen aufgefüllt wird. d.h. dein File wächst solange nicht, bis die vor dem Löschen erreichte Anzahl von Datensätzen wieder erreicht ist. Und hier spielt der DB-Analyzer einen richtigen Vorteil aus: durch das tägliche Löschen ereicht man, dass das File so klein wie möglich bleibt (und nicht in der Größe oszilliert, wenn man alle paar Monate man. löschen + verdichten würde).
sehr gut zu sehen ist das hier: RS.SYS-Health (Chart ganz unten)
vielleicht noch ein Nachtrag, um den Vorteil des zyklischen Löschens zu verdeutlichen:
würde man alle Variablen mit einer Vorhaltezeit definieren, dann täglich alle Daten (die nicht in diesem Zeitraum liegen) löschen, würde das DB-File nicht mehr wachsen. Seine Größe bliebe konstant. Natürlich nur unter der -rein theoretischen- Annahme, dass das tägliche Datensatz-Aufkommen absolut konstant ist.
Posted in: FAQ RS DB Analyzer