Azure premium depolama: yüksek performans tasarımı

Uygulama: ✔️ Linux VM'leri ✔️ Windows VM'ler ✔️ Esnek ölçek kümeleri ✔️ Tekdüz ölçek kümeleri

Bu makalede Azure Premium Depolama kullanarak yüksek performanslı uygulamalar Premium Depolama. Bu belgede sağlanan yönergeleri, uygulamanız tarafından kullanılan teknolojiler için geçerli olan performans en iyi yöntemleriyle birlikte kullanabilirsiniz. Yönergeleri göstermek için, bu belge SQL Server bir Premium Depolama üzerinde çalışan bir örnek kullandık.

Bu makalede Depolama için performans senaryolarını ele alarken, uygulama katmanını iyileştirmemiz gerekir. Örneğin, Azure Premium Depolama'de bir SharePoint Grubu barındırdıysanız, veritabanı sunucusunu iyileştirmek SQL Server bu makaledeki örneklerden kullanabilirsiniz. Ayrıca, SharePoint Farm'ın Web sunucusunu ve Uygulama sunucusunu en iyi duruma getirmek için en iyi duruma getirmeniz gerekir.

Bu makale, Azure Premium Depolama'de uygulama performansını iyileştirme hakkında aşağıdaki yaygın soruları yanıtlamanıza yardımcı Premium Depolama,

  • Uygulama performansınızı ölçme
  • Neden beklenen yüksek performansı görmüyorsunuz?
  • Hangi faktörler uygulama performansınızı Premium Depolama?
  • Bu faktörler, uygulama performansınızı Premium Depolama?
  • IOPS, Bant Genişliği ve Gecikme Süresi için nasıl en iyi duruma getirmeniz gerekir?

Premium Depolama üzerinde çalışan iş yükleri yüksek Premium Depolama için bu yönergeleri özellikle sağladık. Uygun olduğunda örnekler sağladık. Bu yönergelerin bazılarını Standart sanal disklere sahip IaaS VM'leri üzerinde çalışan uygulamalara Depolama uygulayabilirsiniz.

Not

Bazen, disk performansı sorunu gibi görünen bir sorun aslında bir ağ performans sorunudur. Bu gibi durumlarda ağ performansınızı iyileştirmeniz gerekir.

Diskiniz için kıyaslama yapmak için disk kıyaslama makalelerimize bakın:

VM'niz hızlandırılmış ağı destekliyorsa, etkinleştirildiğinden emin olun. Etkinleştirilmediyse, hem hem de Linux üzerinde zaten dağıtılmış vm'lerde Windows etkinleştirilebilir.

Başlamadan önce, yeni bir Premium Depolama, önce Premium sayfa blob depolama hesapları için IaaS VM'leri ve Ölçeklenebilirlik hedefleri için Azure disk türü seçin sayfasını okuyun.

Uygulama performansı göstergeleri

Bir uygulamanın iyi performans gösterip performans göstergesi kullanmama durumu, bir uygulamanın kullanıcı isteğini ne kadar hızlı işlemektedir, bir uygulamanın istek başına ne kadar veri işlemektedir, belirli bir süre içinde kaç istek işlemektedir, kullanıcının isteği gönderildikten sonra yanıt almak için ne kadar beklemesi gerekir gibi performans göstergelerini değerlendiririz. Bu performans göstergelerinin teknik terimleri IOPS, Aktarım Hızı veya Bant Genişliği ve Gecikme Süresi'dir.

Bu bölümde, performans göstergeleri bağlamındaki yaygın performans göstergelerini Premium Depolama. Aşağıdaki Uygulama Gereksinimlerini Toplama bölümünde, bu performans göstergelerini uygulamanıza göre ölçmeyi öğrenirsiniz. Daha sonra Uygulama Performansını İyileştir'de, bu performans göstergelerini etkileyen faktörler ve bunları iyileştirmeye yönelik öneriler hakkında bilgi edinmek için bu adımları tamamlayabilirsiniz.

IOPS

IOPS veya Saniye Başına Giriş/Çıkış İşlemleri, bir saniye içinde uygulamanın depolama diskine gönderdiği istek sayısıdır. Giriş/çıkış işlemi okuma veya yazma, sıralı veya rastgele olabilir. Çevrimiçi perakende satış web sitesi gibi Çevrimiçi İşlem İşleme (OLTP) uygulamalarının çok sayıda eşzamanlı kullanıcı isteğini hemen işlemesi gerekir. Kullanıcı istekleri, uygulamanın hızla işlemesi gereken ekleme ve güncelleştirme yoğun veritabanı işlemleridir. Bu nedenle, OLTP uygulamaları çok yüksek IOPS gerektirir. Bu tür uygulamalar milyonlarca küçük ve rastgele IO isteğini işlemektedir. Böyle bir uygulama varsa, uygulama altyapısını IOPS için en iyi duruma getirmek için tasarlamalısiniz. Sonraki bölümde, Uygulama Performansını İyi duruma getirme bölümünde, yüksek IOPS elde etmek için göz önünde bulunduracak tüm faktörleri ayrıntılı olarak ele aacağız.

Yüksek ölçekli VM'nize bir premium depolama diski eklediğinizde, Azure disk belirtimlerine göre size bir IOPS sayısı garantisi sağlar. Örneğin, bir P50 diski 7500 IOPS sağlar. Yüksek ölçekli her VM boyutunun sürdürebileceği belirli bir IOPS sınırı da vardır. Örneğin, Standart GS5 VM'lerinde 80.000 IOPS sınırı vardır.

Aktarım hızı

Aktarım hızı veya bant genişliği, uygulamanın belirli bir aralıkta depolama diskleri için gönderdiği veri miktarıdır. Uygulamanız büyük G/G/A birimi boyutlarına sahip giriş/çıkış işlemleri gerçekleştirmektedir, yüksek aktarım hızı gerektirir. Veri ambarı uygulamaları, verilerin büyük bölümlerine aynı anda erişen ve genellikle toplu işlemler gerçekleştiren yoğun tarama işlemleri gerçekleştirme eğilimindedir. Başka bir deyişle, bu tür uygulamalar daha yüksek aktarım hızı gerektirir. Böyle bir uygulama varsa, aktarım hızı için en iyi duruma getirmek için altyapısını tasarlamalısiniz. Sonraki bölümde, bunu başarmak için ayarlaması gereken faktörleri ayrıntılı olarak ele aacağız.

Yüksek ölçekli bir VM'ye premium depolama diski taktırdınız, Azure bu disk belirtimleri için aktarım hızı sağlar. Örneğin, bir P50 diski saniyede 250 MB disk aktarım hızı sağlar. Yüksek ölçekli her VM boyutunun sürdürebileceği belirli bir aktarım hızı sınırı da vardır. Örneğin, Standard GS5 VM'sinin aktarım hızı üst sınırı saniyede 2.000 MB'tır.

Aşağıdaki formülde gösterildiği gibi aktarım hızı ile IOPS arasında bir ilişki vardır.

IOPS ve aktarım hızı ilişkisi

Bu nedenle, uygulamanıza gereken en uygun aktarım hızı ve IOPS değerlerini belirlemek önemlidir. Birini iyileştirmeye çalışarak diğeri de etkilenir. Daha sonraki bir bölümde, Uygulama Performansını İyi hale getirme bölümünde IOPS ve Aktarım Hızını iyileştirme hakkında daha fazla ayrıntıyı ele aacağız.

Gecikme süresi

