AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Lokales SQL langsam?
Thema durchsuchen
Ansicht
Themen-Optionen

Lokales SQL langsam?

Ein Thema von phXql · begonnen am 22. Jun 2004 · letzter Beitrag vom 23. Jun 2004
Antwort Antwort
Benutzerbild von phXql
phXql

Registriert seit: 11. Mär 2004
Ort: Mühldorf
824 Beiträge
 
#1

Lokales SQL langsam?

  Alt 22. Jun 2004, 23:34
moin leute,

eins will ich jetzt einfach mal wissen. ist das lokale SQL (z.B. auf Paradox-Tabellen) langsamer im vergleich zu einer schleife? also ich hab den SQL-String 'SELECT * FROM tbl WHERE field1 = 'A''. wäre es schneller, die table in delphi zu öffnen, alle datensätze durchzugehen und zu schauen, ob das field1 'A' ist? hat das schon mal jemand gebenchmarkt oder erfahrungen mit der geschwindigkeit von dem lokalen SQL?

mfg

phXql
"Dunkel die andere Seite ist"
"Yoda! Halts Maul und iss deinen Toast!"
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: Unterhaching
11.412 Beiträge
 
Delphi 12 Athens
 
#2

Re: Lokales SQL langsam?

  Alt 22. Jun 2004, 23:40
Bei größeren Datenmengen ist es nach meinen Erfahrungen immer schneller die Lösung über SQL zu fahren, speziell, wenn die Felder indiziert sind.

Grund: bei kleinen Datenmengen fällt der Overhead durch Queryanalyzen und Optimierungen negativ auf. Wenn jedoch große Datenmengen durchsucht werden stört das nicht mehr. Jetzt muss nur noch für die zurückgelieferten Daten eine Zeigerarray (Datenset) erstellt und genutzt werden und das ist der eigentliche Zeitfaktor.

Kurz: Lässt Du Dir alle Datensätze zurückgeben, so wird der Zeitanteil deer Aufbereitung so groß, daß der Zeitgewinn durch die nicht-DB-seitige Analyze einer komplexeren Query verloren geht. Auf welcher Seite die Daten überprüft werden ist eigentlich egal. Wobei davon auszugehen ist, daß die DB hier sogar schneller ist, da der Algorithmus wahrscheinlich besser ist als Deiner und da die DB direkt an den Daten testen kann, ohne daß diese für Deine Anwendung vorher aufbereitet werden müssen.

......
Daniel Lizbeth
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Benutzerbild von Jelly
Jelly

Registriert seit: 11. Apr 2003
Ort: Moestroff (Luxemburg)
3.741 Beiträge
 
Delphi 2007 Professional
 
#3

Re: Lokales SQL langsam?

  Alt 23. Jun 2004, 11:05
Zitat von sakura:
Auf welcher Seite die Daten überprüft werden ist eigentlich egal.
Vielleicht noch als Zusatzbemerkung, daß dies höchsten für Desktopdatenbanken gilt, was ja auch Thema in diesem Thread ist. Ich will aber bemerken daß bei Netzwerkdatenbank durch das Filtern am client erst mal ALLE Daten einer Tabelle übers netz gehen, was bei großen Mengen natürlich nicht von Vorteil ist. Allgemein gilt also bei Client/Server Systemen die Daten schon geeignet auf dem Server vorzubereiten. Nicht zuletzt sind C/S gerade hierfür optimiert, was der Delphi Filter sicherlich nicht in dem Maße beherrscht.

Gruß,
Tom
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: Unterhaching
11.412 Beiträge
 
Delphi 12 Athens
 
#4

Re: Lokales SQL langsam?

  Alt 23. Jun 2004, 11:07
Zitat von Jelly:
Vielleicht noch als Zusatzbemerkung, daß dies höchsten für Desktopdatenbanken gilt, was ja auch Thema in diesem Thread ist.
Stimmt - aber die Ansätze in meinen Ausführungen haben das ja auch deutlich gemacht. Alle obigen Aussagen haben sich ausschließlich auf den Desktop-DB-Ansatz bezogen.

......
Daniel Lizbeth
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Benutzerbild von Jelly
Jelly

Registriert seit: 11. Apr 2003
Ort: Moestroff (Luxemburg)
3.741 Beiträge
 
Delphi 2007 Professional
 
#5

Re: Lokales SQL langsam?

  Alt 23. Jun 2004, 11:15
War ja auch wirklich nur als Zusatzbemerkung gedacht

Tom
  Mit Zitat antworten Zitat
Antwort Antwort


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 18:21 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