Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi DB Firebird 3.0 wächst extrem (https://www.delphipraxis.net/193490-db-firebird-3-0-waechst-extrem.html)

IBExpert 9. Aug 2017 21:12

AW: DB Firebird 3.0 wächst extrem
 
Das mit dem Blob ändern ist sicherlich Teil des Problems, weil alle Versionen des Blob vor dem update komplett in der db bleiben und nach dem update neu reingeschrieben werden, weil sonst kein rolllback möglich wäre und blobs halt auch mal 1GB sein können, wenn man das braucht (geht je nach pagesize mit bis zu 128GB pro Blob Feld und Record.

Es gibt auch ein Tracker Eintrag, aus dem deutlich wird, das das sogar bei Variablen vom Typ Blob passiert, ohne das die überhaupt in eine Tabelle geschrieben werden sollen: http://tracker.firebirdsql.org/browse/CORE-5114

Also ist es sicherlich ein guter vorschlag, statt einen Blob mehrfach zu ändern, diesen besser zu lösche und neu einzutragen, weil da der Garbagecollector das Leben ein wenig einfacher hat.

Wenn aber keine alte Transaktion offen ist, dann würde ein zugriff auf die Blob inhalt auch den Garbage collector anschmeissen. In dem Falle dann nicht einfach regelmäßíg select count(*) machen, sondern zB

select sum(char_length(blobspalte)) from tabelle

(das zwingt Firebird dazu, sich die Blobinhalte mit alle pages anzuschauen und benachrichtigt den Garbagecollector über nicht mehr benutzte blob pages.

jobo 10. Aug 2017 07:01

AW: DB Firebird 3.0 wächst extrem
 
ggF. hilft auch die exakte Prüfung der Where Clauses, vielleicht wird zu viel aktualisiert.
Und
vielleicht ein kleiner Umbau mit 1:1 Relation von Hauptdaten zu Blobdatentabelle. Letztere dann nur ändern, wenn es wirklich sein muss.


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:37 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz