Hadoop nedir?
Apache Hadoop, dağıtılmış bir bilgi işlem ortamında yürütülen veri işleme uygulamalarını geliştirmek için kullanılan açık kaynaklı bir yazılım çerçevesidir.
HADOOP kullanılarak oluşturulan uygulamalar, ticari bilgisayar kümeleri arasında dağıtılan büyük veri kümeleri üzerinde çalıştırılır. Emtia bilgisayarları ucuzdur ve yaygın olarak bulunur. Bunlar daha çok düşük maliyetle daha fazla hesaplama gücü elde etmek için kullanışlıdır.
Kişisel bir bilgisayar sisteminin yerel dosya sisteminde bulunan verilere benzer şekilde, Hadoop'ta veriler, Hadoop Dağıtılmış Dosya sistemi olarak adlandırılan dağıtılmış bir dosya sisteminde bulunur . İşleme modeli, hesaplama mantığının veri içeren küme düğümlerine (sunucu) gönderildiği 'Veri Konumu' konseptine dayanır . Bu hesaplama mantığı, Java gibi yüksek seviyeli bir dilde yazılmış bir programın derlenmiş bir versiyonundan başka bir şey değildir. Böyle bir program, Hadoop HDFS'de depolanan verileri işler.
Biliyor musunuz? Bilgisayar kümesi, birbirine bağlı ve tek bir sistem olarak işlev gören bir dizi birden çok işlem biriminden (depolama diski + işlemci) oluşur.
Bu eğitimde öğreneceksiniz,
- Hadoop EcoSystem ve Bileşenleri
- Hadoop Mimarisi
- 'Hadoop'un Özellikleri
- Hadoop'ta Ağ Topolojisi
Hadoop EcoSystem ve Bileşenleri
Aşağıdaki diyagram, Hadoop ekosistemindeki çeşitli bileşenleri göstermektedir.
Apache Hadoop iki alt projeden oluşur -
- Hadoop MapReduce: MapReduce, Hadoop'ta çalıştırılan uygulamaları yazmak için bir hesaplama modeli ve yazılım çerçevesidir. Bu MapReduce programları, büyük hesaplama düğüm kümeleri üzerinde muazzam verileri paralel olarak işleme kapasitesine sahiptir.
- HDFS ( Hadoop Dağıtılmış Dosya Sistemi ): HDFS, Hadoop uygulamalarının depolama kısmıyla ilgilenir. MapReduce uygulamaları HDFS'den veri tüketir. HDFS, veri bloklarının birden çok kopyasını oluşturur ve bunları bir kümedeki hesaplama düğümlerine dağıtır. Bu dağıtım, güvenilir ve son derece hızlı hesaplamalar sağlar.
Hadoop en iyi MapReduce ve dağıtılmış dosya sistemi olan HDFS ile bilinmesine rağmen, bu terim aynı zamanda dağıtılmış bilgi işlem ve büyük ölçekli veri işleme şemsiyesi altında yer alan ilgili projeler ailesi için de kullanılmaktadır. Apache'deki diğer Hadoop ile ilgili projeler arasında Hive, HBase, Mahout, Sqoop, Flume ve ZooKeeper bulunmaktadır.
Hadoop Mimarisi
Hadoop, veri depolama ve MapReduce ve HDFS yöntemlerini kullanarak dağıtılmış veri işleme için bir Master-Slave Mimarisine sahiptir.
NameNode:
NameNode, ad alanında kullanılan her dosya ve dizini temsil ediyordu.
DataNode:
DataNode, bir HDFS düğümünün durumunu yönetmenize yardımcı olur ve bloklarla etkileşim kurmanıza olanak tanır
Ana Düğüm:
Ana düğüm, Hadoop MapReduce kullanarak verilerin paralel olarak işlenmesini sağlar.
Bağımlı düğüm:
Bağımlı düğümler, karmaşık hesaplamalar yapmak için verileri depolamanıza olanak tanıyan Hadoop kümesindeki ek makinelerdir. Ayrıca, tüm bağımlı düğüm, Görev İzleyici ve bir DataNode ile birlikte gelir. Bu, işlemleri sırasıyla NameNode ve Job Tracker ile senkronize etmenize olanak tanır.
Hadoop'ta, ana veya bağımlı sistem bulutta veya şirket içinde kurulabilir
'Hadoop'un Özellikleri
• Büyük Veri Analizine Uygun
Büyük Veri, doğası gereği dağıtılma ve yapılandırılmamış olma eğiliminde olduğundan, HADOOP kümeleri, Büyük Verinin analizi için en uygunudur. Hesaplama düğümlerine akan işlem mantığı (gerçek veriler değil) olduğundan, daha az ağ bant genişliği tüketilir. Bu kavram, Hadoop tabanlı uygulamaların verimliliğini artırmaya yardımcı olan veri yerelliği kavramı olarak adlandırılır .
• Ölçeklenebilirlik
HADOOP kümeleri, ek küme düğümleri eklenerek herhangi bir ölçüde kolayca ölçeklenebilir ve böylece Büyük Verinin büyümesine izin verir. Ayrıca ölçekleme, uygulama mantığında değişiklik yapılmasını gerektirmez.
• Hata Toleransı
HADOOP ekosistemi, giriş verilerini diğer küme düğümlerine kopyalamak için bir hükme sahiptir. Bu şekilde, bir küme düğümü arızası durumunda veri işleme, başka bir küme düğümünde depolanan verileri kullanarak devam edebilir.
Hadoop'ta Ağ Topolojisi
Ağın topolojisi (Düzenleme), Hadoop kümesinin boyutu büyüdüğünde Hadoop kümesinin performansını etkiler. Performansa ek olarak, yüksek kullanılabilirlik ve arızaların ele alınmasına da dikkat etmek gerekir. Bu Hadoop'u başarmak için, küme oluşumu ağ topolojisini kullanır.
Tipik olarak, ağ bant genişliği, herhangi bir ağ oluştururken dikkate alınması gereken önemli bir faktördür. Bununla birlikte, bant genişliğini ölçmek zor olabileceğinden, Hadoop'ta bir ağ bir ağaç olarak temsil edilir ve bu ağacın düğümleri arasındaki mesafe (atlama sayısı) Hadoop kümesinin oluşumunda önemli bir faktör olarak kabul edilir. Burada, iki düğüm arasındaki mesafe, en yakın ortak atalarına olan uzaklıklarının toplamına eşittir.
Hadoop kümesi bir veri merkezi, raf ve işleri fiilen yürüten düğümden oluşur. Burada veri merkezi raflardan, raf ise düğümlerden oluşmaktadır. İşlemler için kullanılabilen ağ bant genişliği, işlemlerin konumuna bağlı olarak değişir. Yani, biz uzaklaştıkça mevcut bant genişliği azalır.
- Aynı düğümdeki işlemler
- Aynı rafta farklı düğümler
- Aynı veri merkezinin farklı raflarındaki düğümler
- Farklı veri merkezlerindeki düğümler