Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Vista bremst extrem bei inserts in Firebird 1.5 DB (https://www.delphipraxis.net/112399-vista-bremst-extrem-bei-inserts-firebird-1-5-db.html)

Kostas 20. Apr 2008 13:47

Datenbank: Firebird • Version: 1.5 • Zugriff über: IBO

Vista bremst extrem bei inserts in Firebird 1.5 DB
 
Hallo Zusammen,

ich habe zwei Datenbanken. Über ein TIB_Cursor wird eine Datenmenge von der DB1 selectiert und über ein
TIB_DSQL in die DB2 eingefügt. Es werden etwa 2000 Datensätze kopiert.
Unter Vista 32Bit und 64Bit werden ca 60 Records eingefügt danach bleibt das Process stehen für etwa 1-3 Minuten
und fügt die nächsten 60-200 Datensätze ein, bleibt wieder kleben u.s.w.
Die gleiche kompilierte Exe auf XP oder Win2000 läuft komplett durch.

Interessant ist, wenn ich eine Verweilzeit von 0.01 Sekunde für jeden Record einbaue, läuft es auch unter
Vista komplett durch.


Delphi-Quellcode:
    while not cuExportPaesse.eof do
    begin
      waitxsec(0.01); <<< Vista Bremse zum Beschleunigen
      Inc(count2);
      sb1.Panels[1].Caption := Format('%d Pässe',[count2]);

      dsPaesse.ParamByName('PASSNR').AsInteger := cuExportPaesse.FieldByName('PASSNR').AsInteger;
      dsPaesse.ParamByName('SCHUETZE').AsString := cuExportPaesse.FieldByName('SCHUETZE').AsString;
      dsPaesse.ParamByName('VEREIN_ID').AsInteger := cuExportPaesse.FieldByName('VEREIN_ID').AsInteger;
      dsPaesse.ParamByName('VEREINSNR').AsInteger := cuExportPaesse.FieldByName('VEREINSNR').AsInteger;
      dsPaesse.ParamByName('KURZNAME').AsString := cuExportPaesse.FieldByName('KURZNAME').AsString;
      dsPaesse.ExecSQL;
      cuExportPaesse.next;
      application.ProcessMessages;

    end;{while}
Hat jemand eine Idee was der Unsinn soll?

Gruß Kostas

mkinzler 20. Apr 2008 13:50

Re: Vista bremst extrem bei inserts in Firebird 1.5 DB
 
-Was passiert wenn du das ProcessMessages weglässt?
-Wie ist die Endung der DB?
-SS, CS, lokal/remote?

mquadrat 20. Apr 2008 14:27

Re: Vista bremst extrem bei inserts in Firebird 1.5 DB
 
Mich wundert es gerade, dass FB 1.5 auf Vista überhaupt läuft. Bei mir hat es die Systemsteuerung zerlegt. Is aber auch schon ne Weile her. Das beschriebene Problem hab ich hier nicht, aber ich nutze auch die 2.0 aufgrund der beschriebenen Probleme. Vielleicht probierst du die mal aus, falls du die Möglichkeit hat die Produktivsysteme auch auf FB 2 umzuziehen.

Kostas 20. Apr 2008 14:39

Re: Vista bremst extrem bei inserts in Firebird 1.5 DB
 
Zitat:

Zitat von mkinzler
-Was passiert wenn du das ProcessMessages weglässt?
-Wie ist die Endung der DB?
-SS, CS, lokal/remote?

Wenn ich ProcessMessages ändert sich nichts. Dauert genau so lange.
Die Endung der DB ist FDB
FB ist Lokal installiert, ich greife jedoch über das Protokoll TCP auf die DB zu.

Gruß Kostas

mkinzler 20. Apr 2008 14:50

Re: Vista bremst extrem bei inserts in Firebird 1.5 DB
 
Ich würde auch mal versuchen eine neuere Version zu verwenden.

Kostas 20. Apr 2008 14:53

Re: Vista bremst extrem bei inserts in Firebird 1.5 DB
 
Zitat:

Zitat von mquadrat
Mich wundert es gerade, dass FB 1.5 auf Vista überhaupt läuft. Bei mir hat es die Systemsteuerung zerlegt. Is aber auch schon ne Weile her. Das beschriebene Problem hab ich hier nicht, aber ich nutze auch die 2.0 aufgrund der beschriebenen Probleme. Vielleicht probierst du die mal aus, falls du die Möglichkeit hat die Produktivsysteme auch auf FB 2 umzuziehen.

Das Problem mit der Systemsteuerung ist bekannt. Es hat was mit dem Tool zu tun das in der Systemsteuerung
installiert wird um die DB zu stoppen un zu starten.

Es ist schon längst überfällig auf FB 2.x umzusteigen jedoch habe ich noch genau ein Projekt welches mit
der BDE auf FB zugreift. Ich habe es noch nicht geschaft dieses Projekt auf IBO umzustellen. Es ist leider
ein etwas größeres Projekt. Da müsste ich eine Menge Zeit investieren.

Der zweite Grund ist, ich arbeite mit Visual Studio C#. Die DotNet Zugriffskomponenten funtionieren für
FB 1.5 einwandfrei jedoch nicht mit FB2.0 allerdings ist die Info etwa ein habes jahr alt. Möglicherweise
hat sich in dieses Richtung auch etwas getan.

FB paralell zu betreiben in der V1.5 und 2.x habe ich micht getraut, hab damit keine Erfahrung.

Gruß Kostas

mkinzler 20. Apr 2008 14:57

Re: Vista bremst extrem bei inserts in Firebird 1.5 DB
 
Zitat:

Es ist schon längst überfällig auf FB 2.x umzusteigen jedoch habe ich noch genau ein Projekt welches mit
der BDE auf FB zugreift. Ich habe es noch nicht geschaft dieses Projekt auf IBO umzustellen.
Teste mal direkt.
Zitat:

Der zweite Grund ist, ich arbeite mit Visual Studio C#. Die DotNet Zugriffskomponenten funtionieren für
FB 1.5 einwandfrei jedoch nicht mit FB2.0 allerdings ist die Info etwa ein habes jahr alt. Möglicherweise
hat sich in dieses Richtung auch etwas getan.
Sollte eigentlich funktionieren
Zitat:

FB paralell zu betreiben in der V1.5 und 2.x habe ich micht getraut, hab damit keine Erfahrung.
Das ist kein Problem

RavenIV 21. Apr 2008 10:56

Re: Vista bremst extrem bei inserts in Firebird 1.5 DB
 
Zitat:

Zitat von Kostas
Es ist schon längst überfällig auf FB 2.x umzusteigen jedoch habe ich noch genau ein Projekt welches mit
der BDE auf FB zugreift. Ich habe es noch nicht geschaft dieses Projekt auf IBO umzustellen. Es ist leider
ein etwas größeres Projekt. Da müsste ich eine Menge Zeit investieren.

Das mit der Umstellung auf IBO solltest Du lassen. Damit machst Du Dir keinen Gefallen.
Die Entwicklung der IBO geht nicht richtig vorwärts.
Dann musst Du mit IBO eigentlich die speziellen visuellen Komponenten (Edit, Checkbox, Grid, usw.) benutzen.
Es gibt zwar auch DB-Komponenten von IBO, die kompatibel zu den Standard-Komponenten sind, die sind aber noch weniger toll als die IBOs.

Wende Dich also eher ADO oder Zeos oder was anderem zu für den Zugriff auf Firebird.

Bernhard Geyer 21. Apr 2008 11:06

Re: Vista bremst extrem bei inserts in Firebird 1.5 DB
 
Gabs nicht ein Problem mit bestimmten Dateiendungen von Firebird/Interbase-Datenbanken mit Vista da Vista die gleiche Endung für was anderes verwendet wird und deshalb stört :gruebel:

Kostas 21. Apr 2008 11:23

Re: Vista bremst extrem bei inserts in Firebird 1.5 DB
 
Zitat:

Zitat von Bernhard Geyer
Gabs nicht ein Problem mit bestimmten Dateiendungen von Firebird/Interbase-Datenbanken mit Vista da Vista die gleiche Endung für was anderes verwendet wird und deshalb stört :gruebel:

Das kenne ich nur in Verbindung mit XP und der Endung GDB ich verwende jedoch FDB.

Gruß Kostas

Kostas 21. Apr 2008 11:37

Re: Vista bremst extrem bei inserts in Firebird 1.5 DB
 
Zitat:

Zitat von RavenIV
Zitat:

Zitat von Kostas
Es ist schon längst überfällig auf FB 2.x umzusteigen jedoch habe ich noch genau ein Projekt welches mit
der BDE auf FB zugreift. Ich habe es noch nicht geschaft dieses Projekt auf IBO umzustellen. Es ist leider
ein etwas größeres Projekt. Da müsste ich eine Menge Zeit investieren.

Das mit der Umstellung auf IBO solltest Du lassen. Damit machst Du Dir keinen Gefallen.
Die Entwicklung der IBO geht nicht richtig vorwärts.
Dann musst Du mit IBO eigentlich die speziellen visuellen Komponenten (Edit, Checkbox, Grid, usw.) benutzen.
Es gibt zwar auch DB-Komponenten von IBO, die kompatibel zu den Standard-Komponenten sind, die sind aber noch weniger toll als die IBOs.

Wende Dich also eher ADO oder Zeos oder was anderem zu für den Zugriff auf Firebird.

Ich habe eine Menge Anwendungen bereits auf IBO laufen und verwende nur die nicht kompatiblen Komponenten wie
TIB_DSQL, TIB_Query u.s.w. Eigentlich war ich auch sehr zufrieden damit. Das die Entwicklung nicht oder
kaum weiter geht ist wirklich ein Problem. Ich habe vor etwa zwei Jahren dem Umstieg geschafft von Delphi auf VS C#
Dafür gab es eine Menge gründe. IBO war sicherlich eines davon. Ich vermisse sehr, so eine Komponentenpalette wie
IBO unter DotNet. Sicherlich ist das bedingt durch das komplett andere System von ADO.NET.
Einige erschlagen das mit OR-Mappern. Da bin ich wirklich (noch) kein Freund davon.
Zumindest sehe ich nicht ein warum der Anspruch "die Datenbank wechseln zu können" um so wichtiger
ist als das "richtige" nutzen der Funktionalität einer Datenbank.

Gruß Kostas



Gruß Kostas

mschaefer 21. Apr 2008 11:58

Re: Vista bremst extrem bei inserts in Firebird 1.5 DB
 
Also eigentlich ist die Frage mal gewesen, wie man das Ausbremsen durch Vista unterbinden kann? Obwohl ich begeisterter Zeos-Verfechter bin würde ich Dir zunächst auch die Funktionaltiät als Maßstabe zugestehehn. Habe aber zwischen Fb-ZeosXP und FB-Zeos_Vista keinen nenneswerten Unterschied bemerkt. Wohl aber zwischen FB 1.5 und 2.0. Würde aber mal ein Programm mit FB 2 embeddet aufsetzten und das auf beiden Systemen vergleichen. Damit könntest Du feststellen, ob die FB-Version die Bremse ist.

Grüße // Martin

hoika 21. Apr 2008 12:05

Re: Vista bremst extrem bei inserts in Firebird 1.5 DB
 
Hallo,

also bei mir gibt es keine solchen Probleme (Vista Home Premium, FB1.5).
Ich habe die FDB nicht auf der System-Platte.

Kann es sein, dass diese "Schatten-Kopien" eine Rolle spielen ?.


Heiko

Kostas 21. Apr 2008 21:30

Re: Vista bremst extrem bei inserts in Firebird 1.5 DB
 
Zitat:

Zitat von hoika
Hallo,

also bei mir gibt es keine solchen Probleme (Vista Home Premium, FB1.5).
Ich habe die FDB nicht auf der System-Platte.

Kann es sein, dass diese "Schatten-Kopien" eine Rolle spielen ?.


Heiko

Ich habe Firebird ebenfalls nicht auf der System-Partition installiert sondern auf der zweiten Platte Partition F
in F liegt auch die Datenbank.
Ich verwende übrigens Vista Business 32Bit hatte zuvor Vista Business 64Bit auch da das gleiche Problem.

Die IBO Komponenten die ich verwende sind auch nicht die aktuellsten. Ich verwende IBO 4.5.B
Ist jemandem bekannt ob es damit Probleme geben wird mit FB 2.x

Gruß Kostas.

Kostas 21. Apr 2008 21:34

Re: Vista bremst extrem bei inserts in Firebird 1.5 DB
 
Zitat:

Zitat von mschaefer
Also eigentlich ist die Frage mal gewesen, wie man das Ausbremsen durch Vista unterbinden kann? Obwohl ich begeisterter Zeos-Verfechter bin würde ich Dir zunächst auch die Funktionaltiät als Maßstabe zugestehehn. Habe aber zwischen Fb-ZeosXP und FB-Zeos_Vista keinen nenneswerten Unterschied bemerkt. Wohl aber zwischen FB 1.5 und 2.0. Würde aber mal ein Programm mit FB 2 embeddet aufsetzten und das auf beiden Systemen vergleichen. Damit könntest Du feststellen, ob die FB-Version die Bremse ist.

Grüße // Martin


Sehr interessanter Gedanke.
Werde ich sogleich mal testen.
Kann ich eigentlich ein transportables Backup der DB erzeugen und dieses in FB 2.x einlesen?

Gruß Kostas

mkinzler 21. Apr 2008 21:35

Re: Vista bremst extrem bei inserts in Firebird 1.5 DB
 
Ja Backups älterer Versionen gehen. Andersrum natürlich nicht.

Hansa 21. Apr 2008 22:11

Re: Vista bremst extrem bei inserts in Firebird 1.5 DB
 
Warum wird so eine Frage nicht mal eingegrenzt ? Also einfach Testdaten erstellen und die Inserts in IBExpert ablaufen lassen. Da wüsste man zumindest mal, was Sache ist.

mschaefer 21. Apr 2008 22:59

Re: Vista bremst extrem bei inserts in Firebird 1.5 DB
 
Naja - für den Vista - Xp - Vergleich hast Du schon recht. Aber so kann er auch das Verhalten seiner IBO´s in seinen Pogrammen mit testen. Es bleibt knifflig... // Grüße in den Süden

Kostas 21. Apr 2008 23:34

Re: Vista bremst extrem bei inserts in Firebird 1.5 DB
 
Hab interessante Neuigkeiten,

ich habe die Embedded Variante des FB Servers 2.1 installiert
und mein Programm NICHT neu kompiliert. FB 1.5 Dienst beendet.
Die Datenbank einfach nur kopiert ohne Backup und Restore.
Es funkt einwandfrei, noch schlimmer... es ist deutlich
schneller mal von der Bremse abgesehen.

OK, ich brauche FB 2.1 :-)

