it-swarm.com.de

Sind datenbankübergreifende Abfragen in SQL Server teuer?

Sind datenbankübergreifende Abfragen in SQL Server teuer? Alle Datenbanken befinden sich in derselben Instanz.

15
Jonathan Allen

Entschuldigung, ich habe nicht genug Ruf, um die Frage zu kommentieren, aber meiner Erfahrung nach würde die Clientanwendung, wenn sie eine Transaktion für eine Abfrage auslöst, die datenbankübergreifende Verknüpfungen verwendet, die Transaktion auf verteilt umstellen und den Overhead einer DTC-Transaktion haben .

Der DTC-Overhead kann in diesem Fall als negativ für die Leistung angesehen werden. Im Allgemeinen wäre der Unterschied vernachlässigbar, obwohl Microsoft DTC-Transaktionen als solche beschreibt:

Verteilte Transaktionen verbrauchen normalerweise erhebliche Systemressourcen

Transaktionswerbung

... was auf eine Leistungsminderung hindeuten würde, wenn Ihr Server nicht die erforderlichen Ressourcen anbieten kann.

Zur Verdeutlichung beschreibt der obige Artikel lokale Transaktionen, die bei der Einführung von Remote-Systemen hochgestuft werden. Ich habe jedoch festgestellt, dass dies bei Transaktionen auf demselben Server der Fall ist, wenn datenbankübergreifende Abfragen verwendet werden.

Wie Thomas Stringer in seinem Kommentar hervorhebt, wird die Authentifizierung zusätzlichen Aufwand verursachen, obwohl ich denke, da dies SID-gesteuert ist, wird dort nur minimaler Aufwand entstehen, es sei denn, Sie müssen separate Anmeldeinformationen verwenden, um auf die andere Datenbank zuzugreifen.

Wenn es Unterschiede in den Datenbankeinstellungen gab, die zusätzlichen Overhead im Join verursachten, der sich größer auswirken könnte als die vorherigen Vorschläge - zum Beispiel die Datenbanksortierung. Die Datenbanksortierung kann sich als funktionaler Unterschied manifestieren, nicht nur als Leistungsunterschied.

Ich denke, Aaron hat das stärkste Argument für die Leistung, da der Optimierer nicht den Vorteil hat, Beziehungen für datenbankübergreifende Abfragen zu verwenden, während Sie in einer Datenbank in sich geschlossene Beziehungen zu Ihrem Vorteil nutzen könnten.

6
LeedsDBA