Gecikme süresi, bir uygulamanın tek bir istek alma, depolama disklere gönderme ve yanıtı istemciye gönderme süresidir. Bu, IOPS ve Aktarım Hızı'nın yanı sıra bir uygulamanın performansının kritik bir ölçüsüdür. Premium depolama diskin gecikme süresi, bir isteğin bilgilerini almak ve uygulamanıza geri ilet olmak için gereken süredir. Premium Depolama tutarlı düşük gecikme süreleri sağlar. Premium Diskler, çoğu IO işlemi için tek basamaklı milisaniyelik gecikme süreleri sağlamak üzere tasarlanmıştır. Premium depolama diskleri üzerinde ReadOnly ana bilgisayar önbelleğini etkinleştirirsanız okuma gecikme süresini çok daha düşük hale gelirsiniz. Uygulama Performansını İyi Önbelleğe Alma bölümünde Disk depolama alanı hakkında daha ayrıntılı bilgi edineceğiz.

Daha yüksek IOPS ve Aktarım Hızı elde etmek için uygulamanızı en iyi duruma getirerek uygulamanın gecikme süresini etkiler. Uygulama performansını ayardikten sonra, beklenmeyen yüksek gecikme süresi davranışından kaçınmak için her zaman uygulamanın gecikme süresini değerlendirin.

Aşağıdaki kontrol düzlemi Yönetilen Diskler diskin bir konumdan diğerine Depolama olabilir. Bu, disklerdeki veri miktarına bağlı olarak genellikle 24 saatten kısa bir sürede tamamlanması birkaç saat süren arka plan veri kopyası aracılığıyla biçimlendirilmiştir. Bu süre boyunca, bazı okumalar özgün konuma yeniden yönlendirilene ve tamamlanması daha uzun sürebilir. Bu süre boyunca yazma gecikmesi üzerinde herhangi bir etkisi yoktur.

  • Depolama türünü güncelleştirin.
  • Bir vm'den diğerine disk ayırma ve ekleme.
  • VHD'den yönetilen disk oluşturma.
  • Anlık görüntüden yönetilen disk oluşturun.
  • Yönetilemeyen diskleri yönetilen disklere dönüştürebilirsiniz.

Diskler için Performans Uygulaması Denetim Listesi

Azure Premium Depolama üzerinde çalışan yüksek performanslı uygulamalar tasarlamanın ilk adımı, uygulamanın performans gereksinimlerini anlamaktır. Performans gereksinimlerini topladikten sonra, en iyi performansı elde etmek için uygulamanızı en iyi duruma getirmeniz gerekir.

Önceki bölümde, yaygın performans göstergeleri, IOPS, Aktarım Hızı ve Gecikme Süresi açıklanmıştır. İstenen kullanıcı deneyimini sunmak için bu performans göstergelerinin hangilerinin uygulamanıza kritik öneme sahip olduğunu belirlemelisiniz. Örneğin, yüksek IOPS en çok bir saniye içinde milyonlarca işlemi işen OLTP uygulamaları için önemlidir. Yüksek Aktarım Hızı, uygulamaların Data Warehouse miktarda veri işlemesi için kritik öneme sahiptir. Canlı video akışı web siteleri gibi gerçek zamanlı uygulamalar için son derece düşük gecikme süresi çok önemlidir.

Ardından, yaşam süresi boyunca uygulamanıza en yüksek performans gereksinimlerini ölçün. Başlangıç olarak aşağıdaki örnek denetim listesini kullanın. Normal, yoğun ve çalışma saatleri dışı iş yükü dönemlerinde en yüksek performans gereksinimlerini kaydetme. Tüm iş yükü düzeylerine yönelik gereksinimleri belirleyerek, uygulamanıza yönelik genel performans gereksinimini belirleyebilirsiniz. Örneğin, bir e-ticaret web sitesinin normal iş yükü, bir yıl içinde çoğu gün boyunca hizmet ettiği işlemlerdir. Web sitesinin en yoğun iş yükü, tatil mevsimi veya özel satış etkinlikleri sırasında hizmet ettiği işlemler olacak. Yoğun iş yükü genellikle sınırlı bir süreyle yaşansa da, uygulamanın normal işlemi için iki veya daha fazla kez ölçeklendirmesini gerektirir. 50 yüzdebirlik, 90 yüzdebirlik ve 99 yüzdebirlik gereksinimleri bulun. Bu, performans gereksinimlerinin tüm çıktılarını filtrelemeye yardımcı olur ve çabalarınızı doğru değerler için iyileştirmeye odaklanabilirsiniz.

Uygulama performansı gereksinimleri denetim listesi

Performans gereksinimleri 50 Yüzdebirlik 90 Yüzdebirlik 99 Yüzdebirlik
En çok, Saniye başına işlem sayısı
Okuma işlemleri %
Yazma işlemleri %
Rastgele işlemler %
Sıralı işlemler %
IO istek boyutu
Ortalama Aktarım Hızı
En çok, Aktarım hızı
Dk. Gecikme süresi
Ortalama Gecikme Süresi
En çok, CPU
Ortalama CPU
En çok, Bellek
Ortalama Bellek
Kuyruk Derinliği

Not

Bu sayıları, uygulamanın gelecekteki beklenen büyümesine göre ölçeklendirmeyi göz önünde bulundurabilirsiniz. Daha sonra performansı geliştirmek için altyapıyı değiştirmek daha zor olabilir, çünkü büyümeyi daha önce planlamak iyi bir fikirdir.

Mevcut bir uygulamanız varsa ve bu uygulamaya Premium Depolama, önce mevcut uygulama için yukarıdaki denetim listesini derlemeniz gerekir. Ardından, uygulamanıza yönelik bir prototip Premium Depolama ve bu belgenin sonraki bir bölümünde Uygulama Performansını En Iyi Duruma Getirme bölümünde açıklanan yönergelere göre uygulamayı tasarlarsınız. Sonraki makalede, performans ölçümlerini toplamak için kullanabileceğiniz araçlar açıklanmıştır.

Uygulama performansı gereksinimlerini ölçmek için sayaçlar

Uygulamanın performans gereksinimlerini ölçmenin en iyi yolu, sunucunun işletim sistemi tarafından sağlanan performans izleme araçlarını kullanmaktır. Linux için perfMon Windows iostat kullanabilirsiniz. Bu araçlar, yukarıdaki bölümde açıklanan her ölçüye karşılık gelen sayaçları yakalar. Uygulamanız normal, yoğun ve çalışma saatleri dışı iş yüklerini çalıştırıyorsa bu sayaçların değerlerini yakalamanız gerekir.

PerfMon sayaçları işlemci, bellek ve her mantıksal disk ve sunucu fiziksel diski için kullanılabilir. Bir VM ile premium depolama diskleri kullanırken, fiziksel disk sayaçları her premium depolama diski için, mantıksal disk sayaçları ise premium depolama diskleri üzerinde oluşturulan her birim için kullanılır. Uygulama iş yüklerinizi barındıran disklerin değerlerini yakalamanız gerekir. Mantıksal ve fiziksel diskler arasında bire bir eşleme varsa, fiziksel disk sayaçlarını kullanabilirsiniz; aksi takdirde mantıksal disk sayaçlarını kullanın. Linux'ta iostat komutu bir CPU ve disk kullanım raporu üretir. Disk kullanım raporu fiziksel cihaz veya bölüm başına istatistikler sağlar. Verilerine sahip bir veritabanı sunucunuz ve ayrı disklerde günlükler varsa, her iki disk için de bu verileri toplayın. Aşağıdaki tabloda diskler, işlemciler ve bellek sayaçları açıklanmıştır:

