Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Firebird-Datenbank frisst Speicher

9 views
Skip to first unread message

Stefan Depta

unread,
Mar 19, 2012, 12:03:43 PM3/19/12
to
Hi,
gegeben sei ein XP-prof. SP 3, CPU 3Ghz mit 384 MB Ram (warumauchimmer)
Darauf läuft ein Wiegeprogramm, welches seine Daten auf einem Server mittels
Firebird ablegt.
Es kommt immer wieder vor, dass während des Speichervorganges das Programm,
welches sich normalerweise mit <20Mb Ram zufieden gibt, plötzlich >250 MB
beansprucht und dann noch einen Teil in den virtuellen Speicher schreibt.
Das dauert dann so 2 Minuten, bis die sagenhaften 1-2kb gespeichert sind,
dann sackt der benötigte Ram wieder auf unter 20Mb.

Normalerweise dauert das Speichern eines Datensatzes 1-2 Sekunden, aber
immer wieder diese Aussetzer bis zur Möglichkeit des Kaffekochens.

Auf dem Rechner läuft ansonsten nichts, Netzwerkping ist OK.

Hat vielleicht jemand hier einen Tip?
Den Programmhersteller brauche ich hier garnicht anzusprechen, die kennen
m.E. ihr Programm selbst nicht wirklich ;-)

Siegfried Schmidt

unread,
Mar 19, 2012, 6:38:17 PM3/19/12
to
Stefan Depta schrieb:

> Hat vielleicht jemand hier einen Tip?

Pack RAM rein.

> Den Programmhersteller brauche ich hier garnicht anzusprechen, die
> kennen m.E. ihr Programm selbst nicht wirklich ;-)

Woher soll der auch wissen, was BS und Laufzeitsystem wirklich treiben.


Siegfried

Christian Winther

unread,
Mar 20, 2012, 1:55:17 AM3/20/12
to
Geht vor/mit dem Anstieg der RAM-Nutzung auch der Netzwerktraffic
(Input) hoch?

Wenn ja, dann sieht das für mich danach aus, dass das Client-Programm
irgendwelche DB-Aktionen ausführt, welche man besser den Server machen
lassen würde:

- höchsten Wert einer Spalte ermitteln, um den hochzuzählen
- Reorganisation irgendwelcher Tabellen
- Abfrage von Tabellen ohne wirksame/sinnvolle Where-Clause, um den
Buchungssatz mit Zusatz-Infos versorgen zu können
- ...

Mit Firebird kenne ich mich jetzt nicht so aus. Bei anderen DBMS kann
man auf dem Server Tracing einschalten, so dass man sieht, welche
Abfragen an das DBMS gesendet wurden.

Echte Abhilfe kann hier wahrscheinlich nur der Hersteller des Programms
schaffen. Dir bleibt nur - wie schon vorgeschlagen - RAM reinzustecken.

HTH CW

helmut

unread,
Mar 20, 2012, 11:27:06 AM3/20/12
to
Am Mon, 19 Mar 2012 17:03:43 +0100 schrieb Stefan Depta:
...
> Den Programmhersteller brauche ich hier garnicht anzusprechen, die
> kennen m.E. ihr Programm selbst nicht wirklich ;-)

Schau mal bei entwickler-forum.de vorbei, da gibt es im Forum die
Kategorie Datenbanken -> Firebird. Da findet man einige echte Firebird-
Spezialisten (die unter anderem auch Firebird-Tools schreiben).

bye,
Helmut

Stefan Depta

unread,
Mar 20, 2012, 1:20:37 PM3/20/12
to
Siegfried Schmidt wrote:

> Stefan Depta schrieb:
>
>> Hat vielleicht jemand hier einen Tip?
>
> Pack RAM rein.

Das hab ich vor, dürfte allerdings das Verhalten des Programmes nicht ändern
>> Den Programmhersteller brauche ich hier garnicht anzusprechen, die
>> kennen m.E. ihr Programm selbst nicht wirklich ;-)
>
> Woher soll der auch wissen, was BS und Laufzeitsystem wirklich treiben.

Bisher war jede Anfrage für egalwas umsonst, selbst wenn was dafür bezahlt
wird, kommen die nicht in die Gänge

>
> Siegfried


Stefan

Stefan Depta

unread,
Mar 20, 2012, 1:24:37 PM3/20/12
to
Christian Winther wrote:


>
> Geht vor/mit dem Anstieg der RAM-Nutzung auch der Netzwerktraffic
> (Input) hoch?

Ein wenig

> Wenn ja, dann sieht das für mich danach aus, dass das Client-Programm
> irgendwelche DB-Aktionen ausführt, welche man besser den Server machen
> lassen würde:
>
> - höchsten Wert einer Spalte ermitteln, um den hochzuzählen
> - Reorganisation irgendwelcher Tabellen
> - Abfrage von Tabellen ohne wirksame/sinnvolle Where-Clause, um den
> Buchungssatz mit Zusatz-Infos versorgen zu können
> - ...
>
> Mit Firebird kenne ich mich jetzt nicht so aus. Bei anderen DBMS kann
> man auf dem Server Tracing einschalten, so dass man sieht, welche
> Abfragen an das DBMS gesendet wurden.
>
> Echte Abhilfe kann hier wahrscheinlich nur der Hersteller des Programms
> schaffen. Dir bleibt nur - wie schon vorgeschlagen - RAM reinzustecken.
>
> HTH CW

Ein Blick in die Tabelle zeigt mir über 100 Spalten, von denen höchstens 30
überhaupt Daten enthalten, alles andere sind Optionen.
Interessanterweise laufen manche Zugriffe halt äüßerst schnell, andere
brauchen das 60-100 fache.

Ich werds mal mit Ram testen, dann Firebird-Forum, DANN Hersteller

Danke schonmal

Stefan
0 new messages