2017-10-28 2 views
0

Wie Leistungsoptimierung für eine SQL Server-Tabelle, um die Einsätze zu beschleunigen?Leistungsoptimierung in SQL Server-Tabelle

Zum Beispiel in einer Employee Tabelle habe ich 150 000 Datensätze. Wenn ich versuche, ein paar weitere Datensätze (etwa 20k) einzufügen, dauert es 10-15 Minuten.

+0

Wie fügen Sie die Datensätze ein? Reihe für Reihe? –

Antwort

1

Performance-Tuning Warte Statistiken verwendet, ist ein guter Ansatz in Ihrer case..below wenige Schritte sind i

schritt1 tun würde:
Run INSERT-Abfrage

Schritt 2:
eine andere öffnen Sitzung und Lauf unter

select * from sys.dm_exec_requests 

Jetzt Status und w ait Typ Spalte sollten Sie genügend Informationen geben, was sind Ihre nächsten Schritte

Ex: Wenn Status gesperrt (in der Regel fügt nicht blockiert werden), überprüfen Sie die Abfrage Blockier- und sehen, warum es blockiert ist

Oben ist nur ein Beispiel, und es gibt mehr Informationen online für jede Art von Warte

+0

Danke Thegameswar. – Priyaa

0

Mein Vorschlag für die Beschleunigung von Beilagen ist eine Masseneinfügung in eine temporäre Tabelle und dann eine einzelne Einfügung in die Final Table.

Dies setzt voraus, dass die Quelle der neuen Datensätze eine externe Datei ist.

In jedem Fall Ihre Frage lässt viele wichtige Informationen unerklärt:

  • Wie geht es dir jetzt die Einsätze zu tun? Es sollte nicht 10-15 Minuten dauern, um 20k Datensätze einzufügen.
  • Wie viele Indizes liegen auf dem Tisch?
  • Wie groß ist jeder Datensatz?
  • Welche Auslöser liegen auf dem Tisch?
  • Welche anderen Vorgänge finden auf dem Server statt?
  • Aus welcher Quelle werden die Datensätze eingefügt?
  • Haben Sie indizierte Ansichten, die die Tabelle verwenden?

Es gibt viele Gründe, warum Einfügungen langsam sein können.

+0

Dank gordon.records werden durch dataload und einige Male von einer Tabelle zur Hauptangestelltentabelle eingefügt. . Nur ein Index dort. – Priyaa

0

Einige Ideen zusätzlich für Schlösser zu Überprüfung

Deaktivieren Sie alle auf dem Einsatz auslöst, wenn sie existieren und dort Logik in Ihren Einsatz integrieren. Deaktivieren Sie auch alle Indizes für Tabelle und reopenable Post-Masseneinfügung.