Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi [gelöst] Umstieg von ALS auf Firebird -> Sehr langsam (https://www.delphipraxis.net/112096-%5Bgeloest%5D-umstieg-von-als-auf-firebird-sehr-langsam.html)

Nuclear-Ping 15. Apr 2008 15:57

Re: Umstieg von ALS auf Firebird -> Sehr langsam
 
Hallo Heiko,

der Baum selber wird nicht in der Datenbank gespeichert, sondern per SaveToFile auf die Platte geschrieben.

Für den oben genannten Fall läuft das so, dass der Benutzer aus einer übergeordneten Auswal einen Knoten anhaken kann, die Analyse startet, die SW sammelt dann alle CategoryIds der angehakten (Unter-)Knoten in einer Liste und erstellt daraus die Querys

SELECT * FROM ... WHERE CategoryId=200
SELECT * FROM ... WHERE CategoryId=205
SELECT * FROM ... WHERE CategoryId=6544

... 1000 sind es nicht, das war nur Pi*Daumen. Es sind für diese Datenbank 239 Querys dieser Art.

[edit]
Aber gute Neuigkeiten ... :mrgreen: ... Hab den jetzt auf gezählte 3-4sek zum laden für diese DB mit den 16.000 Einträgen runtergebracht. Hab mit IBExpert die Datenbank nochmal neu indiziert, die Abfrage per Prepared-Query gemacht und noch bischen ausgemistet. :)
[/edit]

mkinzler 15. Apr 2008 16:01

Re: Umstieg von ALS auf Firebird -> Sehr langsam
 
Dann würde ich das Ergebnis in einem Rutsch anfordern

SQL-Code:
SELECT * FROM ... WHERE CategoryId in (200, 205, ...)

Nuclear-Ping 15. Apr 2008 16:03

Re: Umstieg von ALS auf Firebird -> Sehr langsam
 
Oh das geht? Super, mal testen. :)

[edit]
Cool, danke, geht. :D Dauert aber auch zw. 3-4 Sekunden. Aber ich denke damit kann ich leben, denn das ist auf jeden Fall schneller als die 7sek vom ADS.
[/edit]

hoika 15. Apr 2008 16:51

Re: Umstieg von ALS auf Firebird -> Sehr langsam
 
Hallo,

versuche das IN mal durch OR zu ersetzen.
vielleicht ist das schneller.


Heiko

Union 15. Apr 2008 16:56

Re: Umstieg von ALS auf Firebird -> Sehr langsam
 
Zitat:

Dauert aber auch zw. 3-4 Sekunden. Aber ich denke damit kann ich leben, denn das ist auf jeden Fall schneller als die 7sek vom ADS
Hast Du es beim ADS auch mit der neuen Logik probiert? Ansonsten vergleichst Du ja Pflaumen mit Orangen ;)

Nuclear-Ping 15. Apr 2008 17:32

Re: Umstieg von ALS auf Firebird -> Sehr langsam
 
Zitat:

Zitat von hoika
versuche das IN mal durch OR zu ersetzen.
vielleicht ist das schneller.

Ne, geht nicht. Da meckert er - wie erwartet, dass er OR dort nicht haben will.

Zitat:

Zitat von Union
Hast Du es beim ADS auch mit der neuen Logik probiert? Ansonsten vergleichst Du ja Pflaumen mit Orangen ;)

Ja, so wie in Beitrag #10 auf Seite 1. Hat aber keinen Unterschied gemacht.

mkinzler 15. Apr 2008 17:35

Re: Umstieg von ALS auf Firebird -> Sehr langsam
 
Heiko meint
SQL-Code:
SELECT * FROM ... WHERE CategoryId = 200 or CategoryId = 205 or ...

Peinhard 15. Apr 2008 18:16

Re: Umstieg von ALS auf Firebird -> Sehr langsam
 
Was auch noch eine Rolle spielen mag - kommt die Liste der CategoryID sortiert daher?

Und 'Union' meint, wenn ich's recht verstehe, die Abfrage mit IN-Syntax auf dem Advantage.

Nuclear-Ping 15. Apr 2008 23:48

Re: Umstieg von ALS auf Firebird -> Sehr langsam
 
Zitat:

Zitat von mkinzler
Heiko meint
SQL-Code:
SELECT * FROM ... WHERE CategoryId = 200 or CategoryId = 205 or ...

Achso, ja, logisch. Sorry, stand auf dem Schlauch. War glaube zuviel neues die letzten Tage, da landet jeder Vorschlag irgendwie in der Ecke. :mrgreen:
Hab ich grad probiert, geht nicht schneller.

Zitat:

Zitat von Peinhard
Was auch noch eine Rolle spielen mag - kommt die Liste der CategoryID sortiert daher?

Nein. Macht aber auch keinen Unterschied, wenn ich sie vorher sortiere.

Zitat:

Zitat von Peinhard
Und 'Union' meint, wenn ich's recht verstehe, die Abfrage mit IN-Syntax auf dem Advantage.

Falls das, dann nein. Aber wie schon gesagt, macht es bei Firebird nun auch keinen Unterschied mehr, ob ich die Daten per IN oder per einzelner Querys abrufe. Braucht beides ~4 Sekunden, was im Vergleich zu vorher ne absolut tolle Verbesserung ist.


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:16 Uhr.
Seite 3 von 3     123   

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