Hadoop Dağıtılmış Dosya Sistemi (HDFS) nedir? Mimari, Özellikler ve İşlemler

Yayınlanan: 2020-02-03

Hadoop Dağıtılmış Dosya Sistemi veya HDFS, Hadoop'un birincil depolama sistemidir. Emtia donanımında çalışan büyük veri dosyalarını depolar. Bu depolama sistemi ölçeklenebilir, kolayca genişletilebilir ve hatalara karşı toleranslıdır.

Bir fiziksel makinede çok fazla veri depolandığında, veri kaybını önlemek için depolama birkaç makineye bölünür. HDFS, birçok fiziksel makinede depolama işlemlerini yöneten böyle bir dağıtılmış dosya depolama sistemidir. İşte bu sistemin nasıl çalıştığını daha iyi anlamanız için bir HDFS öğreticisi. Mimarisi ile başlayalım.

İçindekiler

HDFS Mimarisi

Hadoop Dağıtılmış Dosya Sistemi, aşağıdaki bileşenlere sahip bir ana-bağımlı mimariye sahiptir:

  1. Namenode : Hem adenode yazılımını hem de Linux/GNU OS'yi barındıran emtia donanımıdır. Namenode yazılımı, herhangi bir sorunla karşılaşmadan ticari donanım üzerinde sorunsuz bir şekilde çalışabilir. Bileşen olarak adenode sahip sistem, ana sunucu olarak işlev görür. İstemcilerin dosyalara nasıl eriştiğini düzenlemeyi, dosya sistemi ad alanını yönetmeyi ve dizinleri ve dosyaları açma, kapatma ve yeniden adlandırma gibi işlemleri yürütmeyi içeren görevleri gerçekleştirir.
  2. Datanode : Veri düğümü yazılımını ve Linux/GNU işletim sistemini içeren ticari bir donanımdır. Bir kümedeki düğümler her zaman kendileriyle ilişkili veri düğümlerine sahip olacaktır. Bu düğümler, emtia donanımının/sisteminin depolanmasını yönetmekten sorumludur. Veri düğümlerinin gerçekleştirdiği görevlerden bazıları, istemci isteğine göre okuma/yazma işlemleri ve adenode tarafından verilen talimatlara göre blokların oluşturulması, çoğaltılması ve silinmesini içerir.
  3. Blok : Tüm kullanıcı verileri HDFS dosyalarında saklanır. Belirli bir dosya sistemine ait olan her dosya, bir veya birden fazla segmente bölünür ve bunlar daha sonra veri düğümleri olarak depolanır. Dosyaların bölündüğü dosya bölümleri bloklardır. Dolayısıyla, HDFS'nin okuyabildiği veya yazabildiği en küçük veri bir bloktur. Başlangıçta, her blok 64 MB boyutundadır. Ancak bu boyut, HDFS yapılandırma değişikliklerine göre artırılabilir.

HDFS mimarisi, HDFS çalışmalarının net ve net bir resmini verir. Birkaç veri düğümünden oluşur, ancak yalnızca tek bir adenoddan oluşur. İki tür düğümün asıl çalışanı veri düğümü iken, meta veriler anotta depolanır. Düğümler, hata toleransını ve veri güvenilirliğini geliştirmek için veri bloklarının depolandığı farklı raflarda düzenlenir. İstemcilerin bir dosyayı okumak/yazmak için adenode ile etkileşime girmesi gerekir. Kümede, kullanılabilir verileri depolamak için yerel diski kullanan birkaç veri düğümü bulunur. Datanode ve adenode sürekli olarak birbirleriyle temas halindedir. Datanode, farklı datanode'lara çoğaltma özelliğini kullanarak verileri çoğaltmaktan da sorumludur.

HDFS'de okuma ve yazma işlemleri en küçük seviyede yani blok seviyesinde gerçekleşir. Veri çoğaltma kavramı, HDFS'nin çalışma şeklinin merkezinde yer alır; blokların kopyaları oluşturularak ve bunların tüm kümede dağıtılmasıyla düğüm hatası sırasında verilerin yüksek kullanılabilirliği sağlanır.

HDFS İşlemleri

