Hadoop

Hadoop

Bilgi
Yaratıcı Doug Kesme ve Mike Cafarella ( içinde )
Tarafından geliştirildi Apache Yazılım Vakfı
İlk versiyon 1 st Nisan 2006
Son sürüm 3.3.0 (14 Temmuz 2020)
Depozito git-wip-us.apache.org/repos/asf/hadoop.git , gitbox.apache.org/repos/asf?p=hadoop.git ve github.com/apache/hadoop
Yazılmış Java
İşletim sistemi Çapraz platform ve POSIX
Çevre Java sanal makinesi
Tür Çerçeve
Lisans Apache Lisansı sürüm 2.0 ve GNU Genel Kamu Lisansı
Dokümantasyon wiki.apache.org/hadoop/HowToContribute
İnternet sitesi hadoop.apache.org

Hadoop , uygulamaların binlerce düğüm ve petabayt veri ile çalışmasına olanak tanıyan dağıtılmış (veri depolama ve işleme açısından) ve ölçeklenebilir (ölçeklenebilir) uygulamaların oluşturulmasını kolaylaştırmayı amaçlayan , Java ile yazılmış ücretsiz ve açık kaynaklı bir çerçevedir . Böylece her düğüm, bir küme içinde gruplanmış standart makinelerden oluşur. Tüm Hadoop modülleri, donanım arızalarının sık olduğu ve bu nedenle çerçeve tarafından otomatik olarak ele alınması gerektiği düşüncesiyle tasarlanmıştır.

Hadoop yayınlanması esinlenerek MapReduce , GoogleFS ve BigTable ait Google'da . Hadoop, Doug Cutting tarafından oluşturulmuştur ve 2009'dan beri Apache Software Foundation projelerinin bir parçasıdır .

Hadoop'un çekirdeği bir depolama bölümünden oluşur: HDFS ( Hadoop Dağıtılmış Dosya Sistemi ) ve MapReduce adlı bir işleme bölümü. Hadoop, dosyaları büyük bloklara böler ve bunları kümenin düğümlerine dağıtır. Verileri işlemek için kodu her düğüme aktarır ve her düğüm sahip olduğu verileri işler. Bu, tüm verilerin daha geleneksel bir süper bilgisayar mimarisine göre daha hızlı ve daha verimli bir şekilde işlenmesini mümkün kılar hesaplamaların ve verilerin yüksek hızlı ağlar üzerinden dağıtıldığı paralel bir dosya sistemine dayanır.

Temel Hadoop çerçevesi aşağıdaki modüllerden oluşur:

Hadoop terimi yalnızca yukarıdaki temel modülleri değil, aynı zamanda ekosistemini ve ona bağlanmak için gelen Apache Pig , Apache Hive , Apache HBase , Apache Phoenix , Apache Spark , Apache ZooKeeper , Apache Impala gibi tüm yazılımları da ifade eder. , Apache Flume , Apache Sqoop , Apache Oozie , Apache Storm .

Tarihi

2004 yılında Google , algoritmasını büyük bir sunucu kümesi olan MapReduce ve kümelenmiş dosya sistemi GoogleFS üzerindeki büyük ölçekli analitik işlemlere dayalı olarak sunan bir makale yayınladı . O sırada Apache Lucene'nin geliştirilmesi üzerinde çalışan ve Mountain View firmasınınkine benzer sorunlarla karşılaşan Doug Cutting , daha sonra araçların kendi versiyonunu açık kaynak versiyonunda geliştirmek için makalede açıklanan kavramları kullanmaya karar verdi. . , Hadoop projesi olacak.

Bu yeni Java çerçevesinin logosu ve adı için beş yaşındaki oğlunun yumuşak oyuncağı olan sarı filden ilham aldı .

2006 yılında Doug Kesme katılmaya karar Yahoo ile Nutch proje dağıtılmış veri işleme ve depolama açısından Google'ın erken çalışmalarına dayanan ve fikirler.

Yahoo, 2008'de Hadoop'u açık kaynaklı bir proje olarak sundu.

2011 yılında, 1.0.0 sürümünde Hadoop doğdu; tarihli27 Aralık 2011.

23 Mayıs 2012, açık kaynak topluluğu , Kasım 2012'den itibaren Apache Software Foundation sponsorluğunda Apache projesinin bir parçası olarak halka sunulan Hadoop 2.0'ı piyasaya sürdü . En büyük devrim, Hadoop'un yapısına YARN katmanının eklenmesiydi .

Nereden eylül 20163.0.0-alpha1 sürümü yayınlandı.

Mimari

