SQL Server için uygun Windows O / S disk belleği dosyası boyutu

oy
16

Herhangi bir Windows 2003 sunucu çalışan SQL Server için uygun disk belleği dosyası boyutu için başparmak iyi bir kural biliyor mu?

Oluştur 05/08/2008 saat 18:07
kaynak kullanıcı
Diğer dillerde...                            


8 cevaplar

oy
11

Remus (Ben büyük ölçüde saygı kime) tüm saygımla, Kesinlikle katılmıyorum. Sayfanız dosyası tam dökümü destekleyecek kadar büyükse, o tam bir dökümü her zaman gerçekleştirecektir. Eğer RAM çok büyük miktarda varsa, bu küçücük pat önemli kesintisi oldu neden olabilir.

Bir kerelik geçici bir sorun varsa Eğer sunucu diske RAM 1 TB yazmak zorunda kalmak istediğiniz değil. yinelenen bir sorun varsa, tam bir dökümü yakalamak için sayfa dosyasını artırabilir. Eğer PSS (ya da tam dökümü analiz etmek nitelikli başkası) tam dökümü yakalamak için rica tarafından isntructed edilene kadar bunu beklerdim. DBA son derece küçük bir yüzdesi tam dökümü nasıl analiz edileceğini biliyorum. Bir mini-dökümü yine açılır çoğu sorunların giderilmesinden yetiyorsa.

Sunucu 1 TB tam dökümü izin verecek şekilde yapılandırılmış ve yinelenen bir sorunun ortaya çıkıp çıkmadığını Artı, sen yandan sahip ne kadar boş disk alanı önerirsiniz? Tek bir hafta sonu bütün bir SAN doldurmak.

RAM norm geri RAM 3 veya 4 GB ile SQL Server için şanslı günlerde olduğu * Bir sayfa 1.5 dosya. Bu artık böyle değil. Ben (bellek baskısı yaşanıyor SSAS sunucusuna hariç) tüm üretim sunucularında Windows varsayılan boyutu ve ayarlarla sayfa dosyasını bırakın.

Ve sadece açıklama için, ben RAM 2 GB RAM 2 TB arasında değişen sunucularla çalıştık. 11 yıldan sonra, sadece tam dökümü bir kez yakalamak için çağrı dosyası increae zorunda kalmışlardır.

Cevap 05/10/2011 saat 22:39
kaynak kullanıcı

oy
10

RAM boyutu Alakasız, hala bir disk belleği dosyası fiziksel RAM en az 1,5 katını gerekir. Bu, bir 1 TB RAM makinesi var olsa bile, disk üzerinde 1,5 TB belleği dosyası gerekir doğrudur (delice, ama doğrudur).

Bir süreç VirtualAlloc / VirtualAllocEx aracılığıyla MEM_COMMIT hafızasını sorduğunda, istenen boyut disk belleği dosyası ayrılmış olması gerekmektedir. Bu ilk Windows NT sisteminde geçerliydi ve hala bkz bugün doğrudur Win32 Sanal Bellek Yönetme :

Bellek kararlıdır zaman belleğin fiziksel sayfaları tahsis edilir ve uzay bir disk belleği dosyası ayrılmıştır .

Bazı ekstrem tuhaf durumları çıplak, SQL Server her zaman MEM_COMMIT sayfaları için soracaktır. Ve SQL bir kullandığı gerçeği verilen Dinamik Bellek Yönetimi mümkün olduğunca tampon havuzu gibi ayarlıyoruz tutar (rezervler ve politikasını taahhüt disk belleği dosyası alanı büyük rezervasyon başlama de VAS açısından), SQL Server isteyecektir. Disk belleği dosyası düzgün değilse boyutlu hatalar 801/802 SQL'ın ERRORLOG dosyası ve operasyonlarda gösterilmeye başlar.

Yöneticiler yanlışlıkla büyük bir RAM bir disk belleği dosyası ihtiyacını ortadan kaldırır varsayalım gibi bu her zaman, bazı karışıklıklara neden olur. Gerçekte aykırı geniş RAM sırf Windows NT bellek yöneticisi iç işleyişini, disk belleği dosyası ihtiyacını arttırır, olmuyor. ayrılmış disk belleği dosyası, umarım hiçbir zaman kullanılmaz.

Cevap 22/11/2009 saat 23:11
kaynak kullanıcı

oy
3

Microsoft'a göre, "bir bilgisayar artar RAM miktarı gibi bir sayfa dosyası gereksinimini azaltır." Yazıda daha sonra nasıl sayfa dosyasının kadar belirlemek için Performans Günlükleri nasıl kullanılacağını açıklamak için gider aslında kullanılıyor. Daha sonra önerilen izleme yapmak ve oradan ayarlamalar yapmak, bir başlangıç için 1.5x sistem belleğine sayfa dosyasını ayarlamayı deneyin.

Windows'un 64-bit sürümleri için uygun bir sayfa boyutunu belirleme nasıl

Cevap 03/08/2010 saat 19:58
kaynak kullanıcı

oy
2

Yakın zamanda biz aşağı tamamen dar mümkün değildi ve aslında onları, sorunun giderilmesine yardımcı olması için elimizden Microsoft destek bilet kullanmadım bizim SQL Server biriyle olan bir performans sorunlarını yapıyorduk. SQL Server ile kullanmak için en uygun disk belleği dosyası boyutu gündeme geldi ve Microsoft'un önerisi olması yani RAM 1 1/2 katıdır .

Cevap 10/09/2009 saat 06:05
kaynak kullanıcı

oy
2

