Daha iyi depolama alanına yükselttikten sonra kontrol noktası sırasında artan beklemeler


9

Daha eski bir tüm flash dizisinden, daha yeni bir tüm flash dizisine (farklı, ancak iyi kurulmuş bir tedarikçi) geçiş yaptığımızda, kontrol noktaları sırasında SQL Sentry'de artan beklemeler görmeye başladık.

Sürüm: SQL Server 2012 Sp4

Bizim eski depolama beklerimiz bir kontrol noktası sırasında 2500 için "sivri" ile yaklaşık 2k, yeni depolama ile sivri tipik olarak 50k yakınındaki zirveleri ile 10k idi. Nöbetçi bizi daha çok PAGEIOLATCHwatis'e yönlendiriyor. Kendi analizimizi yaparken, PAGEIOLATCH and PAGELATCHbeklemelerin bir kombinasyonu gibi görünüyor . Perfmon'u kullanarak, genellikle ne kadar çok sayfa kontrol noktasında olduğumuzu, ne kadar çok beklediğimizi söyleyebiliriz, ancak kontrol noktasında sadece ~ 125 mb kızartıyoruz. İş yükümüz çoğunlukla yazar (öncelikle ekler / güncellemeler).

Depolama sağlayıcısı, Fiber Kanal doğrudan bağlı dizisinin bu denetim noktası olayları sırasında 1 ms alt yanıt verdiğini bize kanıtlamıştır. HBA ayrıca dizinin numaralarını da doğrular. Ayrıca, kuyruk derinliği hiçbir zaman 8'in üzerinde olmadığı için HBA kuyruk sorunu olduğuna da inanmıyoruz. Ayrıca, ZIO, yürütme gaz kelebeği ve kuyruk derinliği ayarlarını boşuna değiştirerek daha yeni bir HBA denedik. Ayrıca sunucunun belleğini hiçbir değişiklik olmadan 500 GB'tan 1 TB'a çıkardık. Kontrol noktası işlemi sırasında 2-4 ayrı çekirdek (16 adet)% 100'e yükselir, ancak toplam CPU% 20 civarındadır. BIOS da yüksek performansa ayarlanmıştır. İlginç bir şekilde, bunu devre dışı bırakmış olsak da CPU'ların genellikle C2 uyku durumunda olduğunu görüyoruz, bu yüzden hala uyku durumunun neden C1'i geçtiğini araştırıyoruz.

Hemen hemen tüm beklemelerin, zaman zaman DCM sayfa türü PFS'si olan veri sayfalarında olduğunu görebiliriz. Beklemeler tempdb değil, kullanıcı DB'lerindedir. Beklemelerin bazı veri sayfalarının üzerinde olduğunu ve bazı SPID'lerin aynı sayfada beklediğini görüyoruz. Veritabanı tasarımında birkaç ekleme noktası vardır, ancak aynı tasarım eski depolama ile yerinde idi.

Bu sorgunun bir döngüsünü 100 kez çalıştırarak, diskte bellekte kaç tane SPID beklediğini yakalayabildik

SELECT
    [owt].[wait_type], count(*) as waitcount
FROM sys.dm_os_waiting_tasks [owt]
WHERE [owt].[wait_type] LIKE 'PAGE%'
group by [owt].[wait_type]
order by 1
GO 100

resim açıklamasını buraya girin

"Güzel" şey, aynı model dizisine ve benzer sunucu özelliklerine sahip olan mükemmel ortamımızda sorunu kolayca yeniden üretebilmemizdir. Başka nereye bakacağınız veya sorunu nasıl daraltabileceğiniz konusunda düşüncelerinizi takdir ediyorum. Şu anda bir sonraki testlerimiz arasında: yeni anakart ve daha fazla CPU'lu yeni bir sunucu; SIOS veri merkezini devre dışı bırakma (eski depolama ile yerinde olmasına rağmen); farklı HBA markası.

exec sp_Blitz @outputtype = 'markdown'

Öncelik 5: Güvenilirlik : - Tehlikeli Üçüncü Şahıs Modülleri - Sophos Limited - Sophos Tampon Taşması Koruması - SOPHOS ~ 2.DLL - şüpheli tehlikeli üçüncü şahıs modülü takıldı.

Öncelik 200: Bilgilendirme : - Küme Düğümü - Bu, kümedeki bir düğümdür. - TraceFlag Açık - İzleme bayrağı 1117 global olarak etkinleştirilir. - İzleme bayrağı 1118 global olarak etkinleştirilir. - İzleme bayrağı 3226 global olarak etkinleştirilir.

Öncelik 200: Lisanslama : - Kullanılan Kurumsal Sürüm Özellikleri * xxxxx - [xxxxxx] veritabanı Sıkıştırma kullanıyor. Bu veritabanı bir Standart Sürüm sunucusuna geri yüklenirse, geri yükleme 2016 SP1'den önceki sürümlerde başarısız olur. * xxxxx - [xxxxxx] veritabanı Bölümleme kullanıyor. Bu veritabanı bir Standart Sürüm sunucusuna geri yüklenirse, geri yükleme 2016 SP1'den önceki sürümlerde başarısız olur.

Öncelik 240: Bekleme İstatistikleri : - Önemli Bekleme Yok Algılanmadı - Bu sunucu boşta oturuyor olabilir veya birileri yakın zamanda bekleme istatistiklerini temizlemiş olabilir.

