Disk Sektörleri
Bir diskin sabit sektör boyutu vardır, bazı modern disklerde normalde 512 bayt veya 4096 bayt; bu disklerin 512 bayt sektörleri taklit ettikleri bir mod da olacaktır. Disk, değişen sayıda sektöre sahip parçalara sahip olacaktır; diskin dışına yakın olan izler, belirli bir bit yoğunluğu için daha fazla alana sahip oldukları için daha fazla sektöre sahiptir. Bu, disk alanının daha verimli kullanılmasını sağlar; tipik olarak bir yol, modern bir diskte 1.000 512 bayt sektör gibi bir şey içerir.
Bazı biçimlendirme yapıları, 520 veya 528 bayt sektörlerle düşük düzeyli biçimlendirilmiş disklerde kendini gösteren ikincillerdeki hata düzeltme bilgilerini de içerebilir. Bu durumda sektör hala 512 bayt kullanıcı verisine sahiptir. Ne Windows ne de Linux bunu doğrudan desteklemese de i5OS (IBM iSeries) ve çeşitli SAN denetleyicileri destekliyor.
Normalde sektör / kafa / parça mantıksal bir blok adresine çevrilir; geriye dönük uyumluluk ile ilgili tarihsel sorunlar nedeniyle, işletim sisteminin (özellikle IDE ve SATA disklerinde) gördüğü geometrinin (kafalar x sektörler x yol) normal olarak fiziksel yapısıyla ilgisi yoktur.
RAID şerit Boyutu
RAID denetleyicisi, şeritleme kullanan bir dizi için şerit boyutuna sahip olabilir (örn. RAID-5 veya RAID-10). Dizide (örnek olarak) 128k şerit varsa, her diskte 128k bitişik veri bulunur ve bir sonraki veri kümesi bir sonraki diskte olur. Normalde diskin her dönüşü için yaklaşık bir şerit almayı bekleyebilirsiniz, böylece şerit boyutu belirli iş yüklerindeki performansı etkileyebilir.
Bölüm Hizalama
Bir disk bölümü tam olarak bir RAID şeridi ile hizalanabilir veya hizalanmayabilir ve hizalanmamışsa bölünmüş okumalar nedeniyle performans düşüşüne neden olabilir. Bazı sistemler (örn. Windows 2008 sunucusu) bölümleri otomatik olarak disk birimi şerit boyutlarıyla hizalanacak şekilde yapılandırır. Bazıları (örn. Windows 2003 sunucusu) çalışmaz ve bunu sağlamak için şerit hizalamayı destekleyen bir bölüm yardımcı programı kullanmanız gerekir.
Dosya Sistemi Blok Boyutu
Dosya sistemi, belirli bir boyuttaki yığınlara depolama blokları tahsis edecektir. Genellikle bu yapılandırılabilir - örneğin NTFS (IIRC) 4K ila 64K arasındaki ayırma birimlerini destekleyecektir. Bölümlerin ve dosya sistemi bloklarının RAID şeritlerine yanlış hizalanması, tek bir dosya sistemi bloğunun birden çok disk erişimi oluşturmasına neden olabilir; burada dosya sistemi RAID şeritleriyle doğru hizalanmışsa yalnızca bir tanesi gerekli olur.
Veritabanı Bloğu Boyutu
Veritabanı, belirli bir blok boyutunda bir tablo veya dizinde alan ayıracaktır. SQL Server söz konusu olduğunda bu 8K'dır ve birçok sistemde 8K varsayılan değerdir. Oracle gibi bazı sistemlerde bu yapılandırılabilir ve PostgreSQL'de bir oluşturma zamanı seçeneğidir. Çoğu sistemde tablolara alan tahsisi normalde daha büyük parçalar halinde yapılır ve bu parçalar içinde bloklar tahsis edilir.
Dosya sisteminin ve veri ayırma bloklarının yanlış hizalanması, tek bir blok yazma için birden fazla G / Ç oluşturabilir ve bu da performans cezası verebilir.
G / Ç Tıklaması
Normalde bir DBMS aslında I / O'yu birden fazla bloğun yığınlarında yapar. Örneğin, SQL Server'da, tüm G / Ç, toplam 64k olan 8 blokluk parçalar halinde yapılır). Oracle'da bu yapılandırılabilir. PostgreSQL belgelerinin gündelik denetimi, PostgreSQL'in bunu yapıp yapmadığının belirli bir açıklamasını ortaya koymaz, bu yüzden bu platformda nasıl çalıştığından emin değilim.
G / Ç yığını dosya sistemi blok boyutundan daha büyük olduğunda veya RAID şerit sınırları ile yanlış hizalandığında, DB'den disk yazma işlemi birden fazla disk yazılmasına neden olabilir ve bu da performans cezası oluşturur.
Disk Alanı Kullanımı
Disk alanı boşa harcanmaz - veritabanı G / Ç işlemi tamamlamak için disk üzerinde bir veya daha fazla fiziksel G / Ç işlemi kullanır - ancak yanlış ayarlanmış G / Ç, veritabanını yavaşlatacak verimsizliklere neden olabilir. Hizalanması gereken ana şeyler şunlardır:
RAID şeritleri ve bölümleri - bölüm bir RAID şerit sınırında başlamalıdır.
Dosya sistemi G / Ç ayırma ve raid şeridi / bölüm sınırları - RAID şerit sınırı bir dosya sistemi ayırma birimiyle hizalanmalı ve dosya sistemi ayırma birimi boyutunun katı olmalıdır.
Disk yazma boyutu ve dosya sistemi ayırma birimi boyutu. Veritabanı G / Ç işlemleri ile dosya sistemi G / Ç işlemleri arasında 1: 1 ilişki olmalıdır.
Yanlış hizalama, aksi takdirde mevcut olandan daha büyük bir veri bütünlüğü sorunu yaratmaz. Veritabanı ve dosya sistemi, dosya sistemi işlemlerinin atomik olmasını sağlayan mekanizmalara sahiptir. Genellikle disk çökmesi veri kaybına neden olur, ancak veri bütünlüğü sorunlarına neden olmaz.