Hadoop Dağıtılmış Dosya Sistemi

HDFS, GoogleFS'den Hadoop tarafından geliştirilmiş, dağıtılmış , genişletilebilir ve taşınabilir bir dosya sistemidir . Java ile yazılmış, çok büyük hacimli verileri standart sabit sürücülerle donatılmış çok sayıda makinede depolamak için tasarlanmıştır. Dağıtılmış bir dosya sistemini tek bir sabit sürücü gibi değiştirmek için fiziksel depolama mimarisinin soyutlanmasına izin verir .

HDFS makinelerinin mimarisi (HDFS kümesi de denir ) iki tür ana bileşene dayanır:

İsim Düğüm ad alanı, bu bileşen ad alanını , dosya sistemi ağacını ve dosya ve dizin meta verilerini yönetir . Kümede dağıtılan veri bloklarının konumunu merkezileştirir . Benzersizdir ancak dosya sistemindeki değişikliklerin geçmişini ( yedekleme rolü ) yöneten ikincil bir örneğe sahiptir . Bu ikincil NameNode , orijinal NameNode arızası durumunda Hadoop kümesinin çalışmasının sürekliliğini sağlar . DataNode veri düğümü, bu bileşen veri bloklarını depolar ve geri yükler. Bir dosyayı okuma işlemi sırasında, NameNode tüm veri bloklarını bulmak için sorgulanır. Bunların her biri için, NameNode adresini döndürür en ulaşılabilir DataNode demek ki, DataNode büyük sahiptir bant genişliği . DataNodes periyodik iletişim NameNode onlar konak veri bloklarının listesi. Bu blokların bir kısmı kümede yeterince kopyalanmazsa , bu blokların yazılması, diğerlerine kopyalanarak kademeli olarak gerçekleştirilir.

Her DataNode , HDFS'ye özel bir protokol kullanarak ağ üzerinde bir veri bloğu görevi görür . Dosya sistemi kullanan TCP / IP katmanı iletişim için. İstemciler birbirleriyle iletişim kurmak için Uzaktan Yordam Çağrısını kullanır. HDFS, büyük dosyaları birden çok makinede depolar. Verileri birden çok ana bilgisayarda kopyalayarak güvenilirliğe ulaşır ve bu nedenle ana makinelerde RAID depolaması gerektirmez . Çoğaltma varsayılanı ile, veriler üç düğümde depolanır: ikisi aynı ortamda ve biri farklı ortamlarda. DataNodes verilerini yeniden dengelemeye ve verilerin çoğaltma yüksek seviyede tutabilmek için iletişim kurabilir.

Bir POSIX dosya sistemi gereksinimleri bir Hadoop uygulaması için hedeflenen hedeflerden farklı olduğundan, HDFS, POSIX belirtimlerine tam olarak uymaz . Tamamen POSIX uyumlu bir dosya sistemine sahip olmamanın verdiği ödün, veri işleme performansını artırır.

HDFS kısa süre önce yüksek kullanılabilirlik yeteneklerini geliştirdi ve bu da artık birincil meta veri sunucusunun bir arıza durumunda manuel olarak yedeklemeye devredilmesine izin veriyor (otomatik yük devretme geliştirme aşamasındadır). Yana NameNodes depolamak ve yönetmek için tek nokta vardır meta , bunlar dosyaları küçük, özellikle dosyaların çok sayıda destekleyici bir darboğaz olabilir. HDFS, ayrı Ad Düğümleri tarafından sunulan birden çok ad alanını kabul ederek bu sorunu azaltır .

Harita indirgeme

Hadoop, MapReduce konseptinin tam bir uygulamasına sahiptir.

HBase

HBase , büyük tablolar için yapılandırılmış depolamaya sahip dağıtılmış bir veritabanıdır .

Gibi BigTable , HBase bir olan kolon yönelik veri tabanı .

ZooKeeper

ZooKeeper, Google tarafından geliştirilen Chubby yazılımına dayalı, dağıtılmış sistemler için yapılandırma yönetimi yazılımıdır. ZooKeeper, HBase'nin uygulanması için diğer şeylerin yanı sıra kullanılır.

Kovan

Hive, Hadoop'un SQL'e benzer bir sözdizimi ile kullanılmasına izin veren bir veri analiz yazılımıdır . Hive, ilk olarak Facebook tarafından geliştirilmiştir .

Domuz

Pig, Hive ile karşılaştırılabilir, ancak Pig Latin dilini kullanan bir veri analiz yazılımıdır . Pig, ilk olarak Yahoo! .

Kullanımlar

BT alanındaki birkaç büyük isim, Facebook , Yahoo , Microsoft gibi Hadoop'u kullandığını açıkladı . Yahoo, 100.000'den fazla CPU ve bu teknolojiye adanmış 40.000 makineyle dünyanın en büyük Hadoop kümesini işletmektedir.

WikiTrends, Wikipedia ansiklopedisinin sunduğu ücretsiz bir kitle analiz hizmetidir .Nisan 2014. Özellikle Hadoop'u kullanan uygulama, Wikipedia ansiklopedisinde kullanıcılar tarafından en çok aranan temaların grafiksel bir görselleştirme arayüzü aracılığıyla ölçülmesini mümkün kılıyor.

Hadoop ve bulut

Hadoop, geleneksel bir veri merkezinde ve aynı zamanda bulut aracılığıyla da kurulabilir . Bulut, kuruluşların belirli bir donanım veya uzmanlık edinmeden Hadoop'u dağıtmasına olanak tanır.

Microsoft Azure

Azure HDInsight, Microsoft Azure'da Hadoop'u dağıtan bir hizmettir. HDInsight, Hortonworks Veri Platformunu (HDP) kullanır . HDInsight, .NET'te (Java'ya ek olarak) uzantıların programlanmasına izin verir . HDInsight, Ubuntu kullanılarak Hadoop kümelerinin oluşturulmasını da destekler.

Bulutta HDInsight kullanarak, işletmeler istedikleri kadar çok düğüm çalıştırabilir; hesaplamaya ve kullanılan depoya göre faturalandırılacaktır. HDP uygulamaları ayrıca yedekleme, geliştirme, test etme ve çığır açan senaryolar için verileri şirket içi bir veri merkezinden buluta taşıyabilir. Azure sanal makinelerde HDP kümeleri çalıştırmak da mümkündür.

Amazon EC2 / S3 hizmetleri

Hadoop'u Amazon Elastic Compute Cloud (EC2) ve Amazon Simple Storage Service (S3) üzerinde çalıştırmak mümkündür . Örnek olarak The New York Times , 11 milyon PDF dosyasında 4 TB ham TIFF görüntüsünü (Amazon S3'te depolanan) işlemek için 100 Amazon EC2 bulut sunucusu ve bir Hadoop uygulaması kullandı.

Dağılımlar

Hadoop, eğitim hizmetleri ve ticari desteğin yanı sıra ek işlevler sunan dört oyuncu tarafından özellikle dağıtılmaktadır:

Notlar ve referanslar

  1. "  https://archive.apache.org/dist/hadoop/common/  "
  2. "  https://hadoop.apache.org/release/3.3.0.html  "
  3. "  Google Research Publication: MapReduce  " , research.google.com'da ( 12 Eylül 2016'da erişildi )
  4. (içinde) "  Hadoop Doug Cutting Daddy odada bir fil olduğunu söylüyor  " , The Register ,8 Mayıs 2014( çevrimiçi okuyun )
  5. "  Cloudera: Hadoop'un Kısa Tarihi, Yaratıcısı ve Devrim | Silikon  ”, Silikon ,Mart 29, 2012( çevrimiçi okuyun , 17 Temmuz 2018'de danışıldı )
  6. “  Hadoop - Ana Büyük Veri platformu hakkında bilmeniz gereken her şey  ” , www.lebigdata.fr adresinde ( 17 Temmuz 2018'de erişildi )
  7. "  Apache Hadoop Bültenleri  " , hadoop.apache.org adresinde ( 17 Temmuz 2018'de erişildi )
  8. Hadoop'u kullandığını iddia eden şirketlerin listesi
  9. Apache.org, Dünya Çapında Hadoop Kullanımı .
  10. "  WikiTrends, 21  TB'den fazla gerçek zamanlı istatistik sağlayan ilk Büyük Veri uygulaması  " [PDF] , www.itrpress.com ,Mart 3, 2014( 10 Kasım 2014'te erişildi )
  11. Marlène Duretz , "  Fena olmasa bile  ", Le Monde ,3 Haziran 2014( çevrimiçi okuyun )
  12. https://azure.microsoft.com/en-us/solutions/hadoop/
  13. https://azure.microsoft.com/en-us/services/hdinsight/
  14. S i Resmi Cloudera, eğitim hizmetini ve desteğini sunuyor
  15. "  Büyük Veri: Cloudera Fransa'ya yerleşti  ", Silikon ,7 Ekim 2014( çevrimiçi okuyun , 22 Haziran 2017'de danışıldı )

Ayrıca görün

İlgili Makaleler

Dış bağlantılar