Depolama teknolojisi açıklandı: Dosya, blok ve nesne depolama


Dosya, blok ve nesne, kullanıcıların ve uygulamaların veri depolamaya erişme ve bunları değiştirme şekli açısından temel öneme sahiptir. Onlarca yıldır durum böyleydi ve buluta geçişte de durumun böyle kaldığı görüldü, ancak bulut depolamanın kullanım durumu, performansı ve maliyet kısıtlamalarına yönelik uyarlamalar yapıldı.

Bu makalede dosya sistemi ile dosya, blok ve nesne depolamanın temellerine, dosya, blok ve nesnenin bulutta hayata nasıl geçtiğine ve küresel dosya sistemlerinin ortaya çıkan kullanılabilirliğine bakıyoruz. Ayrıca dosya ve nesne kilitlemenin nasıl uygulandığını ve dosya depolamada ağ dosya sistemi (NFS), sunucu mesaj bloğu (SMB) ve ortak internet dosya sistemi (CIFS) arasındaki farkları da ayrıntılı olarak inceliyoruz.

Dosya sistemi, verilerin genellikle hiyerarşik dizinlerde düzenlenmesine ve alınmasına olanak tanıyan bilgi işlemin temelidir. İşletim sisteminin (OS) ve kullanıcının bilgileri ayırt etmesine ve düzenlemesine yardımcı olan mantıksal bir sistemdir ve aynı zamanda depolama ortamındaki verilerin fiziksel adreslenmesinin bir parçasını oluşturur.

Dosya sistemleri, dosya adı uzunluğu, hangi karakterlerin kullanılacağı, büyük/küçük harf duyarlılığı, dosya türü uzantısı vb. gibi dosya adlandırma kurallarını belirler. Bir dosya sistemi ayrıca dosya boyutu, oluşturulma tarihi veya dizindeki konum gibi dosyalar hakkındaki meta verileri de tutar.

Çoğu dosya sistemi, dosyaları, dizin yapısı içindeki bir yolla tanımlanan dosya konumuyla bir hiyerarşi halinde düzenler. Dizinler ters hiyerarşik ağaç yapısında düzenlenir.

Fiziksel medya, bölümlerdeki farklı dosya sistemleriyle çalışacak şekilde biçimlendirilebilir. Veya işletim sistemi dosyaları, kullanıcı dosyaları ve sistem dosyaları gibi performans veya güvenlik nedenleriyle farklı türdeki dosyaların birbirinden yalıtılmasına yardımcı olmak için bölümler oluşturulabilir. Bölümler, örneğin dosya içeriği, meta veriler ve sistem verilerine ayrılmış bloklara bölünmüştür.

Kullanıcıların ve uygulamaların erişimi de dosya sistemi tarafından kontrol edilir. Bu, kimin hangi dosyalara ve dizinlere erişebildiğinin yanı sıra erişim kontrolüne de sahip olabilir, böylece yolsuzluk veya mantıksal sorunlara yol açabilecek eşzamanlı yazma işlemleri gerçekleşmez. Dosyalar ayrıca harici erişime karşı şifrelenebilir.

Veritabanı Yönetim sistemi

Veritabanı yönetim sistemi (DBMS) biraz dosya sistemine benzer. Ancak, bir dosya sistemi tüm dosyayla etkileşim sağlarken ve dosyaları yapılandırılmamış ayrı öğeler olarak saklarken, bir DBMS kullanıcıların bir veritabanındaki öğelerle neredeyse aynı anda etkileşimde bulunmasına ve bunları değiştirmesine olanak tanır. DBMS, veritabanını sağlam güvenlik ve erişim kontrolleriyle tutarlı, tek ve yüksek düzeyde kontrol edilen bir veri deposu olarak yönetir.

Blok ve dosya erişimli depolama, dosya sistemiyle etkileşim kurmanın iki yolunu sunar.

Dosya depolama nedir?

Dosya depolama veya dosya erişim depolama, tüm dosyalara genellikle ağa bağlı depolama (NAS) aracılığıyla dosya sistemi aracılığıyla erişilen depolamadır. Bu tür ürünler, depolamanın uygulamalara ve kullanıcılara sürücü harfi biçiminde sunulduğu kendi dosya sistemiyle birlikte gelir.