Nun bitte, weis jemand ob ich IBO 4.5.B aktualisieren muss wenn ich
ohne den neuen Funktionen auskommen könnte?

Gruß Kostas

Hansa 21. Apr 2008 23:49

Re: Vista bremst extrem bei inserts in Firebird 1.5 DB
 
Zitat:

Zitat von mschaefer
...Aber so kann er auch das Verhalten seiner IBO´s in seinen Pogrammen mit testen...

... um dann so weit zu sein wie jetzt : worans liegts genau ?? Tests müssen immer so gemacht werden, dass die Fehlerursache erkennbar wird. Man stelle sich mal so was vor : IBO, XP oder Vista (Home ? Basic ? Ultimate ?). Dazu noch FB 1.5 ? FB 2.0 ooder was ? Dazu noch Delphi 5, 7, 2007 ? Um diese trübe Suppe dann endlich klar zu kriegen, tja dann wäre ja noch Zeos als ultimatives Salz tatsächlich das Beste, um alles vollkommen ungeniessbar zu machen. :mrgreen:

Hansa 21. Apr 2008 23:58

Re: Vista bremst extrem bei inserts in Firebird 1.5 DB
 
roter Kasten lässt zu wünschen übrig. :P

Zitat:

Zitat von Kostas
...Nun bitte, weis jemand ob ich IBO 4.5.B aktualisieren muss wenn ich
ohne den neuen Funktionen auskommen könnte?...

Wenn das ohne neue Compilierung geht, dann werden offensichtlich keine neuen Funktionen verwendet. Die aber nicht mal zur Verfügung zu haben, das ist schon gefährlich. Für mich sind die Knackpunkte die Savepoints und die Context-Variablen (ab FB 1.5). Ist bei den Zugriffskomponenten nichts in Richtung "RestoreSavePoint" oder "GetContextVariable" etc. zu finden, dann : vergessen. 8)

mkinzler 22. Apr 2008 05:34

Re: Vista bremst extrem bei inserts in Firebird 1.5 DB
 
Beim Umstieg sollte dann aber dann ein Backup/restore durchgeführt werden, um die Datenbank auf die aktuelle ODS zu heben, erst dann wird das volle Potential ausgeschöpft.

hoika 22. Apr 2008 06:47

Re: Vista bremst extrem bei inserts in Firebird 1.5 DB
 
Hallo,

ein Hinweis wurde schon gesagt.
Die FB2 FDB ist unter FB1.5 nicht mehr lesbar,
auch wenn ein transportables Backup(FB2) -> Restore (FB1.5)
gemacht wird.


Heiko

Kostas 22. Apr 2008 07:53

Re: Vista bremst extrem bei inserts in Firebird 1.5 DB
 
Zitat:

Zitat von mkinzler
Beim Umstieg sollte dann aber dann ein Backup/restore durchgeführt werden, um die Datenbank auf die aktuelle ODS zu heben, erst dann wird das volle Potential ausgeschöpft.


Das ist schon klar, ich würde natürlich vorher immer ein Backup und Restore der DB machen.
Um beide Server Parallel laufen lassen zu können, werde ich:
- FB 1.5 deinstallieren
- FB 2.1 installieren
- Dienst umbenennen mit dem Tool FbInst (habe ich von HK-Software erhalten, freeware)
- einen anderen Port in der conf eintragen
- FB 1.5 wieder installieren

Muss auch noch ein Eintrag in der Services gemacht werden, da bin ich mir nicht sicher?
Meine aktuelle FB 1.5 installation hat keinen Eintrag in der Services durchgeführt.

Gruß Kostas

hoika 22. Apr 2008 08:39

Re: Vista bremst extrem bei inserts in Firebird 1.5 DB
 
Hallo,

du kannst das auch so machen.
FB Dienst beenden.

FB als Anwendung starten (fbserver -a)

Damit kannst du parallel FB1.5 und FB2.1 benutzen,
einfach den aktuellen FB beenden (TNA)
und fbserver -a des anderen (als Verknüpfung auf den Desktop) starten.


Heiko

Kostas 22. Apr 2008 09:54

Re: Vista bremst extrem bei inserts in Firebird 1.5 DB
 
Zitat:

Zitat von Hansa
Warum wird so eine Frage nicht mal eingegrenzt ? Also einfach Testdaten erstellen und die Inserts in IBExpert ablaufen lassen. Da wüsste man zumindest mal, was Sache ist.

Nun, ich habe 6000 Datensätze als Insert script exportiert und per IBExpert importieren lassen.
Alles ohne Problem. In IBO habe ich AutoComit eingestellt. Habs umgestellt und den Insert in einer Transaction gepackt,
auch da bleibt er einfach stehen für eine Weile und macht danach weiter.

Es scheint eine Kombination zwischen FB1.5, IBO und Vista zu geben.
Das herauszufinden dürfte ziemlich aufwendig sein.


Gruß Kostas


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:34 Uhr.

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