Blok bloblarını, ekleme bloblarını ve sayfa bloblarını anlama

Depolama hizmeti üç tür blob sunar: blok blobları, ekleme blobları ve sayfa blobları. Blobu oluştururken blob türünü belirtirsiniz. Blob oluşturulduktan sonra türü değiştirilemez ve yalnızca bu blob türüne uygun işlemler kullanılarak güncelleştirilebilir; örneğin blok bloba blok veya blok listesi yazma, ekleme blobunun sonuna blok ekleme ve sayfa bloblarına sayfa yazma.

Tüm bloblar yürütülen değişiklikleri hemen yansıtır. Blobun her sürümünde, blobun yalnızca belirli bir örneğini değiştirmek için erişim koşullarıyla kullanabileceğiniz ETag adlı benzersiz bir etiket vardır.

Özel yazma erişimi için herhangi bir blob kiralanabilir. Bir blob kiralandığında, yalnızca geçerli kira kimliğini içeren çağrılar blobu veya (blok blobları için) bloklarını değiştirebilir.

Herhangi bir blob bir anlık görüntüde çoğaltılabilir. Anlık görüntüler hakkında bilgi için bkz. Blobun Anlık Görüntüsünü Oluşturma.

Not

Azure depolama öykünücüsündeki bloblar en fazla 2 GiB boyutuyla sınırlıdır.

Blok blobları hakkında

Blok blobları, büyük miktarda veriyi verimli bir şekilde karşıya yüklemek için iyileştirilmiştir. Blok blobları, her biri blok kimliğiyle tanımlanan bloklardan oluşur. Blok blobu en fazla 50.000 blok içerebilir. Blok blobundaki her blok, kullanımdaki hizmet sürümü için izin verilen en büyük boyuta kadar farklı bir boyuta sahip olabilir. Blok blobu oluşturmak veya değiştirmek için, Blok Koy işlemi aracılığıyla bir blok kümesi yazın ve ardından Blok Listesini Koy işlemiyle blokları bir bloba işleyin.

Belirli bir boyuttan daha küçük olan bloblar (hizmet sürümü tarafından belirlenir) Put Blob aracılığıyla tek bir yazma işlemiyle tamamen karşıya yüklenebilir.

Aşağıdaki tabloda, hizmet sürümü tarafından izin verilen en büyük blok ve blob boyutları açıklanmaktadır.

Hizmet sürümü En büyük blok boyutu (Blok Koy aracılığıyla) En büyük blob boyutu (Blok Listesine Koy yoluyla) Tek yazma işlemiyle (Put Blob aracılığıyla) maksimum blob boyutu
Sürüm 2019-12-12 ve üzeri 4000 MiB Yaklaşık 190,7 TiB (4000 MiB X 50.000 blok) 5000 MiB
Sürüm 2016-05-31 ile sürüm 2019-07-07 arasında 100 MiB Yaklaşık 4,75 TiB (100 MiB X 50.000 blok) 256 MiB
2016-05-31 öncesi sürümler 4 MiB Yaklaşık 195 GiB (4 MiB X 50.000 blok) 64 MiB

Depolama istemcileri varsayılan olarak BlobRequestOptions nesnesinin SingleBlobUploadThresholdInBytes özelliği kullanılarak .NET sürüm 11 için Azure Depolama istemci kitaplığında ayarlanabilir en fazla 128 MiB'lık bir tek blob karşıya yüklemedir. Blok blobu karşıya yüklemesi bu özellikteki değerden büyük olduğunda, depolama istemcileri dosyayı bloklara ayırır. BlobRequestOptions nesnesinin ParallelOperationThreadCount özelliğini kullanarak blokları istek temelinde paralel olarak karşıya yüklemek için kullanılan iş parçacığı sayısını ayarlayabilirsiniz.

Depolama hesabınızdaki bir bloba bir blok yüklediğinizde, bu blok belirtilen blok blobuyla ilişkilendirilir, ancak yeni bloğun kimliğini içeren bir blok listesi işlemediğiniz sürece blobun bir parçası olmaz. Yeni bloklar özel olarak işlenene veya atılana kadar kaydedilmemiş durumda kalır. En fazla 100.000 kaydedilmemiş blok olabilir. Blok yazıldığında, mevcut blobun son değiştirilme zamanı güncelleştirilmez.

Blok blobları, büyük dosyaları ağlar üzerinden yönetmenize yardımcı olan özellikler içerir. Blok blobuyla, karşıya yükleme süresini azaltmak için birden çok bloğu paralel olarak karşıya yükleyebilirsiniz. Her blok, aktarımı doğrulamak için bir MD5 karması içerebilir, böylece karşıya yükleme ilerlemesini izleyebilir ve gerektiğinde blokları yeniden gönderebilirsiniz. Blokları istediğiniz sırayla karşıya yükleyebilir ve bunların sırasını son blok listesi taahhüt adımında belirleyebilirsiniz. Aynı blok kimliğinin mevcut kaydedilmemiş bloğunu değiştirmek için de yeni bir bloğu karşıya yükleyebilirsiniz. Blokları atmadan önce bloba işlemek için bir haftanız vardır. Bir blok listesi taahhüt işlemi gerçekleştiğinde ancak bunları içermediğinde de tüm kaydedilmemiş bloklar atılır.