Bu, aşağıda göreceğimiz gibi blok depolamayla çelişir ve depolama altyapısında temel bir ayrımdır.

Dosya sistemlerinin birçok faydası vardır. Bunlar arasında, çoğu kurumsal uygulamanın bir dosya sistemi aracılığıyla verilerle etkileşime girecek şekilde yazılması, ancak bu durumun nesne depolama tarafından aşındırılması da yer almaktadır (aşağıya bakın).

Dosya depolama, dosyaların tamamına erişebildiğinden yapılandırılmamıştır ve genel dosya depolamanın yanı sıra medya ve eğlence gibi dosya erişimi gerektiren özel iş yüklerine de uygundur. Ölçeklenebilir NAS biçiminde, analitik ve yüksek performanslı bilgi işlem (HPC) iş yükleri için büyük ölçekli depoların dayanak noktasıdır.

Blok depolama nedir?

Blok depolamada, depolama alanı ağı (SAN) donanımı dosyaların tamamını ele almaz (ancak bunu yapabilir). Bunun yerine, blok depolama, dosyaların (özellikle veritabanlarının) oluşturulduğu bloklara uygulama erişimi sağlar.

Bu, birçok kullanıcının aynı dosya üzerinde aynı anda ve muhtemelen aynı uygulamadan (örneğin e-posta, kurumsal kaynak planlaması (ERP) gibi kurumsal uygulamalar) ancak alt dosya düzeyinde kilitlemeyle çalıştığı iş yüklerine uygundur.

Dolayısıyla, blok depolama durumunda, uygulamaların konuştuğu dosya sistemi, ana sunuculardaki yığında daha üstte bulunur.

Blok depolama, yüksek performansın yanı sıra meta veriler ve dosya sistemi bilgileriyle uğraşma zorunluluğunun olmaması gibi büyük bir avantaja sahiptir.

Nesne depolama nedir?

Nesne depolama, göreceli olarak bloktaki yeni çocuktur.

Dosya ve blok depolamanın aksine, bir dosya sisteminden yoksundur ve nesnelere benzersiz kimlikleri aracılığıyla erişim sağlayan “düz” bir yapıya dayanmaktadır. Bu yönüyle web içeriğine erişmek için kullanılan alan adı sistemine (DNS) benzemektedir.

Dolayısıyla nesne depolama hiyerarşik değildir ve dizin sistemi yapısından yoksundur. Veri kümeleri çok büyüdüğünde bu bir avantaj olabilir. Bazı NAS sistemleri milyarlarca dosyaya ulaştığında hantal hale gelebilir.

Nesne depolama aynı zamanda geleneksel dosya sistemlerinden daha zengin bir meta veri kümesi sunar; bu da onu analitik ve yapay zeka (AI) için veri depolamaya çok uygun hale getirir.

Nesne depolama, verilere daha çok dosya erişimine benzeyen bir şekilde erişir ancak aynı türde dosya kilitlemeden yoksundur. Örneğin, çoğu zaman birden fazla kullanıcı bir nesneye aynı anda erişebilir (Google Dokümanlar’ı düşünün). Dolayısıyla nesne depolama “sonunda tutarlı” olarak tanımlanıyor.

Eski uygulamaların çoğu nesne depolama için yazılmamıştır ancak bulut çağı için tercih edilen depolama erişim yöntemidir. Bu büyük ölçüde bulut nesne depolamanın hiper ölçekleyici bulut sağlayıcıları tarafından sunulan kapasitenin büyük kısmını oluşturmasından kaynaklanmaktadır.

Bulutta dosya, blok ve nesne depolama nedir?

Bulut, nesne depolamanın doğal evidir ve artık S3 gibi fiili standartlar da burada ortaya çıkmıştır. Nesne depolama, bulut çağının toplu depolama alanıdır ve sonuçta tutarlı olarak mutlu bir şekilde var olabilecek verilere kolay erişim sağlar.

Üç büyük hiper ölçekleyici bulut sağlayıcısı (Amazon Web Services (AWS), Microsoft Azure ve Google Cloud Platform) aynı zamanda kendi dosya ve blok depolama hizmetlerinin yanı sıra üçüncü taraf depolama tedarikçilerinin hizmetlerini de sunuyor.

