KB3044519 – FIX: Probleme mit der Abfrageleistung, wenn im SQL Server 2014 der neue Kardinalitätsschätzer aktiviert wurde

Gilt für
SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use) SQL Server 2014 Express - duplicate (do not use)

Symptome

Angenommen, Sie haben die neue Kardinalitätsschätzung in Microsoft SQL Server 2014 aktiviert. Wenn Sie eine Abfrage ausführen, die join-Anweisungen enthält, können die folgenden Probleme auftreten:

  • Die Kompilierung einiger Abfragen dauert wesentlich länger, insbesondere wenn die Abfrage eine große Anzahl von Verknüpfungen enthält. Die Kompilierzeit kann mit der Zunahme von Joins weiter erheblich zunehmen.
  • Wenn das Joinprädikat andere Bedingungen als Gleichheit oder eine Kombination von Gleichheiten verwendet, unterscheidet sich die geschätzte Anzahl von Zeilen bestimmter Typen in Verknüpfungen von der tatsächlichen Anzahl verarbeiteter Zeilen. In diesem Fall nimmt die Abfrageleistung ab, und da die Abfrage eine große Speicherzuweisung anfordert, sinkt die Gesamtleistung des Servers.

Lösung

Informationen zum Service Pack

Installieren Sie Service Pack 1 für SQL Server 2014, um dieses Problem zu beheben.

Weitere Informationen zu SQL Server 2014 Service Pack 1 (SP1) finden Sie unter In SQL Server 2014 Service Pack 1 behobene Fehler.

Hinweis Aktivieren Sie das Ablaufverfolgungsflag 4199, damit der Fix für das zweite in diesem Artikel beschriebene Problem wirksam wird.

Problemumgehung

Um diese Probleme zu umgehen, verwenden Sie den alten Kardinalitätsschätzer, indem Sie entweder den Datenbank-Kompatibilitätsgrad auf einen Wert unter 120 festlegen oder das Ablaufverfolgungsflag 9481 auf globaler, Sitzungs- oder Abfrageebene aktivieren.

Status

Microsoft hat bestätigt, dass dies ein Problem bei den Microsoft-Produkten ist, die im Abschnitt „Gilt für“ aufgeführt sind.