Mevcut blokları ekleyerek, değiştirerek veya silerek mevcut blok bloblarını değiştirebilirsiniz. Değiştirilen blokları veya blokları karşıya yükledikten sonra, yeni blokları tek bir işleme işlemi kullanarak tutmak istediğiniz mevcut bloklarla işleyerek blobun yeni bir sürümünü işleyebilirsiniz. Kaydedilen blobun iki farklı konumuna aynı bayt aralığını eklemek için, aynı bloğu aynı işleme işlemi içinde iki yere işleyebilirsiniz. Herhangi bir işleme işlemi için, herhangi bir blok bulunamazsa, taahhüt işleminin tamamı bir hatayla başarısız olur ve blob değiştirilmez. Herhangi bir blok taahhüdü blob'un mevcut özelliklerinin ve meta verilerinin üzerine yazılır ve tüm kaydedilmemiş blokları atar.

Blok kimlikleri, blob içinde eşit uzunlukta dizelerdir. Blok istemci kodu genellikle dizeleri eşit uzunluklarda normalleştirmek için base-64 kodlama kullanır. Base-64 kodlaması kullanılırken, önceden kodlanmış dize 64 bayt veya daha az olmalıdır. Blok kimliği değerleri farklı bloblarda çoğaltılabilir.

Var olmayan bir blob için bir blok yazarsanız, uzunluğu sıfır bayt olan yeni bir blok blobu oluşturulur. Bu blob, kaydedilmemiş blobları içeren blob listelerinde görünür. Bu bloba herhangi bir blok işlemezseniz, son başarılı blok karşıya yüklemeden bir hafta sonra blok ve kaydedilmemiş blokları atılır. Aynı ada sahip yeni bir blob tek bir adım kullanılarak oluşturulduğunda (iki adımlı blok karşıya yükleme-sonra işleme işlemi yerine) tüm kaydedilmemiş bloklar da atılır.

Sayfa blobları hakkında

Sayfa blobları, rastgele okuma ve yazma işlemleri için iyileştirilmiş 512 baytlık sayfalardan oluşan bir koleksiyondur. Sayfa blobu oluşturmak için sayfa blobunu başlatır ve sayfa blobunun büyüyeceği boyut üst sınırını belirtirsiniz. Sayfa blobunun içeriğini eklemek veya güncelleştirmek için, bir uzaklık ve her ikisi de 512 baytlık sayfa sınırlarına hizalanmış bir aralık belirterek bir sayfa veya sayfa yazarsınız. Sayfa blob'una yazma işlemi yalnızca bir sayfanın, bazı sayfaların veya sayfa blobunun en fazla 4 MiB'ının üzerine yazabilir. Sayfa bloblarına yazma işlemleri yerinde gerçekleşir ve hemen bloba işlenir. Sayfa blobu için boyut üst sınırı 8 TiB'dir.

Azure sanal makine diskleri sayfa blobları tarafından desteklenir. Azure iki tür dayanıklı disk depolama alanı sunar: premium ve standart. Sayfa blobları için premium depolama tutarlı yüksek performans ve düşük gecikme süresi gerektiren Azure sanal makine iş yükleri için tasarlanmıştır. Ayrıntılı bilgi için IaaS VM'leri için disk türü seçme makalesinin Premium katı hal sürücüleri (SSD) bölümüne bakın. Sayfa blobları için premium depolama için ölçeklenebilirlik hedefleri hakkında bilgi için bkz. Azure Depolama Ölçeklenebilirlik ve Performans Hedefleri.

Ekleme blobları hakkında

Ekleme blobu bloklardan oluşur ve ekleme işlemleri için iyileştirilmiştir. Ekleme blobunu değiştirdiğinizde bloklar, Ekleme Bloğu işlemi aracılığıyla yalnızca blobun sonuna eklenir. Mevcut blokların güncelleştirilmesi veya silinmesi desteklenmez. Blok bloblarından farklı olarak, ekleme blobu blok kimliklerini kullanıma sunmaz.

Ekleme blobundaki her blok farklı boyutta olabilir ve en fazla 4 MiB olabilir ve bir ekleme blobu en fazla 50.000 blok içerebilir. Bu nedenle ekleme blobunun boyut üst sınırı 195 GiB'den (4 MiB X 50.000 blok) biraz daha fazladır.

Ayrıca Bkz.