14 Şubat 2013

Azure Blob Storage'da Page Blob - Block Blob Farkları


Windows Azure storage konseptleri arasında doğrudan çalışabilirlik ve performansa ciddi bir etken olduğu için, temel olarak bilinmesi gereken kavramlardan biri Bloblardır diyebilirim. Bu yazıda Blob'lar hakkında kısa ve fakat pratik bir kaç notu paylaşmak istiyorum.

Blob Nedir?
BLOB, Binary Large Object kavramının kısaltmasıdır.  Yani blob bir çok ikili(binary) verinin tek bir birimde toplanmasıdır diyebiliriz.

Windows Azure Blob ,Windows Azure Storage hizmetlerinin parçalarından birisidir ve Azure üzerinde metin ve ikili(binary) veri depolamanın en basit yoludur.

Azure Blob Depolama iki farklı blob çeşidinden oluşmaktadır:
1.     Block Blob
2.     Page Blob

Block Blob
Block blob her biri bir blockID'ye sahip block'lardan oluşur. Block blob'lar sıklıkla ağ üzerinden büyük dosyaları yönetirken kullanılmaktadır. Block blobları paralel olarak eş zamanlı upload ederek upload zamanını düşürebilirsiniz. Son olarak en büyük block büyüklüğü 4MB olduğunu da belirtmeliyim.

Page Blob 
Page blob 512 bytelık sayfaların bir toplamıdır. Page blob'ı eğer kullanıcı rastgele okuma yazma işlemi yapacağı zaman kullanabilirsiniz.

Page Blob ve Block Blob'u Nerelerde Kullanabilirsiniz? 
Bu konuyu daha iyi anlatabilmek için bir senaryo üzerinden gidersek: Diyelim ki biz medya dosyalarını depolamak için bir uygulama geliştireceğiz. Bu durumda medya dosyaları sanal makina için bir VHD ve video dosyalarını bir arada içerecektir. Peki hangi içerik için hangi blob depolama türünü kullanacağım ?


Yukarıdaki tanımlardan gidersek oldukça kolay bir şekilde cevaplayabiliriz. VHD bir sanal makina olacağı ve çok yoğun bir şekilde okuma yazma işlemleri içerdiği için page blob olmalıdır (burada bir öneri olarak değil bir zorunluluk olarak söylüyorum eğer VHD'niz page blob değil de block blob ise Azure üzerinde bir makinaya takıp boot edemezsiniz). Diğer taraftan da video dosyaları büyüklükleri upload avantajı düşünülerek Block blob şeklinde ayarlanmalıdır.

Hiç yorum yok: