Verglichen mit was? Für welche Anfragen? natürlich kommt es alles darauf an auf das, was du tust. Bei einigen Abfragen ist der Leistungseinbruch vernachlässigbar, bei anderen massiv.
Es gibt eine Reihe von Bedenken, die Sie berücksichtigen sollten:
- Wenn Sie 2 Tabellen von DB1 mit 2 Tabellen von DB2 verbinden und die Tabellen groß sind, kann es hässlich werden. Am Ende des Tages werden die Abfragen irgendwo ausgeführt. Die Datenbank muss alle Ergebnisse in die Hauptdatenbank ziehen und die Transaktionsintegrität auf der Hauptdatenbank aufrechterhalten. Das kann richtig teuer werden.
- Wenn Sie anfangen, verteilte Transaktionen auszuführen, kann hässlich werden , schnell.
- Wenn Sie Dinge serverübergreifend zusammenführen, können Ihre Indizes auf dem Remote-Server unbrauchbar werden. Die Daten müssen für die Joins alle irgendwohin verschoben werden.
- Verknüpfte Serververbindungen können zu unerwarteten Zeiten ausfallen und zu schwer zu diagnostizierenden Fehlern führen.
In der Vergangenheit habe ich Situationen gefunden, in denen es einige Größenordnungen schneller war, die entfernten Daten lokal zu verschieben und zu indizieren, bevor sie hinzugefügt wurden.