Baru-baru ini, kami memigrasikan server dari SQL Server 2012 ke 2016. Tanpa perubahan apa pun, beberapa kueri mengalami penurunan kinerja.

Jika saya menjalankan kueri di SQL Server 2012, dibutuhkan 10 detik, tetapi kueri yang sama membutuhkan waktu 50+ menit di SQL Server 2016.

Jika saya memperbarui database SQL Server 2016 dengan Legacy CE = ON maka saya bisa mendapatkan hasilnya dengan sangat cepat sama seperti tahun 2012. Tapi saya yakin tidak disarankan untuk menggunakan Legacy CE ON di SQL Server 2016.

ALTER DATABASE SCOPED CONFIGURATION SET
LEGACY_CARDINALITY_ESTIMATION = ON;

Saya juga memperbarui statistik semua tabel, meskipun saya mendapatkan peningkatan dalam eksekusi.

Jadi, Apakah ini terkait dengan masalah konfigurasi DB (atau) apakah saya perlu memperbarui kueri?

Saya tidak yakin, detail konfigurasi mana yang perlu saya periksa. Bisakah Anda menyarankan sesuatu?

Terima kasih sebelumnya..

1
Jagadeesh 10 November 2017, 06:16

1 menjawab

Jawaban Terbaik

Solusi: Link1< /strong> / Link2

Penyebab rute : CARDINALITY_ESTIMATION

Terimakasih untuk semua.

1
Jagadeesh 10 November 2017, 11:45