HDFS ve Linux dosya sistemi birbirine oldukça benzer. Bu nedenle, HDFS yerel dosya sistemleriyle gerçekleştirmeye alıştığımız tüm işlemleri gerçekleştirmemize olanak tanır - bir yönetici oluşturabilir, izinleri değiştirebilir, dosyaları kopyalayabilir ve çok daha fazlasını yapabiliriz. Ayrıca okuma, yazma ve yürütme dahil olmak üzere çeşitli dosya erişim haklarına sahibiz.

HDFS'de okuma işlemi: HDFS'de saklanan bir dosyayı okumak istiyorsanız, adenode ile etkileşime girmeniz gerekecektir. Daha önce de belirtildiği gibi, tüm meta veriler adenode saklanır. Anode ile etkileşime geçtiğinizde, aradığınız dosyanın depolandığı datanode'un adresini size verecektir. Daha sonra namenode tarafından size adresi verilen datanode ile etkileşime girebilir ve oradan bilgileri okuyabilirsiniz.

Anode'un blok adresini paylaşmasını isteyen dosya sisteminin API'si ile etkileşime girersiniz. Bu bilgiyi vermeden önce namenode, bu verilere erişim hakkınız olup olmadığını kontrol eder. Bu kontrol yapıldıktan sonra, adenode ya blok konumunu paylaşır ya da kısıtlamalar nedeniyle erişimi reddeder.

Bir dosyaya erişmek için ilgili datanode'a göstermeniz gereken adenode tarafından size bir belirteç formu verilir. Bu, doğru kişinin verilere erişmesini sağlamak için HDFS'nin kullandığı bir güvenlik mekanizması biçimidir. Veri düğümü, yalnızca belirteci görüntüledikten sonra dosyayı okumanıza izin verir.

Yazma işlemi: Yazma işlemi aynı başlangıç ​​düzenini takip eder. Anode'dan veri yazmanıza izin vermesi için istekte bulunmanız gerekir. Karşılığında, yazma işleminin gerçekleştirileceği veri düğümünün konumunu size sağlayacaktır. Bu işlemi gerçekleştirmeyi bitirir bitirmez, veri düğümü bu yazılı veri bloklarını diğer veri düğümlerinde çoğaltmaya başlayacaktır. Çoğaltma tamamlandığında, bir onay alacaksınız. Yazma işlemindeki kimlik doğrulama mekanizması, okuma işlemiyle aynıdır.

HDFS Özellikleri

  1. Kullanılabilirlik : HDFS'nin yüksek kullanılabilirliği ile gelen çok fazla dosya sistemi yoktur. Dosya sistemi, bir küme boyunca veri düğümleri (bağımlılar) üzerindeki blok kopyalar biçiminde verileri çoğaltma mekanizmasını takip eder. Bu verilere erişmek için aradıkları bilgi bloklarını içeren veri düğümleri ile etkileşime geçmeniz gerekir.
  2. Güvenilirlik : Hadoop Dağıtılmış Dosya Sistemi, oldukça güvenilir bir veri depolama sistemidir. HDFS'de depolanabilecek veri miktarı petabayt cinsinden değişir. Tüm verilerini depolamak için bloklar oluşturmak üzere ayrılmış bir küme kullanır. Daha sonra bu blokları depolamak için kümenin düğümlerini kullanır.
  3. Hata toleransı : Bu özellik, genellikle olduğu kadar elverişli olmayan koşullarda HDFS'nin çalışma gücüdür. HDFS, başka hiçbir dosya sisteminin yapamadığı şekilde hataları tolere eder. Verilerinizi gelecekte bile öngörülemeyen etkilerden korur. Daha önce de belirtildiği gibi, verilerin kopyalanması farklı makinelerde yapılır. Bu makinelerden herhangi biri çalışmayı bıraktığında ne olur? Başka herhangi bir sistemde önemli bir sorun olabilirdi, ancak HDFS değil. HDFS, aradığınız veri bloklarının bir kopyasına sahip olan diğer herhangi bir makineden verilerinize erişmenizi sağlar. Buna gerçek hata toleransı denir.
  4. Ölçeklenebilirlik : HDFS, verileri depolamak için bir kümedeki farklı düğümleri kullanır. Depolama gereksinimleri arttığında, her zaman devam edip kümeyi ölçeklendirebilirsiniz. Bu, HDFS'ye özgü başka bir özelliktir. Dosya dağıtım sistemi, kümeyi ölçeklendirmek için size iki mekanizma sağlar - yatay ve dikey ölçeklenebilirlik.
  5. Çoğaltma : Çoğaltma, HDFS'yi diğer depolama sistemlerinden ayıran bir özelliktir. Çoğaltma, düğüm çökmesi, donanım arızası ve diğerleri gibi olumsuz bir olaydan kaynaklanan veri kaybı örneklerini en aza indirir. Çoğaltma işlemi düzenli olarak ve farklı makinelerde gerçekleştirilir. Bu nedenle, bir makine çökerse veri kaybı olmaz. Verilerinizi almak için başka herhangi bir makineyi kullanabilirsiniz.

