Bağlantılı Sunucular aracılığıyla bağlı iki veritabanı sunucum var. Her ikisi de SQL Server 2008R2 veritabanlarıdır ve bağlı sunucu bağlantısı, geçerli oturum açma güvenlik bağlamı kullanılarak normal bir "SQL Server" bağlantısı üzerinden yapılır. Bağlı sunucuların ikisi de aynı veri merkezindedir, bu nedenle bağlantı bir sorun olmamalıdır.
Sütunun hangi değerlerinin identifier
uzaktan kullanılabilir olduğunu, ancak yerel olarak olmadığını denetlemek için aşağıdaki sorguyu kullanıyorum .
SELECT
identifier
FROM LinkedServer.RemoteDb.schema.[TableName]
EXCEPT
SELECT DISTINCT
identifier
FROM LocalDb.schema.[TableName]
Her iki tabloda da sütunda kümelenmemiş dizinler bulunur identifier
. Yerel olarak yaklaşık 54 milyon sıra, sadece 54 uzaktan. Sorgu planına bakıldığında, yürütme süresinin% 70'i "uzak sorguyu yürütmeye" ayrılmıştır. Ayrıca, tam sorgu planını incelerken, 1
bunun yerine tahmini yerel satır 2695380
sayısı (yalnızca bundan sonra gelen sorguyu seçerken tahmini satır sayısı EXCEPT
) olur.
Bu sorguyu yürütürken, gerçekten uzun zaman alıyor.
Merak ediyor: Neden bu? Tahmin "sadece" kapalı mı yoksa bağlantılı sunuculardaki uzak sorgular gerçekten pahalı mı?