SQL Server 2017 Automatic Tuning Özelliği

Reading Time: 2 minutes

Evet makalemizin başlığını gördüğünüzde hızlıca içeriği okuyup veya demoları yapıp bu güzel konunun nasıl davranacağını ve gerçek hayatımızda ne kadar kullanabileceğimizi sorguladığınızı duyar gibiyim.

Yanlış duymadınız ! SQL Server 2017 versiyonu ile automatic tuning özelliğini getirdi ve bu özelliği makalede enine boyuna ele alacağız.

Kısaca yaptığı işi özetleyecek olur isek , Query Planlarımızı history lerine bakarak en iyi planı seçerek force eder ve en sağlıklı planı kullanmamızı sağlar. Tersten düşünecek olur isek, performans problemlerini belirleyip çözmemiz için önerilerde bulunan ve çözümü kendisi sağlayan bir mekanizmadır.

Veritabanımız üzerinde bu özelliği açmak için aşağıda ki Syntax ı kullanmalıyız.

ALTER DATABASE VeritabaniAdi SET AUTOMATIC_TUNING ( FORCE_LAST_GOOD_PLAN = ON );

Veritabanımızda Automatic Tuning Özelliğinin açık olup olmadığını sorgulamak için ,

Gördüğünüz üzere FORCE_LAST_GOOD_PLAN Off durumda.

Aktif etmemiz için yukarıda belirttiğimiz syntax ı kullanmamız gerekmektedir.

Şimdi tekrar sorgulayalım ,

Evet Db bazında aktif hale getirdik auto tuning özelliği.

SQL Server bazı durumlarda gelen query için ürettiği execution planlar eski kullandıkları execution planlara göre daha kötü olur ve performansı aşağı çekmektedir. Bu durumda yukarıda aktif ettiğimiz Automatic Plan Correction ile kötü üretilen query plan çalıştırılmaz ve en son bilinen sağlıklı execution plan kullanılır.

NOT : Bu özellik SQL Server 2017 ve SQL Azure üzerinde kullanılabilmektedir.

 

Birde bir diğer ve güzel bir özellik olan fakat sadece SQL Azure da kullanabildiğimiz Automatic Index Tuning özelliği mevcuttur.

Bu özellikte tablolarımıza eklenmesi ve kaldırılması gereken indexlerin belirlendiği bir özelliktir. Şimdi herkes bi tedirgin oldu anladığım kadarı ile… Evet yanlış duymadınız eksik indexleri eklemeye gereksizleri kaldırmaya karar veren bir mekanizmadan bahsediyorum.

Bu özelliğin çalışması için SQL Azure da ilk önce Automatic tuning i aktif etmeniz gerekmektedir.

Daha sonra Auto tuning i config etmelisiniz. Örneğin ben Eksik indexlerin oluşturulmasını istiyorum fakat DROP olmasını istemiyorum vb. gibi..

Bunuda aşağıdaki script ile basit bir şekilde Config edebiliyoruz.

Daha detaylı demoları eğitim videomuz da paylaşacağım.

 

Kolay Gelsin.

Leave a Reply

Your email address will not be published. Required fields are marked *