Eğer azalan getiriler içine almak için başlayacak uygulamanın çalışma kümesi boyutuna kadar daha büyük. Yavaş yavaş artan veya önbellek isabet oranlarında önemli bir değişiklik görene kadar boyutunu azaltarak bu bulmak için deneyebilirsiniz. önbellek isabet Ancak, oran% 90 üzerindedir ya da öylesine muhtemelen iyisin. Genellikle onun RAM tahsisi geçmek değil emin olmak için bir üretim sistemi bu göz tutmalı.

Cevap 23/12/2008 saat 15:45
kaynak kullanıcı

oy
1

Sonra çok araştırma, Windows 2003 Enterprise x64 Enterprise x64 çalıştıran bizim adanmış bir SQL Sunucuları hiçbir sayfa dosya var.

Basitçe, sayfa dosyası OS tarafından yönetilen alır dosyaları için bir önbellek ve SQL vardır kendi dahili bellek yönetim sistemine sahiptir.

Başvurulan MS makale danışma dışı-box hizmetleri, dosya paylaşımı gibi çalışan OS için olduğunu uygun değil.

Bir sayfa dosyası olması yeterlidir diski yük getirmektedir G / Ç, Windows yardım etmeye çalıştığı için, yalnızca SQL OS işi yapabilecekken.

Cevap 24/05/2011 saat 13:47
kaynak kullanıcı

oy
1

Eğer yüksek performans arıyorsanız, tamamen çağrı önlemek istiyorum olacak, bu yüzden sayfa dosya boyutunun en önemli hale gelir. DB sunucusu için mümkün olduğu kadar RAM yatırım yapın.

Cevap 11/08/2008 saat 13:22
kaynak kullanıcı

oy
0

Bu durumda, 1.5 katı toplam fiziksel RAM normal tavsiye iyi değildir. Bu çok genel öneri tüm bellek genellikle az kullanılan sayfalar bellek aittir Başvuru işlemi için kitlesel performans sorunları oluşturmadan diske taşınmış olabilir "normal" süreçler, tarafından kullanılıyor varsayımı altında sağlanır.

(RAM çok büyük miktarlarda genel olarak), SQL Server çalıştıran sunucular için, fiziksel RAM çoğunluğu SQL Sunucu işlemi kararlıdır ve (şekilde konfigüre) fiziksel bellek kilitli dosyası için belleğine önlemek zorundadır olmalıdır . SQL Server disk g / Ç azaltmak için bir veri önbelleği olarak işlem için ayrılan RAM büyük bir kısmını kullanarak, performans göz önünde tutularak dikkatle kendi belleği yönetir. ilk etapta RAM o verilere sahip tek amacının disk I / O azaltmaktır gibi, sayfa dışarı belleği dosyası için bu veri önbelleği sayfaları için bir anlam ifade etmiyor. (Windows OS ayrıca sistemin çalışmasını hızlandırmak için benzer disk önbelleği olarak kullanılabilir RAM kullandığını unutmayın.) SQL Server zaten kendi bellek alanını yöneten olduğundan, bu bellek alanı "sayfalanabilir" düşünülmemelidir,

Sanal bellek dilinde, "ayrılmış", ama başka bir işlem ile bir adres alanı (fiziksel alan) kullanımını önlemek için, gerçek ayırma belirtir çünkü hiçbir zaman Remus'a tarafından bahsedilen MEM_COMMIT ile ilgili olarak, terminoloji karmaşıktır. "Kararlı" olarak kullanılabilir Bellek fiziksel RAM ve disk belleği dosyası boyutu toplamına temelde eşittir ve MEM_COMMIT yapıyor sadece taahhüt havuzda kullanılabilir miktarı azalır. O mu değil o zaman disk belleği dosyası eşleşen bir sayfa ayırmaya. Kararlı bir bellek sayfa aslında yazıldığında sanal bellek sistemi fiziksel bellek sayfasını tahsis ve muhtemelen belleği dosyası için fiziksel RAM başka bellek sayfasını çarpmak ne zaman, olmasıdır. MSDN'ın Bkz VirtualAlloc işlevi referansı.

Windows işletim sistemi, uygulama süreçleri ve kendi disk önbelleği mekanizması arasındaki bellek basınçlarının izler ve belleği dosyası için fiziksel olmayan kilitli bellek sayfalarını çarpmak ne zaman karar verir. Benim anlayış gerçek dışı kilitli bellek alanı ile karşılaştırıldığında yol çok büyük olan bir disk belleği dosyası bulunması şevkle sayfa isabetsizlik sonuçlarını (yavaş performans) bu acı uygulamalar sonucunda, disk belleği dosyası için uygulama belleği doldurarak Windows'un neden olabilir.

Sürece sunucu olarak diğer bellek aç süreçleri çalışmıyor, 4GB disk belleği dosyası boyutu bol olmalıdır. Eğer hafızada kilitleme sayfaları izin vermek SQL Server kurduysanız kendisi ve diğer işlemler için OS için kullanılabilecek bazı fiziksel RAM bırakır, böylece, aynı zamanda SQL Server'ın maksimum bellek ayarı ayarlamayı düşünmelisiniz.

SQL Server 802 hataları sistem veri önbelleği için daha fazla sayfa işlemediği olabileceğini göstermektedir. disk belleği dosyası boyutu sadece ölçüde Windows'un olarak bu durumda yardımcı olacaktır artırılması olmayan SQL Server süreçlerden sayfa dışarı hafızayı edebilmektedir. Izin SQL Server bellek hata mesajları kurtulmak olabilir bu durumda belleği dosyası içine büyümeye, ancak bunun nedeni daha önce ilk etapta veri önbelleği nedeni hakkında noktaya aykırı bir uygulamadır.

Cevap 04/04/2014 saat 00:51
kaynak kullanıcı

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more