Sayaç Description Perfmon Iostat
Saniye başına IOPS veya İşlem sayısı Saniye başına depolama diske verilen I/O isteklerinin sayısı. Disk Okuma/sn
Disk Yazma/sn
Tps
r/sn
w/sn
Disk Okuma ve Yazma Diskte gerçekleştirilen Okuma ve Yazma işlemlerinin % . Disk Okuma Süresi %
Disk Yazma Süresi %
r/sn
w/sn
İşleme hızı Diskten okunan veya diske yazılan veri miktarı. Disk Okuma Bayt/sn
Disk Yazma Bayt/sn
kB_read/sn
kB_wrtn/sn
Gecikme süresi Disk IO isteğini tamamlamak için toplam süre. Ortalama Disk sn/Okuma
Ortalama disk sn/Yazma
bekleme
svctm
IO boyutu Depolama diskleri için sorun isteği boyutu. Ortalama Disk Bayt/Okuma
Ortalama Disk Bayt/Yazma
avgrq-sz
Kuyruk Derinliği Depolama diskten okunan veya depolama diske yazılan bekleyen I/O isteklerinin sayısı. Geçerli Disk Kuyruğu Uzunluğu avgqu-sz
En Fazla Bellek Uygulamayı sorunsuz çalıştırmak için gereken bellek miktarı KullanımDa Kaydedilmiş Bayt % Vmstat kullanma
Maksimum CPU Uygulamayı sorunsuz çalıştırmak için gereken CPU miktarı İşlemci süresi % %util

iostat ve PerfMonhakkında daha fazla bilgi.

Uygulama performansını iyileştirme

Premium Depolama üzerinde çalışan bir uygulamanın performansını etkileyen ana faktörler, IO isteklerinin doğası, VM boyutu, Disk boyutu, Disk sayısı, disk önbelleğe alma, çoklu iş parçacığı ve kuyruk derinliğidir. Sistem tarafından sağlanan düğmelerle bu faktörlerden bazıları kontrol altına alındı. Çoğu uygulama, size doğrudan IO boyutunu ve Kuyruk Derinliğini değiştirme seçeneği vermeyebilirsiniz. Örneğin, IO boyutunu SQL Server kuyruk derinliğini seçesiniz. SQL Server en iyi performansı elde etmek için en uygun IO boyutu ve kuyruk derinliği değerlerini seçer. Performans ihtiyaçlarını karşılamak için uygun kaynakları sağ tedarik etmek için her iki tür faktörün de uygulama performansınıza etkilerini anlamak önemlidir.

Bu bölüm boyunca, uygulama performansınızı iyileştirmek için ne kadar ihtiyacınız olduğunu belirlemek için oluşturduğunuz uygulama gereksinimleri denetim listesine bakın. Buna bağlı olarak, bu bölümden hangi faktörleri ayarlamaya ihtiyacınız olacağını belirleyebilirsiniz. Her faktörün uygulama performansınıza etkilerine tanık olmak için, uygulama kurulumda karşılaştırma araçlarını çalıştırın. Windows ve Linux VM'lerde yaygın karşılaştırma araçlarını çalıştırma adımları için, en sona bağlı Karşılaştırma makalesine bakın.

Bir bakışta IOPS, aktarım hızı ve gecikme süresini iyileştirme

Aşağıdaki tabloda IOPS, aktarım hızı ve gecikme süresini iyileştirmek için gereken performans faktörleri ve adımlar özetlenmiştir. Bu özetin ardından gelen bölümlerde her faktörün çok daha derin olduğu açıklanmaktadır.

Vm boyutları ve her vm türü için kullanılabilen IOPS, aktarım hızı ve gecikme süresi hakkında daha fazla bilgi için bkz. Azure'da sanal makinelerin boyutları.

IOPS İşleme hızı Gecikme süresi
Örnek Senaryo Enterprise Saniye başına çok yüksek işlem hızı gerektiren OLTP uygulaması. Enterprise Büyük miktarlardaki verileri işen veri depolama uygulaması. Çevrimiçi oyun gibi kullanıcı isteklerine anında yanıt gerektiren neredeyse gerçek zamanlı uygulamalar.
Performans faktörleri      
IO boyutu Daha küçük bir IO boyutu daha yüksek IOPS sağlar. Daha yüksek Aktarım Hızı elde etmek için daha büyük bir IO boyutu.  
VM boyutu Uygulama gereksiniminden daha büyük IOPS sunan bir VM boyutu kullanın. Aktarım hızı sınırı uygulama gereksiniminden daha yüksek olan bir VM boyutu kullanın. Uygulama gereksiniminden daha büyük ölçek sınırları sunan bir VM boyutu kullanın.
Disk boyutu Uygulama gereksiniminden daha büyük IOPS sunan bir disk boyutu kullanın. Aktarım hızı sınırı uygulama gereksiniminden yüksek bir disk boyutu kullanın. Uygulama gereksiniminden daha büyük ölçek sınırları sunan bir disk boyutu kullanın.
VM ve Disk Ölçek Sınırları Seçilen VM boyutunun IOPS sınırı, ona bağlı depolama diskleri tarafından yönlendirilen toplam IOPS'den büyük olması gerekir. Seçilen VM boyutunun aktarım hızı sınırı, ona bağlı premium depolama diskleri tarafından yönlendirilen toplam Aktarım Hızı'dan büyük olması gerekir. Seçilen VM boyutunun ölçek sınırları, bağlı premium depolama disklerinin toplam ölçek sınırlarından büyük olması gerekir.
Disk Önbelleğe Alma Okuma yoğun işlemleriyle premium depolama diskleri üzerinde ReadOnly Önbelleğini etkinleştirarak okuma IOPS'yi daha yüksek bir düzeye çıkarabilirsiniz.   Çok düşük Okuma gecikme süreleri elde etmek için Yoğun kullanıma hazır işlemlerle premium depolama diskleri üzerinde ReadOnly Önbelleğini etkinleştirin.
Disk Bölümleme Birden çok disk kullanın ve birleşik bir yüksek IOPS ve Aktarım Hızı sınırı elde etmek için bunları birlikte şeritler. VM başına birleşik sınır, eklenen premium disklerin birleşik sınırlardan yüksek olması gerekir.    
Şerit Boyutu OLTP uygulamalarında görülen rastgele küçük bir IO deseni için daha küçük şerit boyutu. Örneğin, OLTP uygulaması için 64 KB SQL Server kullanın. Sıralı büyük IO deseni için daha büyük şerit boyutu, Data Warehouse görülür. Örneğin, veri ambarı uygulaması için 256 KB şerit SQL Server kullanın.  
Çoklu iş parçacığı kullanımı Daha yüksek IOPS ve aktarım hızına yol açacak Premium Depolama istekler için çoklu iş parçacığı kullanımı kullanın. Örneğin, SQL Server daha fazla CPU ayırmak için yüksek bir MAXDOP değeri SQL Server.    
Kuyruk Derinliği Daha Büyük Kuyruk Derinliği daha yüksek IOPS sağlar. Daha Büyük Kuyruk Derinliği daha yüksek Aktarım Hızı sağlar. Daha küçük Kuyruk Derinliği daha düşük gecikme süreleri sağlar.

IO isteklerinin doğası

