SQL Server Distributed Replay nedir, nasıl kullanılır?
25 Ekim 2019 5 Mayıs 2020
SQL Server sürüm yükseltmelerinde, donanım ve işletim sistemi değişikliklerinde, SQL Server üzerinde yapılan ayarların etkisini görmek veya yük testi yapmak için kullanılan bir araçtır.
Peki bu aracı kullanmanın yararı ne?
SQL Server Profiler ile yakalanan bir trace’i, bir veya daha fazla client üzerinden tekrar oynatmaya olanak verir. Bu sayede önemli iş yükü testlerini gerçeğine çok yakın bir şekilde birden fazla client ile test edebilir, gerçekçi sonuçlara ulaşılabilir.
Bir adet çiçeği burnunda SQL Server
*Kurulumlar genelde NEXT – NEXT şeklinde olduğu için detaya girmiyorum.
Öncelikle Canlı ortamından bir trace almamız gerekli. Bu trace’i SQL Profiler aracı yardımıyla alabiliriz. Ancak trace alırken Canlı sisteme çok zarar vermeden, saatlerce değil de 10-15dk’lık trace’ler almak çok daha sağlıklı olacaktır.
Not : Distributed Replay yük testi için kullanılacaksa, sistemin en yoğun dönemlerinde trace almak, test sonuçlarını daha da gerçekçi bir hale getirecektir.
Management Studio üzerinden Tools sekmesindeki SQL Server Profiler’ı açıyorum.
Use the template seçeneklerinden, Distributed Replay için kullanabileceğimiz TSQL_Replay’ı seçiyorum ve C: diskinde oluşturduğum DReplayTest klasörüne kaydediyorum.
Trace dosyasını aldıktan sonra Distributed Replay üzerinde kullanıma uygun hale getirebilmek için Controller ve DReplay.exe yüklü olan sunucuya trace dosyasını kopyalıyoruz. Ardından servislerin durumunu kontrol edip işe koyulalım.
Command prompt üzerinden DReplay.exe yoluna gidiyorum. (C:\Program Files (x86)\Microsoft SQL Server\(YourSQLVersionNumber)\Tools\Binn)
dreplay.exe status komutunu kullanarak servisin hazır durumda olduğu cevabını aldım.
Trace dosyasını Replay işleminde kullanabilecek hale getirmek için preprocess komutunu kullanıyorum.
DReplay preprocess -i “C:\DReplayTest\Trace - DReplay.trc” -d “C:\DReplayProcess”
Komutu çalıştırdıktan sonra belirttiğimize path’e IRF ve XML formatında dosyalar oluşacak, simülasyon işlemini bu dosyalar sayesinde yapacağız.
Son olarak aşağıdaki komut ile işlemi başlatabiliriz.
DReplay replay -s HedefSunucu -w ClientSunucu -f 10 -o -d “C:\DReplayProcess”
Test; 43143 event gerçekleştirerek başarılı bir şekilde tamamlandı.
Etiketler:Distributed Replaydistributed replay nasıl kullanılırdistributed replay nedirsql distributed replaysql distributed replay nedirsql server distributed replaysql server distributed replay nasıl kullanılırsql server dreplay
sonrakiSQL Server Dynamic Data Masking(DDM) nedir?