HDFS Hedefleri

  1. Devasa veri kümelerini yönetme: Diğer dosya dağıtım sistemlerinden farklı olarak, HDFS, büyük veri kümeleri içeren uygulamaları yönetmek için gerekli mimariye sahiptir. Söz konusu veri kümelerinin büyüklüğüne bağlı olarak her küme için yüzlerce düğüme sahip olabilir.
  2. Arıza tespiti ve kurtarma: Arızaları tespit etme ve daha sonra bunlarla uygun şekilde ilgilenme ile ilgili yeteneklerinde HDFS'yi pek kimse yenemez. Söz konusu çok sayıda ticari donanım, HDFS'yi sık sık bileşen arızasına maruz bırakır. Ancak bu bir dezavantaj değildir. Bu tür emtia donanımlarıyla uğraşan her sistem arızaya açıktır. Ancak, sistemin bu arızaları hızlı ve otomatik olarak tespit etme ve aynı zamanda kurtarma sağlama konusunda usta olup olmadığı sorusu devam etmektedir. HDFS kesinlikle yeteneklidir.
  3. Artan verim: Gerçek hesaplama verilerin yakınında gerçekleştirildiği için HDFS her görevi verimli bir şekilde işler. Bu, özellikle büyük veri kümeleriyle uğraşırken çok önemlidir. Bu mekanizma verimi artırır ve ağ trafiği sorununu önemli ölçüde ortadan kaldırır.

Sonuç olarak, HDFS'nin büyük miktarda veriyi güvenilir bir şekilde ve donanım arızasının etkilerini hissetmeden depolayabildiğini söylemek isteriz. Aynı zamanda, hataya son derece dayanıklı, yüksek düzeyde kullanılabilir ve yüksek düzeyde ölçeklenebilirdir.

Hadoop'un derinliklerinde gezinmek ve bir uzman olmak için, upGrad & BITS Pilani'nin Büyük Veri ve Analitikte PG Sertifikasyonuna göz atın. Sektör uzmanları, özel danışman, BITS Pilani Mezun Statüsü ve daha fazlasıyla bire bir uygulamalı deneyim edinin.

Büyük Veri hakkında daha fazla bilgi edinmek istiyorsanız, çalışan profesyoneller için tasarlanmış ve 7+ vaka çalışması ve proje sağlayan, 14 programlama dili ve aracını kapsayan, pratik uygulamalı Büyük Veride Yazılım Geliştirme Uzmanlığı programında PG Diplomamıza göz atın çalıştaylar, en iyi firmalarla 400 saatten fazla titiz öğrenim ve işe yerleştirme yardımı.

Dünyanın En İyi Üniversitelerinden Online Yazılım Geliştirme Kursları öğrenin . Kariyerinizi hızlandırmak için Yönetici PG Programları, Gelişmiş Sertifika Programları veya Yüksek Lisans Programları kazanın.

Geleceğin Teknolojisinde Ustalaşın - Büyük Veri

400+ Saat Öğrenme. 14 Diller ve Araçlar. IIIT-B Mezun Durumu.
IIIT Bangalore'den Büyük Veride Gelişmiş Sertifika Programı