AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Komplexe Abfrage an MSSQL:Dauert ewig über ADO, wieso?
Thema durchsuchen
Ansicht
Themen-Optionen

Komplexe Abfrage an MSSQL:Dauert ewig über ADO, wieso?

Ein Thema von alzaimar · begonnen am 15. Mär 2006 · letzter Beitrag vom 16. Mär 2006
 
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.235 Beiträge
 
Delphi 10.4 Sydney
 
#6

Re: Komplexe Abfrage an MSSQL:Dauert ewig über ADO, wieso?

  Alt 15. Mär 2006, 21:11
Zitat von alzaimar:
Im Allgemeinen fällt diese Performancediskrepanz nicht auf oder ist nicht vorhanden... Es ist ja egal, obs 100 oder 500ms dauert:
Schwupps = Schwupps.
Bist Du dir 100%ig sicher das die Abfrage in TSQL immer so schnell ist und nicht auch ab und zu so lange dauert. Solange die Ergebnismenge nicht übermäßig groß ist dürfte der ADOExpress-Overhead nicht zu groß sein.
Ich vermute eher das der Server an den Leistungsgrenzen läuft und vermutlich 1-2 Speicherriegel u.U. gewaltige Performancezuwäche bringen würde. Hast Du schon mal auf dem Server überprüft ob der Serverprozess auch wirklich 100% CPU-Zeit benötigt oder es so scheint als macht die CPU gerade Brotzeit. Das wäre nämlich ein Indiz das u.U. nicht alle benötigten Indeze auch wirklich 100%ig im Speicher gehalten werden und teilweise Festplattenzugriffe benötigen. Auch las mal den Queryanalyzer einen Abfrageplan erstellen ob wirklich alle Teile der Abfrage Indexe verwenden können.

Zitat von dfried:
Zitat von alzaimar:
@dfried: Ich schau mal..warte... clUseClient.
OK, stell das mal auf clUseServer, dann wird die Abfrage auch auf dem Server ausgeführt und nicht erst alles auf den Client rübergelutscht...
Bringt mit Sicherheit nichts relevantes. Die Abfrage wird immer auf dem Server ausgeführt. Allein ob die Ergebnismenge komplett zum Client übertragen wird oder erst bei Bedarf ist bei dieser Abfrage und MS-SQL höchstwahrscheinlich irrelevant da MS-SQL aufgrund des fehlenden Multi-Version-Konzepts (die 2005er-Version soll sowas können) eh eine Temp-Tabelle mit dem Ergebnis anlegen muss. Bei Oracle, MySQL oder Interbase könnte ein Server-Client hier was bringen.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:34 Uhr.
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