SQL Server 2008 - Cross database performance pada mesin fisik dan contoh server yang sama


12

Apakah ada hit kinerja ketika melakukan pemilihan di DB lain pada mesin fisik yang sama? Jadi saya punya 2 database pada mesin fisik yang sama berjalan dalam contoh SQL 2008 yang sama.

Sebagai contoh di SomStoreProc on_this_db saya menjalankan SELECT someFields FROM the_other_db.dbo.someTable

Sejauh ini dari apa yang saya baca di internet, kebanyakan orang sepertinya menunjukkan TIDAK.

Jawaban:


13

Anda seharusnya tidak melihat penurunan kinerja ketika meminta di seluruh database pada contoh yang sama. Analyzer query, buffer, dll yang sama sedang digunakan.

Sekarang, jika Anda mencoba hal yang sama di seluruh contoh SQL yang berbeda pada server yang sama Anda bisa melihat dampak kinerja. Kueri harus dianalisis oleh dua analisis kueri yang berbeda dan lebih banyak sumber daya sistem akan digunakan untuk cache, buffer, dll. Anda juga akan memaksa hasil untuk pergi melalui protokol VIA (dengan asumsi itu diaktifkan) di antara instance. MS DTC dapat terlibat, dan jika izin tidak memadai pada salah satu contoh, rencana kueri yang buruk dapat dibuat.


4

profiler + rencana eksekusi + statistik IO / Cpu adalah teman terbaik Anda untuk memeriksa ini. Salin tabel Anda di db pertama dan bandingkan durasi dan statistik lainnya dengan yang ditemukan ketika memiliki tabel di db kedua. Anda akan melihat apakah ada penalti.

Saya pribadi tidak melihat kinerja yang terlihat ketika membaca tabel data dari database lain di server yang sama.


lol mereka akhirnya mengoptimalkan kueri!
user547
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.