G/S isteği, uygulamanıza gerçekleştirecekleri giriş/çıkış işlemi birimidir. Rastgele veya sıralı, okuma veya yazma, küçük veya büyük IO isteklerinin doğasını tanımlamak, uygulamanıza yönelik performans gereksinimlerini belirlemenize yardımcı olur. Uygulama altyapınızı tasarlarken doğru kararları vermek için, IO isteklerinin doğasını anlamak önemlidir. Mümkün olan en iyi performansı elde etmek için IO'lar eşit dağıtılmalıdır.

En önemli faktörlerden biri, IO boyutudur. G/VERI boyutu, uygulama tarafından oluşturulan giriş/çıkış işlemi isteğinin boyutudur. IO boyutunun, özellikle de uygulamanın başarabiliyor olduğu IOPS ve Bant Genişliği üzerinde performans üzerinde önemli bir etkisi vardır. Aşağıdaki formül IOPS, IO boyutu ve Bant Genişliği/Aktarım Hızı arasındaki ilişkiyi gösterir.
I O P S ile O boyutunun Aktarım Hızına eşit olduğu denklemini gösteren diyagram.

Bazı uygulamalar, kendi IO boyutunu değiştirmesine olanak sağlarken bazı uygulamalar bunu yapmaz. Örneğin, SQL Server en uygun IO boyutunu belirler ve kullanıcılara bunu değiştirmek için düğme sağlamaz. Öte yandan Oracle, veritabanının I/O istek boyutunu yapılandırarak DB _ BLOCK _ SIZE adlı bir parametre sağlar.

G/Ç boyutunu değiştirmenizi sağlayan bir uygulama kullanıyorsanız, uygulamanıza en uygun KPI performansını iyileştirmek için bu makaledeki yönergeleri kullanın. Örneğin,

  • OLTP uygulaması milyonlarca küçük ve rastgele IO isteği üretir. Bu tür IO isteklerini işlemek için uygulama altyapınızı daha yüksek IOPS elde etmek için tasarlamanız gerekir.
  • Veri depolama uygulaması büyük ve sıralı IO istekleri üretir. Bu tür IO isteklerini işlemek için uygulama altyapınızı daha yüksek Bant Genişliği veya Aktarım Hızı elde etmek üzere tasarlamanız gerekir.

IO boyutunu değiştirmenizi sağlayan bir uygulama kullanıyorsanız, diğer performans yönergelerine ek olarak, IO boyutu için bu başparmak kuralını kullanın,

  • Daha yüksek IOPS elde etmek için daha küçük bir IO boyutu. Örneğin, olTP uygulaması için 8 KB.
  • Daha yüksek Bant Genişliği/Aktarım Hızı elde etmek için daha büyük bir IO boyutu. Örneğin, bir veri ambarı uygulaması için 1024 KB.

Burada, uygulamanıza uygun IOPS ve Aktarım Hızı/Bant Genişliği'nin nasıl hesaplayabilirsiniz? P30 disk kullanan bir uygulamayı göz önünde bulundurabilirsiniz. Bir P30 diskin ulaşabilirsiniz maksimum IOPS ve Aktarım Hızı/Bant Genişliği sırasıyla 5000 IOPS ve saniye başına 200 MB'tır. Şimdi, uygulamanız P30 diskten en fazla IOPS gerektiriyorsa ve 8 KB gibi daha küçük bir IO boyutu kullanıyorsanız, elde etmek istediğiniz Bant Genişliği saniye başına 40 MB'tır. Ancak, uygulamanız P30 diskten en yüksek Aktarım Hızı/Bant Genişliği gerektiriyorsa ve 1024 KB gibi daha büyük bir IO boyutu kullanıyorsanız, sonuçta elde edilen IOPS 200 IOPS'den az olur. Bu nedenle, IO boyutunu, hem uygulamanın IOPS hem de Aktarım Hızı/Bant Genişliği gereksinimini karşılayacak şekilde ayarlamanız gerekir. Aşağıdaki tabloda, P30 disk için farklı IO boyutları ve bunların karşılık gelen IOPS ve Aktarım Hızı özetlenmiştir.

Uygulama Gereksinimi I/O boyutu IOPS Aktarım Hızı/Bant Genişliği
Maks. IOPS 8 KB 5.000 Saniye başına 40 MB
En Fazla Aktarım Hızı 1024 KB 200 Saniye başına 200 MB
En Yüksek Aktarım Hızı + yüksek IOPS 64 KB 3,200 Saniye başına 200 MB
Maksimum IOPS + yüksek Aktarım Hızı 32 KB 5.000 Saniye başına 160 MB

IOPS ve Bant Genişliğini tek bir premium depolama diskin maksimum değerinden daha yüksek bir değere almak için, birlikte şeritli birden çok premium disk kullanın. Örneğin, 10.000 IOPS birleşik IOPS veya saniye başına 400 MB birleşik Aktarım Hızı elde etmek için iki P30 diske şerit. Sonraki bölümde açıklanmıştır, birleşik disk IOPS ve Aktarım Hızı destekleyen bir VM boyutu kullan gerekir.

Not

IOPS'yi veya Aktarım Hızını artırtıkça diğerini de artırarak diskin veya VM'nin aktarım hızı veya IOPS sınırlarına isabet edesiniz.

Uygulama performansı üzerinde GÇ boyutunun etkilerini sağlamak için, VM 'niz ve disklerinizde benchişaretleme araçları çalıştırabilirsiniz. Birden çok test çalıştırması oluşturun ve etkiyi görmek için her çalıştırma için farklı GÇ boyutu kullanın. Daha fazla ayrıntı için, sonda bağlı olan Benchişaretleme makalesine başvurun.

Yüksek ölçekli VM boyutları

Bir uygulamayı tasarlamaya başladığınızda, ilk yapmanız gereken tek şey, uygulamanızı barındırmak için bir VM seçin. Premium Depolama, daha yüksek bilgi işlem gücü ve yüksek bir yerel disk g/ç performansı gerektiren uygulamalar çalıştırabilen yüksek ölçekli VM boyutlarına sahiptir. Bu VM 'Ler, daha hızlı işlemciler, daha yüksek bellek-çekirdek oranı ve yerel disk için bir Solid-State sürücüsü (SSD) sağlar. Premium Depolama destekleyen yüksek ölçekli sanal makinelerin örnekleri DS ve GS serisi vm 'lardır.

Yüksek ölçekli VM 'Ler, farklı boyutlarda CPU çekirdekleri, bellek, işletim sistemi ve geçici disk boyutuyla farklı boyutlarda kullanılabilir. Her VM boyutunun Ayrıca sanal makineye iliştirebilmeniz için maksimum veri diski sayısı vardır. Bu nedenle, seçilen VM boyutu, uygulamanız için ne kadar işlem, bellek ve depolama kapasitesi olduğunu etkiler. ayrıca işlem ve Depolama maliyetini da etkiler. Örneğin, bir DS serisi ve GS serisi içindeki en büyük VM boyutunun belirtimleri aşağıda verilmiştir:

VM boyutu CPU çekirdekleri Bellek VM diski boyutları En çok, veri diskleri Önbellek boyutu IOPS Bant genişliği önbellek GÇ sınırları
Standard_DS14 16 112 GB OS = 1023 GB
Yerel SSD = 224 GB
32 576 GB 50.000 ıOPS
saniyede 512 MB
4.000 ıOPS ve 33 MB/saniye
Standard_GS5 32 448 GB OS = 1023 GB
Yerel SSD = 896 GB
64 4224 GB 80.000 ıOPS
saniyede 2.000 MB
5.000 ıOPS ve 50 MB/saniye

