Zum Inhalt springen

SQL Server 2008 - "insert into" ist sehr langsam.


Empfohlene Beiträge

Geschrieben

Hi,

ich hab folgendes Problem:

Auf unserem SQL Server 2008 werden über ein Programm etliche (5000+) Insert into Statements ausgeführt. Dafür braucht der Server über 3 Minuten.

Dieselbe Prozedur führt auf einem Referenzsystem (gleiche SQL Server Version) zu einem deutlich anderen Ergebnis. Hier benötigt das System nur 7 Sekunden.

Dabei ist der Server mit den schlechten Ergebnissen von der HW Leistung her deutlich besser (8kern, 12 Gig Ram, etc.).

Die Grundeinstellungen der Server sind, soweit ich das übersehen kann, identisch.

Hat jemand eine Idee?

Gruß

Moritz H.

Geschrieben

Vielleicht verwendest du keinen gelben Strom :D;)

Viel mehr lässt sich mit den gegebenen Informationen nicht sagen.

Mit grosser Wahrscheinlichkeit hast du aber Lockingprobleme und verwendest für deine 5000 Inserts implizite Transaktionen.

Goos

Geschrieben

bei impliziten transaktionen sollten aber beide systeme etwa gleich langsam sein.

locks wären eine möglichkeit, lahme platten oder stark fragmentierte tabellen sind weitere.

eventuell hängt er auch an den indizes.

dann wäe noch die frage wie die daten zu den jeweiligen servern kommen.

Geschrieben

Hi,

das Einlesen der Daten erfolgt aus einer XML Datei. Aus dieser Datei werden X einzelne Insert Into Statements generiert (via Programm) und and den Server gegeben.

Bei den Statements wird kein Rollback oder ähnliches genutzt. Es gibt auch keine Trigger, die fälschlicherweise ausgelöst werden könnten.

Könnte eine Volltestindizierung mir da rein hauen? Muss prüfen ob die Überhaupt aktiviert ist.

Vielen Dank für Eure Ideen!

Gruß

Moritz H.

Geschrieben (bearbeitet)

Ich tippe auch auf Locking bzw Transaktion. Ich würde einen Ansatz im Code suchen. Evtl mal nach jedem Insert "hart testweise" ein Commit setzen, um zu schauen, ob es daran liegt.

Bearbeitet von flashpixx
Geschrieben

MSSQL besitzt doch serverseitiges Autocommit.

Ist es auf dem einen Server eingeschaltet und auf dem anderen nicht?

Laufen beide Vorgänge in einer einzigen Transaktion und wird auf der "langsamen" Maschine nach jedem Insert comittet?

Was soll eine Volltextindizierung nutzen? Und vor allem was willst Du indizieren? Liegt die XML Datei in der Datenbank?

Dim

Geschrieben

Hi,

aktuell zeigt der Server noch ganz andere Ausfallerscheinungen. Möglicherweise liegt es nicht am SQL Server sondern am Server selbst (OS).

Vielen Dank für Eure Tipps!

Gruß

Moritz H.

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...