Üç büyük bulut depolama seçeneği; AWS’den S3, Azure Blob ve Google Bulut Depolama gibi nesne depolamayı içerir.

Hiper ölçekleyicilerden gelen dosya depolama şunları içerir: Bulutta ve yerel depolamada çalışan, NFS tabanlı bir dosya sistemi olan Amazon’un Elastik Dosya Sistemi (EFS); SMB’yi kullanan ve bulutta veya şirket içinde eş zamanlı dosya paylaşımına izin veren Azure Dosyaları; ve Google Compute Engine ve Kubernetes Engine’ler için NAS’ı standart ve premium düzeylerde sunulan depolama alanı sağlayan Google Cloud Filestore.

Üç büyük blok depolama, Amazon Elastic Compute Cloud ile çalışan Amazon Elastic Block Store olarak geliyor; Azure sanal makineleri için yönetilen diskler sağlayan Azure Disk; ve 64 TB’a kadar çalışan ve standart kalıcı diskler, kalıcı SSD’ler ve yerel SSD sunan Google Kalıcı Disk blok depolama alanı.

Her üç hiper ölçekleyici de NetApp depolamayı temel alan daha yüksek performanslı dosya depolama olanağı sunuyor. Pure Storage Bulut Blok Mağazası AWS’de mevcuttur.

Küresel dosya sistemleri nelerdir?

Bazı tedarikçiler, genel bulut ve yerel ağ donanımına dağıtılmış bir dosya sistemini tüm verilerle tek bir ad alanında birleştiren küresel dosya sistemleri olarak adlandırılan sistemler sunmaktadır. Sağlayıcılar arasında Ctera, Nasuni, Panzura, Hammerspace ve Peer Software bulunmaktadır.

CTERA, Edge, önbellek dosyalayıcı, CTERA Drive, uç nokta aygıtları için bir aracı ve sanal çalışma alanları için VDI’nın bir kombinasyonunu sağlar.

Hammerspace, verilerin verimli bir şekilde depolanmasına ve erişilmesine olanak sağladığını söylediği Hyperscale NAS aracılığıyla müşterilere meta verilerinin tek bir görünümünü sunuyor.

Nasuni, yerel önbelleğe alınmış erişim için şirket içi Edge örneklerinin yanı sıra yönetim ve orkestrasyon konsolları, performans analizi için Nasuni IQ ve uygulama programlama arayüzleri (API’ler) içeren, UniFS dosya sistemi üzerine kurulu Dosya Veri platformunu sunar.

Panzura kendisini yapısal olmayan veriler için veri yönetimi oyuncusu ve tek platform olarak konumlandırıyor. Küresel dosya sistemi, tek ve optimize edilmiş bir veri kümesi oluşturan CloudFS’dir.

Peer, hibrit ve çoklu bulut desteğinin yanı sıra uç ve veri merkezi siteleri için destek içeren küresel bir dosya hizmeti sağlar. PeerGFS, aktif-aktif senkronizasyona, Microsoft DFSN kullanan global bir ad alanına ve nesne depolama entegrasyonuna sahip, yalnızca yazılımdır.

Dosya kilitleme ile nesne kilitleme arasındaki fark nedir?

Dosya sistemlerinin temel bir işlevi kilitleme mekanizmalarıdır. Bunlar, aynı dosya üzerinde aynı anda çalışan farklı kullanıcıların ve uygulamaların, verilerde yanlışlıklara ve tutarsızlıklara yol açacak çatışmalara neden olmamasını sağlar.

Dosya sistemlerinde kilitleme güçlü ve iyi gelişmiştir. Ancak nesne depolama bir dosya sistemi etrafında kurulmadığından kilitlemeyi sağlayan aynı tür yöntemlerden yoksundur.

Dosya (NAS) ve blok (SAN) depolamanın her ikisi de dosya sistemine dayanır. NAS depolama, dosyalara doğrudan erişirken, blok depolama, örneğin kendisi de bir “dosya” içeren bir veritabanının bölümlerini güncellemek için dosya sistemindeki bloklara erişir.

Windows sistemleri, erişimi, paylaşımları, okumaları, yazmaları ve silmeleri kısıtlamak amacıyla tüm dosyalar için uygulamaya ve kullanıcıya göre dosya kilitlemeyi veya dosya bölgeleri için bayt aralığı kilitlerini ayarlayabilir.