Tüm kullanılabilir Azure VM boyutlarının listesini görüntülemek için, Azure 'da sanal makineler Için boyutlarabakın. İstenen uygulama performansı gereksinimlerinize uyan ve ölçeklendirebilen bir VM boyutu seçin. Buna ek olarak, VM boyutlarını seçerken önemli noktalara göz atın.

Ölçek sınırları
VM başına en fazla ıOPS sınırı ve disk başına her ikisi birbirinden farklıdır. Uygulamanın ıOPS 'yi VM sınırları içinde ve ona bağlı olan Premium disklere yönlendirdiğinden emin olun. Aksi takdirde, uygulama performansı azaltma deneyimidir.

Örnek olarak, bir uygulama gereksiniminin en fazla 4.000 ıOPS olduğunu varsayalım. Bunu başarmak için, bir DS1 sanal makinesine P30 diski sağlayacaksınız. P30 diski en fazla 5.000 ıOPS sağlayabilir. Ancak, DS1 VM 3.200 ıOPS ile sınırlıdır. Sonuç olarak, uygulama performansı 3.200 ıOPS 'de VM sınırı ile sınırlandırılır ve performans düzeyi düşecek. Bu durumu engellemek için, uygulama gereksinimlerini karşılayacak bir VM ve disk boyutu seçin.

Işlem maliyeti
çoğu durumda, Premium Depolama kullanarak genel işlem maliyetiniz standart Depolama kullanmaktan daha düşüktür.

Örneğin, 16.000 ıOPS gerektiren bir uygulamayı düşünün. Bu performansı elde etmek için standart bir _ D14 Azure IaaS sanal makinesi gerekir ve bu, 32 standart depolama 1 TB disklerini kullanarak en fazla 16.000 IOPS sağlayabilir. Her 1 TB standart depolama diski en fazla 500 ıOPS elde edebilir. Bu VM 'nin aylık tahmini maliyeti $1.570 olacaktır. 32 standart depolama disklerinin aylık maliyeti $1.638 olacaktır. Tahmini toplam aylık maliyet $3.208 olacaktır.

ancak, Premium Depolama üzerinde aynı uygulamayı barındırdıysanız, daha küçük bir VM boyutu ve daha az Premium depolama diski gerekir ve bu sayede genel maliyeti azaltabilirsiniz. Standart bir _ DS13 VM, dört P30 diski kullanarak 16.000 IOPS gereksinimini karşılayabilir. DS13 VM en fazla 25.600 ıOPS 'ye sahiptir ve her P30 diskte en fazla 5.000 ıOPS vardır. Genel olarak, bu yapılandırma 5.000 x 4 = 20.000 ıOPS elde edebilir. Bu VM 'nin aylık tahmini maliyeti $1.003 olacaktır. Dört P30 Premium Depolama diskinin aylık maliyeti $544,34 olacaktır. Tahmini toplam aylık maliyet $1.544 olacaktır.

aşağıdaki tablo, standart ve Premium Depolama için bu senaryonun maliyet dökümünü özetler.

  Standart Premium
Aylık VM maliyeti $1.570,58 (Standart _ D14) $1.003,66 (Standart _ DS13)
Aylık disk maliyeti $1.638,40 (32 x 1-TB disk) $544,34 (4 x P30 disk)
Aylık genel maliyet $3.208,98 $1.544,34

Linux distros

Azure Premium Depolama ile Windows ve Linux çalıştıran vm 'ler için aynı performans düzeyine sahip olursunuz. Linux distros 'in birçok türünü destekliyoruz. Daha fazla bilgi için bkz. Azure 'da desteklenen Linux dağıtımları. Farklı iş yüklerinin farklı türleri için daha uygun olduğunu unutmamak önemlidir. İş yükünüzün üzerinde çalıştığı bir değere göre farklı düzeylerde performans göreceksiniz. Linux Distro 'lara 'yi uygulamanızla test edin ve en iyi şekilde çalışacak olanı seçin.

Linux 'u Premium Depolama ile çalıştırırken, yüksek performans sağlamak için gerekli sürücülerle ilgili en son güncelleştirmeleri denetleyin.

Premium depolama diski boyutları

Azure Premium Depolama, gereksinimlerinize en uygun olanı seçebilmeniz için çeşitli boyutlar sunmaktadır. Her disk boyutunun ıOPS, bant genişliği ve depolama için farklı ölçek sınırı vardır. uygulama gereksinimlerine ve yüksek ölçekli VM boyutuna bağlı olarak Depolama Disk boyutunu doğru Premium seçin. Aşağıdaki tabloda, disklerin boyutları ve özellikleri gösterilmektedir. P4, P6, P15, P60, P70 ve P80 boyutları şu anda yalnızca yönetilen diskler için desteklenmektedir.

Premium SSD boyutları P1 P2 P3 P4 P6 P10 P15 P20 P30 P40 P50 P60 P70 P80
GiB'de disk boyutu 4 8 16 32 64 128 256 512 1,024 2.048 4,096 8,192 16.384 32.767
Disk başına sağlanan IOPS 120 120 120 120 240 500 1.100 2.300 5.000 7.500 7.500 16.000 18.000 20.000
Disk başına Sağlanan Aktarım Hızı 25 MB/sn 25 MB/sn 25 MB/sn 25 MB/sn 50 MB/sn 100 MB/sn 125 MB/sn 150 MB/sn 200 MB/sn 250 MB/sn 250 MB/sn 500 MB/sn 750 MB/sn 900 MB/sn
Disk başına en fazla artış IOPS 3.500 3.500 3.500 3.500 3.500 3.500 3.500 3.500 30,000* 30,000* 30,000* 30,000* 30,000* 30,000*
Disk başına en fazla aktarım hızı 170 MB/sn 170 MB/sn 170 MB/sn 170 MB/sn 170 MB/sn 170 MB/sn 170 MB/sn 170 MB/sn 1.000 MB/sn* 1.000 MB/sn* 1.000 MB/sn* 1.000 MB/sn* 1.000 MB/sn* 1.000 MB/sn*
Maksimum seri süre 30 dk 30 dk 30 dk 30 dk 30 dk 30 dk 30 dk 30 dk Sınırsız* Sınırsız* Sınırsız* Sınırsız* Sınırsız* Sınırsız*
Rezervasyon için uygun Hayır Hayır Hayır Hayır Hayır Hayır Hayır Hayır Evet, en fazla bir yıl Evet, en fazla bir yıl Evet, en fazla bir yıl Evet, en fazla bir yıl Evet, en fazla bir yıl Evet, en fazla bir yıl

*Yalnızca isteğe bağlı serinin etkin olduğu diskler için geçerlidir.

Kaç disk seçtiğiniz disk boyutuna bağlıdır. Uygulamanızın gereksinimini karşılamak için tek bir P50 disk veya birden çok P10 diski kullanabilirsiniz. Seçim yaparken aşağıda listelenen hesaba göz atın.

Ölçek sınırları (ıOPS ve aktarım hızı)
her bir Premium disk boyutunun ıops ve aktarım hızı sınırları farklı ve VM ölçek limitinden bağımsızdır. Disklerden toplam ıOPS ve üretilen Iş üretiminin, seçilen VM boyutunun ölçek sınırları içinde olduğundan emin olun.

Örneğin, bir uygulama gereksinimi en fazla 250 MB/sn aktarım hızı ise ve tek bir P30 diski ile bir DS4 VM kullanıyorsanız. DS4 VM, en fazla 256 MB/sn aktarım hızı verebilir. Ancak, tek bir P30 diskinde 200 MB/sn aktarım hızı sınırı vardır. Sonuç olarak, uygulama, disk sınırı nedeniyle 200 MB/sn ile kısıtlanır. Bu sınırı aşmak için, VM 'de birden fazla veri diski sağlayın veya disklerinizi P40 veya P50 olarak yeniden boyutlandırın.

