2016-07-13 25 views
0

Umgebung: SQL Server 2012 auf einer VM mit 1 CPU und 4 Kernen.Non-Clustered Indizes/CXPACKET Warten

Erfahrung: Als DBA -> New
MAXDOP auf Standardwert von 0 gesetzt

Ich habe eine große Tabelle mit mehr als 100 Millionen Datensätze und ich versuche, Abfrageleistung zu verbessern. Ich habe eine große Menge an CXPACKET-Wartezeit erhalten, solange die Abfrage ausgeführt wurde. Also dachte ich darüber nach, einige nicht gruppierte Indizes oder einen gefilterten Index zu erstellen. Der gefilterte Index bietet keine Hilfe.

Meine Frage ist, was ist der beste Ansatz, der hier die Leistung zu verbessern? Ich wollte 4 nicht geclusterte Indizes erstellen (die, denen man normalerweise beitritt).

Wie Sie sehen, ich bin neu hier, so bin ich wahrscheinlich Informationen auslassen, die benötigt werden.

+1

Ich schlage vor, Sie stellen die Frage in DBA.SE mit mehr Daten über die Abfrage, die Sie verwenden, Ausführungsplan jede Forschung bisher getan – TheGameiswar

+0

Ok ich jetzt bei dem Ausführungsplan aussehen werde. – Brandon

Antwort

0

ich bei den Ausführungspläne näher betrachten würde und speziell für die am stärksten genutzten SQL oder den teuersten SQL aussehen. Stellen Sie sicher, dass die SQL-Anweisungen das tun, was Sie erwarten, und stellen Sie sicher, dass keine fehlerhaften Pläne verwendet werden.

+0

Vielen Dank. Beim Betrachten des Ausführungsplans wurde ein Index bereitgestellt, den ich verwenden kann. Ich werde das testen, da diese Abfrage eine häufige Abfrage für diese Tabelle ist. Ich fühle mich so nützlich wie der Ausführungsplan, ich bin mir nicht sicher, warum ich nicht daran gedacht habe, hier zu suchen. Danke für die schnelle Antwort und das Licht auf diese Funktion. – Brandon