Öncelik 250: Sunucu Bilgisi: - Donanım - Mantıksal işlemciler: 16. Fiziksel bellek: 512GB. - Donanım - NUMA Config - Düğüm: 0 Durum: ONLINE Çevrimiçi zamanlayıcılar: 8 Çevrimdışı zamanlayıcılar: 0 İşlemci Grup: 0 Bellek düğümü: 0 Bellek VAS Ayrılmış GB: 1177 - Düğüm: 1 Durum: ONLINE Çevrimiçi zamanlayıcılar: 8 Çevrimdışı zamanlayıcılar: 0 İşlemci Grup: 0 Bellek düğümü: 1 Bellek VAS Ayrılmış GB: 0 - Güç Planı - Sunucunuz 3.50GHz CPU'lara sahip ve yüksek performanslı güç modunda - Sunucu Son Yeniden Başlatma - 4 Tem 2018 04:56 - SQL Server Son Yeniden Başlatma - Tem 5 2018 05:11 - SQL Server Hizmeti - Sürüm: 11.0.7462.6. Yama Seviyesi: SP4. Sürüm: Enterprise Edition (64 bit). Kullanılabilirlik Grupları Etkin: 1. Kullanılabilirlik Grupları Yönetici Durumu: 1 - Sanal Sunucu - Tür: (HYPERVISOR) - Windows Sürümü - Windows'un oldukça modern bir sürümünü çalıştırıyorsunuz: Server 2012R2 dönemi, sürüm 6.3

Öncelik 200: Varsayılan Olmayan Sunucu Yapılandırması: - Ajan XP'ler - Bu sp_configure seçeneği değiştirildi. Varsayılan değeri 0'dır ve 1 olarak ayarlanmıştır. - yedekleme sıkıştırma varsayılanı - Bu sp_configure seçeneği değiştirildi. Varsayılan değeri 0'dır ve 1 olarak ayarlanmıştır. - engellenen işlem eşik (ler) i - Bu sp_configure seçeneği değiştirildi. Varsayılan değeri 0'dır ve 20 olarak ayarlanmıştır. - Paralellik için maliyet eşiği - Bu sp_configure seçeneği değiştirildi. Varsayılan değeri 5'tir ve 30 olarak ayarlanmıştır. - Veritabanı Posta XP'leri - Bu sp_configure seçeneği değiştirildi. Varsayılan değeri 0'dır ve 1 olarak ayarlanmıştır. - maksimum paralellik derecesi - Bu sp_configure seçeneği değiştirildi. Varsayılan değeri 0'dır ve 8 olarak ayarlanmıştır. - maksimum sunucu belleği (MB) - Bu sp_configure seçeneği değiştirildi. Varsayılan değeri 2147483647'dir ve 496640 olarak ayarlanmıştır. - min sunucu belleği (MB) - Bu sp_configure seçeneği değiştirildi. Varsayılan değeri 0'dır ve 8196 olarak ayarlanmıştır. - özel iş yükleri için en iyi duruma getirme - Bu sp_configure seçeneği değiştirildi. Varsayılan değeri 0'dır ve 1 olarak ayarlanmıştır. - uzaktan erişim - Bu sp_configure seçeneği değiştirildi. Varsayılan değeri 1'dir ve 0 olarak ayarlanmıştır. - uzak yönetici bağlantıları - Bu sp_configure seçeneği değiştirildi. Varsayılan değeri 0'dır ve 1 olarak ayarlanmıştır. - Başlangıç ​​işlemlerini tara - Bu sp_configure seçeneği değiştirildi. Varsayılan değeri 0'dır ve 1 olarak ayarlanmıştır. - gelişmiş seçenekleri göster - Bu sp_configure seçeneği değiştirildi. Varsayılan değeri 0'dır ve 1 olarak ayarlanmıştır. - xp_cmdshell - Bu sp_configure seçeneği değiştirildi.


söylemeyi unuttum ... SQL 2012 SP4
Doley

Sp_Blitz ile çalışabilir @OutputType = 'MARKDOWN've sonuçları yayınlayabilir misiniz ?
Kin Shah

Onları mesaja ekledim (yararlı olduğunu düşündüğüm).
Doley

büyük bir endeksi yeniden oluşturmak gibi bir I / O ağır görev yaptınız ve zamanları eski SAN ile karşılaştırdınız mı? Eski SAN ile aynı flaş tipinde mi? Birimlerin düzeni ve diğer uygulamalarla veya sunucularla paylaşılması ne olacak?
Alen

1
Ve yeni dizide veritabanı, günlük ve tempdb arasında aynı düzeyde bir ayırım var mı? Checkpoint veritabanı dosyalarını çarpıştırır, ancak bu sürücülerdeki diğer ES'lerle çakışıyor olabilir.
David Browne - Microsoft

Yanıtlar:


1

Hmm. Kontrol noktasında bekleyen örümcekleri gösterirsiniz, ancak ortalama / toplamda ne kadar beklediğini göstermezsiniz (dürüst olmak gerekirse, umursadığım her şey olurdu). Sürenin endişeli olup olmadığını görmek için diferansiyel bekleme istatistikleri analizi yapın. Ayrıca, tablonuzdaki iki bekleme tam olarak nedir? Eğer oyunda 1 TB RAM ile çok fazla bellek desteği bekliyorsanız, farklı bir tartışma yapmamız gerekiyor. :-D

Kontrol noktası sırasında 125 MB yazma hızı: SADECE kontrol noktası yazıyor mu yoksa TÜMÜ mü? Her iki şekilde de tüm flash depolama için düşük görünüyor. Söz konusu depolamayı çeşitli yazma desenleri için kıyasladınız ve eğer öyleyse hangi sayıları aldınız?


0

SQL Server'ımızın davranışının neden değiştiğinden emin değiliz (ve depolama anahtarından önce gerçekleştiğine dair kanıtımız var), ancak kullanıcı DB'leri için dolaylı kontrol noktalarını etkinleştirmek sorunu bizim için çözdü.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.