Not

Önbellek tarafından sunulan okumalar disk ıOPS ve aktarım hızına dahil değildir, bu nedenle disk sınırlarına tabi değildir. Önbelleğin VM başına ayrı ıOPS ve aktarım hızı sınırı vardır.

Örneğin, başlangıçta okuma ve yazma işlemleri sırasıyla 60MB/sn ve 40MB/sn 'DIR. Zaman içinde önbellek, önbellekten daha fazla ve daha fazla okuma yapar. Daha sonra, diskten daha yüksek yazma aktarım hızı edinebilirsiniz.

Disk sayısı
Uygulama gereksinimlerini değerlendirerek gereken disk sayısını belirleme. Her VM boyutunun Ayrıca VM 'ye iliştirebilmeniz için disk sayısıyla ilgili bir sınırı vardır. Genellikle, bu çekirdek sayısı iki katına kaydedilir. Seçtiğiniz VM boyutunun, gereken disk sayısını destekleyediğinden emin olun.

Premium Depolama disklerinin standart Depolama disklere kıyasla daha yüksek performans özelliklerine sahip olduğunu unutmayın. bu nedenle, uygulamanızı standart Depolama kullanarak Azure ıaas VM 'den geçiriyorsanız Premium Depolama, uygulamanız için aynı veya daha yüksek performans elde etmek için büyük olasılıkla daha az Premium disk gerekecektir.

Disk önbelleği

Azure Premium Depolama yararlanan yüksek ölçekli vm 'ler blobcache adlı çok katmanlı bir önbelleğe alma teknolojisine sahiptir. BlobCache, önbelleğe alma için ana bilgisayar RAM ve yerel SSD 'nin bir birleşimini kullanır. bu önbellek, Premium Depolama kalıcı diskler ve VM yerel diskleri için kullanılabilir. varsayılan olarak, bu önbellek ayarı, işletim sistemi diskleri için okuma/yazma, Premium Depolama barındırılan veri diskleri için salt okunur olarak ayarlanır. Premium Depolama disklerde disk önbelleği etkinleştirildiğinde, yüksek ölçekli vm 'ler temel disk performansını aşan son derece yüksek performans düzeyine sahip olabilir.

Uyarı

Disk Önbelleğe Alma 4 TiB ve daha büyük diskler için desteklenmez. Sanal makinenize birden çok disk eklendiyse, 4 TiB’den küçük olan her bir disk önbelleğe almayı destekleyecektir.

Bir Azure diskinin önbellek ayarını değiştirmek diski ayırıp yeniden ekler. İşletim sistemi diski ise, VM yeniden başlatılır. Disk önbellek ayarını değiştirmeden önce bu kesintiden etkilenebilecek tüm uygulamaları/hizmetleri durdurun. Bu önerilerin takip edilmez veri bozulmasına yol açabilir.

blobcache 'in nasıl çalıştığı hakkında daha fazla bilgi edinmek için Azure Premium Depolama blog gönderisine bakın.

Doğru disk kümesinde önbelleğin etkinleştirilmesi önemlidir. Bir Premium diskte disk önbelleğe almayı etkinleştirmeniz gerekip gerekmediğini belirten bir işlem, diskin işleme alınacak iş yükü düzenine bağlıdır. Aşağıdaki tabloda, işletim sistemi ve veri diskleri için varsayılan önbellek ayarları gösterilmektedir.

Disk türü Varsayılan önbellek ayarı
İşletim sistemi diski ReadWrite
Veri diski ReadOnly

Veri diskleri için önerilen disk önbelleği ayarları aşağıda verilmiştir.

Disk önbelleğe alma ayarı Bu ayarın ne zaman kullanılacağı önerisi
Hiçbiri Ana bilgisayar ön belleğini salt yazılır ve yazma ağır diskler için hiçbiri olarak yapılandırın.
ReadOnly Salt okunur ve okuma/yazma diskleri için konak önbelleğini ReadOnly olarak yapılandırın.
ReadWrite Konak ön belleğini yalnızca, uygulamanız gerektiğinde kalıcı disklere önbelleğe alınmış verileri yazmayı doğru şekilde işlediğinde, salt yazılır olarak yapılandırın.

Özelliğinin
Premium Depolama veri disklerinde ReadOnly önbelleğe alma yapılandırarak, düşük okuma gecikmesi elde edebilir ve uygulamanız için çok fazla okuma ıops ve aktarım hızı elde edebilirsiniz. Bunun nedeni iki nedenden dolayı

  1. VM belleği ve yerel SSD üzerinde olan önbellekten gerçekleştirilen okumalar, Azure Blob depolamada bulunan veri diskinden okumalarından çok daha hızlıdır.
  2. Premium Depolama, önbellekten sunulan okuma sayısını, disk ıops ve aktarım hızına doğru saymaz. Bu nedenle, uygulamanız toplam ıOPS ve aktarım hızı elde edebilir.

ReadWrite
Varsayılan olarak, işletim sistemi disklerinin ReadWrite önbelleği etkindir. Kısa süre önce veri disklerinde de ReadWrite önbelleği desteği ekledik. Okuma önbelleği kullanıyorsanız, verileri önbellekten kalıcı disklere yazmak için uygun bir yola sahip olmanız gerekir. örneğin, SQL Server önbelleğe alınan verileri kendi kendine kalıcı depolama disklerine yazmayı işler. Gerekli verileri kalıcı olarak işlemeyen bir uygulamayla ReadWrite önbelleği kullanmak, VM kilitlenirse veri kaybına yol açabilir.

Hiçbiri
Şu anda hiçbiri yalnızca veri disklerinde desteklenir. İşletim sistemi disklerinde desteklenmez. Bir işletim sistemi diskinde hiçbiri ayarlarsanız, bunu dahili olarak geçersiz kılar ve salt okunur olarak ayarlar.

örnek olarak, aşağıdaki işlemleri yaparak Premium Depolama çalışan SQL Server için bu yönergeleri uygulayabilirsiniz.

  1. Veri dosyalarını barındıran Premium Depolama disklerinde "ReadOnly" önbelleğini yapılandırın.
    a. veri sayfalarının önbellekten doğrudan veri disklerinden kıyasla daha hızlı bir şekilde alınmasından sonra önbellekten hızlı okuma SQL Server sorgu süresini azaltır.
    b. Önbellekten okuma hizmeti sunma, Premium veri disklerinden daha fazla verimlilik olduğu anlamına gelir. SQL Server, daha fazla veri sayfası ve yedekleme/geri yükleme, toplu iş yükleri ve dizin yeniden oluştur gibi diğer işlemleri almak için bu ek aktarım hızını kullanabilir.
  2. Günlük dosyalarını barındıran Premium Depolama disklerinde "none" önbelleğini yapılandırın.
    a. Günlük dosyalarında öncelikle yazma ağır işlemler vardır. Bu nedenle, salt okunur önbellekten faydalanır.

Linux VM 'lerde performansı iyileştirme

