AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Ado Performance steigern

Ein Thema von EgonHugeist · begonnen am 4. Dez 2014 · letzter Beitrag vom 6. Jan 2015
 
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.213 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: Ado Performance steigern

  Alt 4. Dez 2014, 09:06
Hmm... Wenn es performancetechnisch eine Rolle spielt, wie schnell 5000 Inserts sind, dann stimmt was mit meinem Design nicht. Es ist eigentlich immer falsch, 5000 Inserts aus seiner Software heraus zu machen, wenn die Performance wichtig ist. Dann musst Du zu BULK INSERT greifen, bzw. (bei 5000 vermutlich einfacher und schneller) auf Dataset-Parameter (also eine @Tabelle).
Dann machen wir was falsch. Wir inserten Mio-Datensätze in Stunden. Den "Bulk Insert" kann man auch per "normalen" SQL- nachbilden.

Aber weder das eine noch das Andere wird von ADO nicht unterstützt (ADO wird imho eh nicht weiterentwickelt).
Betrifft AFAIK nur den MS OLE DB Provider for SQL Server, nicht den SQL Server Native Client.

BULK INSERT bekommst Du aber mit einem einfachen ADOCommand hin.
Eigentlich schon - oder jedenfalls fast. Du kannst problemlos mehrer INSERTS zu einem einzelnen "BULK" zusammenfassen.

Wenn Du also Provider vergleichen willst, dann musst Du das schon entweder mit irgend einer Referenz-DB machen (also z.B. FB) oder Tests für viele RDBMS schreiben.
Also wir haben das mal mit diversen DBs gemacht (MS SQL, MySQL, Oracle).
Die DBs nehmen sich nicht viel. Viel wichtiger ist der eigene Quellcode. Wenn man hier murks macht kann selbst der größer Cluster-Server nix mehr reisen wenn auf DB-Seite Grundvorrausetzungen wie genügend zugewiesener Speicher und (genügend) schnelle Festplatten dran hängen vorhanden sind. Als wir (vor Jahren) einen Prepared Statement-Cache eingebaut haben und dann noch auf selbstgeschriebenen "Bulk INSERT" umgestiegen sind hatten wir einen gewaltigen Performancegewinn - egal welche DB.
Bei MS SQL haben wir die ADOExpress/dbGo rausgeschmissen uns sind aufs ADO-Interface umgestiegen. Hat hier auch viel gebraucht.
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 11:23 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 by Thomas Breitkreuz