Linux da dahil olmak üzere Unix benzeri dosya sistemleri dağıtımlar arasında değişiklik gösterir, ancak örneğin Linux’ta açık dosyaları değiştirebilirsiniz. Farklılıklar, Windows ve Unix benzeri sistemlerin dosya bilgilerini nasıl kaydettiğiyle ilgilidir, ancak hepsi dosyalara erişimi ve değişiklikleri kısıtlayabilir.

Bu arada, nesne depolamada yerleşik kilitleme yoktur. Nesne depolamada mevcut olmadığı anlamına gelmez, ancak dosya sistemlerinde olduğu gibi nesne depolamada yerleşik değildir. Birden fazla kullanıcı aynı nesne üzerinde aynı anda çalışabilir ve değişiklikler “nihayetinde tutarlı” bir temelde uzlaştırılabilir.

Nesne depolamada ve bulutta bazı kilitleme biçimleri uygulanır. Bunlar, nesne depolarının önünde bulunan dosya erişim protokolü ağ geçitlerini içerir.

AWS gibi bulut sağlayıcıları, farklı erişim düzeyleri sağlayan uyumluluk ve yönetişim modlarıyla nesne kilitleme sağlar. Belirlenen tarihe kadar kilitleri yerinde tutacak saklama süreleri ayarlanabilir. Microsoft Azure ayrıca Blob nesneleri için onları değiştirilemez hale getirme ve yasal bekletmeyi zorunlu kılma özelliğine sahip kilitleme özelliğine sahiptir.

Nesne kilitleme, verileri fidye yazılımı saldırılarına karşı karantinaya almanın bir yolu olarak önem kazandı.

NoSQL veritabanları sıklıkla nesne depolamayı kullanır ve yarı ve yapılandırılmamış verileri alıp kendi kilitleme mekanizmalarını uygulayabilir. Örneğin, MongoDB hangi isteklerin kuyruğa alındığının kilitlenmesine izin verirken, CouchDB bir tür nihai tutarlılığa sahiptir.

NFS, SMB ve CIFS arasındaki fark nedir?

NFS, SMB ve CIFS’nin tümü, sunuculardaki ve depolama sunucularındaki (NAS depolama gibi) dosyalara yerel dosyalarmış gibi erişim sağlayan dosya depolama protokolleridir.

Dosya sistemi aracılığıyla uygulamalar ve depolama arasındaki iletişimi kolaylaştırmak için uygulama katmanında çalışan protokoller olduğundan dosya sisteminden farklıdırlar. Bunlar örneğin HTTP, FTP, POP ve SMTP ile aynı sıradaki uygulama katmanı protokolleridir.

NFS, SMB ve CIFS, SAN blok erişim depolamasıyla değil, NAS dosya erişim depolamasıyla kullanılır.

NFS çoğunlukla Linux ve Unix işletim sistemlerinde kullanılır ve ilk olarak 1984 yılında Sun Microsystems tarafından geliştirilmiştir. 2016 yılında paralel dosya erişim işleviyle (pNFS, ölçeklendirme NAS’ında kullanılır) sürüm 4.2’ye ulaştı.

Bir Unix tedarikçisi tarafından geliştirilmiş olmasına ve sıklıkla Unix ve Linux için kullanılmasına rağmen NFS, Windows ortamlarında da kullanılabilir.

SMB öncelikle Windows ortamlarında kullanılır ve Microsoft’un dağıtılmış dosya sisteminin temelini oluşturur. IBM, SMB’yi ilk olarak 1983 yılında dosyalara ve yazıcılara paylaşımlı ağ erişimi sağlamak için geliştirdi. Microsoft bunu daha sonra aldı ve Windows NT 3.1’e yerleştirdi. O zamandan beri onu işletim sistemlerinde tuttu.

CIFS, ilk kez 1996’da tanıtılan bir SMB uygulamasıdır. Çoğunlukla NetBIOS tabanlı aktarımlarla kullanılır ve küçük LAN dosyası, yazdırma ve depolamaya uygulama erişimine odaklanmıştır. NFS’den daha az ölçeklenebilirdir ve SMB’den daha az konuşkan, hatalı ve daha az güvenli kabul edilir.



Source link