Tüm Premium SSD 'Ler veya ultra diskler için, verilerin kaybedilmediği bir önbellek olmadığı bilindiğinde performansı artırmak için disk üzerindeki dosya sistemleri için "engelleri" devre dışı bırakabilirsiniz. Azure disk önbelleği ReadOnly veya None olarak ayarlandıysa, engelleri devre dışı bırakabilirsiniz. Ancak önbelleğe alma, okuma olarak ayarlandıysa, yazma dayanıklılığı sağlamak için engelleri etkin kalmalıdır. Engelleri genellikle varsayılan olarak etkindir, ancak dosya sistemi türüne bağlı olarak aşağıdaki yöntemlerden birini kullanarak engelleri devre dışı bırakabilirsiniz:

  • Reıfs için, engelleri devre dışı bırakmak için engel = None Mount seçeneğini kullanın. Engelleri açık bir şekilde etkinleştirmek için, engel = Flush kullanın.
  • Ext3/ext4 için engel = 0 Mount seçeneğini kullanarak engelleri devre dışı bırakın. Engelleri açıkça etkinleştirmek için engel = 1 kullanın.
  • XFS için, engelleri devre dışı bırakmak için nobariyer bağlama seçeneğini kullanın. Engelleri açık bir şekilde etkinleştirmek için, engeli kullanın. Ana Hat Linux çekirdeğinin 4,10 sürümünden itibaren, XFS dosya sisteminin tasarımı her zaman dayanıklılık sağlar. Engellerinin devre dışı bırakılması etkisizdir ve "noengelini" seçeneği kullanım dışıdır. Ancak, bazı Linux dağıtımları önceki bir çekirdek sürümü ile dağıtım yayınında yapılan değişiklikleri geri alabilir, çalıştırdığınız dağıtım ve sürümdeki durum için dağıtım satıcınıza danışın.

Disk şeridi

Yüksek ölçekli bir VM birkaç Premium Depolama kalıcı diskle birlikte eklendiğinde, diskler IOPS, bant genişliği ve depolama kapasitesini toplamak için birlikte birleştirilebilir.

Windows, diskleri birleştirmek için Depolama Alanları kullanabilirsiniz. Havuzdaki her disk için bir sütun yapılandırmanız gerekir. Aksi takdirde, disklerin disk genelindeki düzensiz dağıtımı nedeniyle, Şeritli birimin genel performansı beklenenden daha düşük olabilir.

Önemli: Sunucu Yöneticisi Kullanıcı arabirimini kullanarak, şeritli bir birim için toplam sütun sayısını 8 ' e kadar ayarlayabilirsiniz. Sekiz ' dan fazla disk iliştirirken, birimi oluşturmak için PowerShell kullanın. PowerShell 'i kullanarak, sütun sayısını disk sayısına eşit olarak ayarlayabilirsiniz. Örneğin, tek bir Stripe kümesinde 16 disk varsa; New-VirtualDisk PowerShell cmdlet 'Inin numberofcolumns parametresinde 16 sütun belirtin.

Linux 'ta, disk birleştirmek için MDADDM yardımcı programını kullanın. Linux'ta diskleri şeritle ilgili ayrıntılı adımlar için Bkz. Linux'ta Yazılım RAID'i Yapılandırma.

Şerit Boyutu
Disk şerit oluşturmada önemli bir yapılandırma şerit boyutudur. Şerit boyutu veya blok boyutu, uygulamanın şeritli bir bir birim üzerinde adresleyebli en küçük veri öbbekleridir. Yapılandırılan şerit boyutu uygulamanın türüne ve istek düzenine bağlıdır. Yanlış şerit boyutunu seçerseniz, bu durum IO yanlış hizalantısını ve bu da uygulama performansının düşebilir.

Örneğin, uygulamanız tarafından oluşturulan bir IO isteği disk şeridi boyutundan büyükse, depolama sistemi bunu birden fazla disk üzerinde şerit birimi sınırlarına yazar. Bu verilere erişme zamanı geldiğinde, isteği tamamlamak için birden fazla şerit birimini araması gerekir. Bu davranışın kümülatif etkisi önemli performans düşüşüne yol açabilir. Öte yandan, IO isteği boyutu şerit boyutundan küçükse ve doğası gereği rastgelese, aynı diskte yer alan IO istekleri bir performans sorununa neden olabilir ve sonunda IO performansını düşürebilir.

Uygulamanın çalıştır olduğu iş yükünün türüne bağlı olarak uygun şerit boyutunu seçin. Rastgele küçük IO istekleri için daha küçük bir şerit boyutu kullanın. Büyük sıralı IO istekleri daha büyük şerit boyutu kullanır. Çalışma zaman içinde çalıştıracak uygulama için şerit boyutu önerilerini Premium Depolama. Daha SQL Server OLTP iş yükleri için 64 KB ve veri depolama iş yükleri için 256 KB şerit boyutu yapılandırabilirsiniz. Daha fazla bilgi edinmek için SQL Server Azure VM'leri üzerinde performans için en iyi uygulamalara bakın.

Not

Bir DS serisi VM'de en fazla 32 premium depolama diski ve GS serisi VM'de 64 premium depolama diski birlikte şeritler ebilirsiniz.

Çoklu iş parçacığı

Azure, Premium Depolama paralel olacak şekilde tasarlanmıştır. Bu nedenle, çok iş parçacıklı bir uygulama, tek iş parçacıklı bir uygulamaya göre çok daha yüksek performans elde ediyor. Çok iş parçacıklı bir uygulama, görevlerini birden çok iş parçacığına böler ve VM ve disk kaynaklarını en yüksek değere kadar kullanarak yürütme verimliliğini artırır.

Örneğin, uygulama iki iş parçacığı kullanan tek bir çekirdek VM üzerinde çalışıyorsa, CPU verimlilik elde etmek için iki iş parçacığı arasında geçiş olabilir. Bir iş parçacığı disk IO'nun tamamlandıktan sonra beklemesini sağlarken, CPU diğer iş parçacığına geçebilirsiniz. Bu şekilde, iki iş parçacığı tek bir iş parçacığından daha fazlasını gerçekleştirebilirsiniz. VM'nin birden fazla çekirdeği varsa, her çekirdek paralel olarak görev yürütene kadar çalışma süresi daha da azalır.

Özel olmayan bir uygulamanın tek iş parçacığı veya çoklu iş parçacığı uygulama yolunu değiştiremezsiniz. Örneğin, SQL Server CPU ve çoklu çekirdek işleme özelliğine sahiptir. Ancak SQL Server hangi koşullar altında bir veya daha fazla iş parçacığını işley karar verir. Birden çok iş parçacığı kullanarak sorgular çalıştırarak dizinler oluşturabilir. Kullanıcıya dönmeden önce büyük tabloları birleştirmeyi ve verileri sıralamayı içeren bir sorgu için SQL Server iş parçacığı kullanma olasılığı vardır. Ancak, kullanıcı tek bir iş parçacığı SQL Server birden çok iş parçacığı kullanarak bir sorgu yürütüp yürütmez.

Bu çok iş parçacığını veya bir uygulamanın paralel işlemesini etkilemek için değiştirebilirsiniz yapılandırma ayarları vardır. Örneğin, bu SQL Server en yüksek Paralellik derecesi yapılandırmasıdır. MAXDOP olarak adlandırılan bu ayar, paralel işleme sırasında kullanabileceğiniz en SQL Server işlemci sayısını yapılandırmaya olanak sağlar. TEK tek sorgular veya dizin işlemleri için MAXDOP'yi yapılandırarak. Bu, performans açısından kritik bir uygulama için sistem kaynaklarını dengelemek istediğinizde yararlıdır.

Örneğin, SQL Server kullanarak uygulamanın aynı anda büyük bir sorgu ve dizin işlemi yürütülmektedir. Dizin işleminin büyük sorguya kıyasla daha yüksek performansa sahip olması istediğini varsayalım. Böyle bir durumda, dizin işlemi için MAXDOP değerini sorgunun MAXDOP değerinden daha yüksek olacak şekilde ayarlayın. Bu şekilde SQL Server fazla sayıda işlemciye sahip olur ve dizin işlemi için büyük sorguya ayırması gereken işlemci sayısına kıyasla daha fazladır. Unutmayın, her işlem için SQL Server iş parçacığı sayısını denetlemezsiniz. Birden çok iş parçacığı için ayrılmış olan en fazla işlemci sayısını kontrol etmek için.

Paralellik Dereceleri hakkında daha fazla bilgi SQL Server. Performansı iyileştirmek için uygulamanıza ve yapılandırmalarına çok iş parçacığı kullanımını etkileyen bu tür ayarları bulun.

Kuyruk derinliği

Kuyruk derinliği veya kuyruk uzunluğu veya kuyruk boyutu, sistemdeki bekleyen IO isteklerinin sayısıdır. Kuyruk derinliğinin değeri, uygulamanıza kaç tane IO işleminin sıraya ekli olduğunu ve depolama disklerinin hangilerini işleyeceklerini belirler. Bu makalede ele alan üç uygulama performansı göstergesini de etkiler. Viz., IOPS, aktarım hızı ve gecikme süresi.

Kuyruk Derinliği ve çok iş parçacığı yakından ilişkili. Kuyruk Derinliği değeri, uygulama tarafından ne kadar çoklu iş parçacığı elde edilebilir olduğunu gösterir. Kuyruk Derinliği büyükse, uygulama eşzamanlı olarak daha fazla işlem, başka bir deyişle daha çok iş parçacığı yürütebilir. Uygulama çok iş parçacıklı olsa da Kuyruk Derinliği küçükse, eş zamanlı yürütme için yeterli istek sırasına sahip olmaz.

Genellikle, kapalı uygulamalar kuyruk derinliğini değiştirmenizi sağlar çünkü yanlış ayarlanırsa iyiden daha fazla zarar verir. Uygulamalar en iyi performansı elde etmek için kuyruk derinliğinin doğru değerini ayarlar. Ancak, uygulamanıza ilişkin performans sorunlarını giderebilirsiniz. Ayrıca, sisteminiz üzerinde karşılaştırma araçlarını çalıştırarak kuyruk derinliğinin etkilerini gözlemlersiniz.

Bazı uygulamalar Kuyruk Derinliğini etkilemek için ayarlar sağlar. Örneğin, önceki bölümde açıklanacak olan maxDOP (maksimum paralellik SQL Server derecesi) ayarı. MAXDOP, Kuyruk Derinliği ve çoklu iş parçacığını etkilemenin bir yolu olsa da, kuyruk derinliği değerini doğrudan değiştirmez SQL Server.

Yüksek kuyruk derinliği
Yüksek kuyruk derinliği, diskte daha fazla işlem sıralar. Disk, kuyruğunda bir sonraki isteği zamanından önce bilir. Sonuç olarak, disk işlemleri zamanından önce zamanlar ve bunları en uygun sırada işler. Uygulama diske daha fazla istek gönderdiği için disk daha paralel IO'ları işebilir. Sonuç olarak, uygulama daha yüksek IOPS elde etmek mümkün olacaktır. Uygulama daha fazla istek işleyene kadar uygulamanın toplam Aktarım Hızı da artar.

Genellikle, bir uygulama ekli disk başına 8-16+bekleyen IO'lar ile en yüksek Aktarım Hızına ulaşabilirsiniz. Kuyruk derinliği bunlardan biri ise, uygulama sisteme yeterli IO'ları itmiyor ve belirli bir dönemde daha az miktarda işlemektedir. Başka bir deyişle, daha az Aktarım Hızı.

Örneğin, SQL Server için MAXDOP değerinin "4" olarak SQL Server sorguyu yürütmek için en fazla dört çekirdek kullanabileceği konusunda bilgi verir. SQL Server en iyi kuyruk derinliği değerinin ne olduğunu ve sorgu yürütme için çekirdek sayısını belirler.

En iyi kuyruk derinliği
Çok yüksek kuyruk derinliği değerinin dezavantajları da vardır. Kuyruk derinliği değeri çok yüksekse, uygulama çok yüksek bir IOPS'ye sahip olmaya dener. Uygulamanın yeterli sağlanan IOPS'ye sahip kalıcı diskleri yoksa, bu durum uygulama gecikme sürelerini olumsuz etkileyebilir. Aşağıdaki formül IOPS, gecikme süresi ve kuyruk derinliği arasındaki ilişkiyi gösterir.
I O P S'nin gecikme süresinin Kuyruk Derinliğine eşit olduğu denklemini gösteren diyagram.

Kuyruk Derinliğini herhangi bir yüksek değere değil, gecikme sürelerini etkilemeden uygulama için yeterli IOPS sunacak en uygun değere yapılandırmanız gerekir. Örneğin, uygulama gecikme süresinin 1 milisaniye olması gerekirse, 5.000 IOPS elde etmek için gereken Kuyruk Derinliği şudur: QD = 5000 x 0,001 = 5.

Şeritli Birim için Kuyruk Derinliği
Şeritli bir birim için, her diskin tek tek en yüksek kuyruk derinliğine sahip olacak kadar yüksek bir kuyruk derinliğine sahip olması gerekir. Örneğin, kuyruk derinliği 2'ye iten ve şeritte dört disk olan bir uygulamayı düşünün. İki IO isteği iki diske gider ve kalan iki disk boşta olur. Bu nedenle kuyruk derinliğini tüm disklerin meşgul olması için yapılandırabilirsiniz. Aşağıdaki formülde, şeritli birimlerin kuyruk derinliğinin nasıl belirlenecek olduğu gösterilmiştir.
Disk başına Q D denklemini birim başına sütun sayısı ile Şeritli Birimin Q D'sinde eşit olduğunu gösteren diyagram.

Azaltma

Azure Premium Depolama, seçtiğiniz VM boyutlarına ve disk boyutlarına bağlı olarak belirtilen sayıda IOPS ve Aktarım Hızı sağlar. Uygulamanız IOPS veya Aktarım Hızını VM'nin veya diskin işleyene kadar bu sınırların üzerinde Premium Depolama zaman kısıtlar. Bu bildirim, uygulamanıza performans düzeyi düşürülmüş şeklinde bildirim sağlar. Bu, daha yüksek gecikme süresi, daha düşük Aktarım Hızı veya daha düşük IOPS anlamına geliyor olabilir. Bu Premium Depolama kısıtlanmazsa, kaynaklarının başarabileceklerini aşarak uygulamanız tamamen başarısız olabilir. Bu nedenle, azaltma nedeniyle performans sorunlarını önlemek için her zaman uygulamanıza yeterli kaynakları sağlamanız gerekir. Yukarıdaki VM boyutları ve Disk boyutları bölümlerinde ele alan konuları göz önünde bulundurabilirsiniz. Karşılaştırma, uygulamalarınızı barındırmak için hangi kaynaklara ihtiyacınız olduğunu anlamanın en iyi yolu.

Sonraki adımlar

Diskiniz için kıyaslama yapmak için disk kıyaslama makalelerimize bakın:

Kullanılabilir disk türleri hakkında daha fazla bilgi edinmek için:

SQL Server kullanıcılar için SQL Server performans en iyi yöntemleri hakkında makaleleri okuyun: