Büyük Veri (Big Data) ve Hadoop Nedir?

watch_later 1/30/2016
Hadoop sistemi denildiğinde en sık görülen terimlerin başında big data geliyor. Big data temel olarak büyük veri olarak çeviri yapılmış olsa da aslında boyutsal bir büyüklük kast edilmemektedir. Burada ki büyük ve dev tabirleri klasik yöntemler kullanılarak işlenemeyen verileri tanımlıyor.
Büyük veri somut olarak bakıldığı zaman hayatımızın her alanını kapsayabiliyor. Örnek olarak her motor 10TB/30 dk veri üretiyor. Bunun gibi medikal veriler, üretim verileri, teknolojik gelişmeler toplandığında big data oluşuyor.



Evimizde var olan disk sürücüleri terrabyte boyutlarında olmasına rağmen yetmeyebiliyor. Büyük veri için bahsedeceğimiz boyutlar petabyte, exabyte ya da zettabyte düzeylerinde olabiliyor. Önümüzdeki 5 sene içinde dünya genelinde depolanan büyük veri boyutunun 35 zettabyte düzeyinde olması bekleniyor. Büyük veri nasıl işleniyor sorusu herkesin merak ettiği bir kavram. Bu konuyu klasik donanımsal yöntemlerle çözmek milyon dolarlık yatırımlara sebep olabilir. Çünkü işlenecek veri gerçekten çok fazla. Ayrıca klasik yöntemlerle aynı performansı almak çok zor diyebiliriz. Örneğin Google arama motorundan yaptığımız aramaların sonuçları saniyeler içerisinde karşımızda duruyor. Bunu klasik bir yöntemle yapsaydı belki aradığımız bir habere 2-3 gün sonra ulaşabilirdik. Bu anlamda Apache projesi olarak adlandırılan Lucene, Solr, Hadoop, HBase sistemleri big data işlemek için oluşturulmuş yazılımlar olarak dikkat çekiyor.

Uçak Motorlarının Yılda Ürettiği Veri Boyutu
Hadoop Nedir?
Hadoop, sıradan sunuculardan (commodity hardware) oluşan küme (cluster) üzerinde  büyük verileri işlemek amaçlı uygulamaları çalıştıran ve Hadoop Distributed File System (HDFS) olarak adlandırılan bir dağıtık dosya sistemi ile Hadoop MapReduce özelliklerini bir araya getiren, Java ile geliştirilmiş açık kaynaklı bir kütüphanedir. Daha yalın bir dille anlatmak gerekirse, Hadoop, HDFS ve MapReduce bileşenlerinden oluşan bir yazılımdır.

Sosyal Medyada Üretilen Dev Veriler 
Hadoop, bir küme(cluster) mimarisidir. Yani sizin bir ‘A’ işiniz var. ‘A’ işini eski mimari ile tek bir makinede çalıştırabiliriz ve ‘T’ sürede sonuç alırsınız. ‘A’ işini küme mimarisi ile ‘N’ kadar makinede aynı anda çalıştırabiliriz. Böylece ‘T/10’, ‘T/20’ gibi sürelerde işi tamamlayabiliriz.
Hadoop'un tam tanımı aynı işi değişik makinelere dağıtarak işi en kısa sürede tamamlayabilmektir. Hadoop'un en önemli özelliklerinden biri ortak ve güvenilir olmayan makineler üzerinde çalışabilir. Eğer makinelerden biri çalışmazsa veya bir problem olursa işi bir sonraki makineye yönlendirir. 

Hadoop'un iki ana bileşeni mevcuttur;
 MapReduce ve HDFS.

HDFS
HDFS kelime açılımı itibari ile Hadoop Distributed Filesystem'dir. Daha önce Google'ın geliştirdiği bir dosya yapısından kalıtım almıştır. HDFS, büyük boyutlu dosyaları oluşturmak için idealdir. Çünkü bir veri bloğu varsayılan olarak 64 MB'den oluşur. Oysa bizim kullandığımız NTFS sistemlerde bu 512 KB'dir. HDFS, küçük boyutlu dosyaları saklamak ve erişmek için çok kötü bir tercihtir.

MapReduce
MapReduce, Hadoop'un işi yapan kısmıdır. İki fonksiyonun birleşmesinden oluşur: Map ve Reduce. Map yani haritalandırma kısmı veriyi, anahtar-değer ilişkisine getirir. Reduce yani küçültme kısmı ise anahtar-değer haline gelmiş veri içerisinde verdiğiniz ilişkiye göre azaltarak istenilen sonucu üretir.

Hadoop'un Diğer Sistemler İle Karşılaştırılması

Normal Veritabanı



MapReduce
Veri Boyutu
Gigabyte Boyutunda



Petabyte Boyutunda
Erişim
İnteraktif ve Batch



Batch
Güncellemeler
Çoklu Okuma ve Yazma



Bir Yaz, Çoklu Oku
Yapı
Statik Şema



Dinamik Şema
Bütünlük
Yüksek



Düşük
Ölçeklendirme 
Doğrusal Değil



Doğrusal

Yahoo'da Hadoop Geçmişi

2004: Hadoop'un ilk versiyonu Doug Cutting ve Mike Cafarella tarafından dahil edildi.
Aralık 2005: Hadoop aynı anda 20 makinede başarıyla çalıştı.
Ocak 2006: Doug Cutting Yahoo bünyesine katıldı.
Şubat 2006: Apache Hadoop projesi resmen başladı.
Şubat 2006: Yahoo tarafından adapte edildi.
Nisan 2006: 188 makine üzerinde 47,9 saatte sıralamayı tamamladı(Her makine 10GB).
Mayıs 2006: Yahoo 300 makine ile Hadoop araştıma kümesini kurdu.
Kasım 2006: Araştırma kümesi 600 makineye çıkarıldı.
Ocak 2007: Araştırma kümesi 900 makineye çıkarıldı.
Nisan 2007: Araştırma kümesi ikiye bölünerek 1000 makineye çıkarıldı.
Nisan 2008: 900 makine ile sıralama ödülü kazanıldı. 1 TB veriyi 209 saniyede sıralandı.
Kasım 2008: Günlük 10 TB veri araştırma kümelerine yüklendi.
Mart 2009: Toplam 24000 makine ile 17 kümeye ulaştı.
Nisan 2009: 500 GB veri 59 saniyede sıralandı(1400 Makine). 100 TB veri ise 173 dakikada tamamlandı(3400 Makine).


Hadoop Ekosistemi  

 Avro: RPC çağrıları için verilerin kolay taşınmasını sağlayan bir serileştirme sistemidir.



 MapReduce: Ortak makinelerde, dağıtık bir mimari ile modelleme ve çalıştırma mimarisidir.

 HDFS: Ortak makinelerde, dağıtık bir mimariye sahip dosya sistemidir.

 Pig: Veri akışını kontrol eden ve büyük boyutlu verilerde işlem yapmayı kolaylaştıran bir araçtır. HDFS ve MapReduce kümelerinde çalışır.


 Hive: Dağıtık yapılı bir veri ambarıdır. SQL benzeri bir dil sağlar.






  Hbase: Dağıtık temelli, kolon bazlı bir veritabanıdır.


 Zookeeeper: İşlerin sürekli çalışır halde kalmasını sağlayan bir takip sistemidir.



  Sqoop: Klasik veritabanı ile HDFS arasında toplu olarak veri transferi yapılmasını sağlayan bir araçtır.


  Oozie: Bütün işleri zamanlamak için kullanılan bir araçtır.






Bir sonraki yazımda görüşmek üzere…



sentiment_satisfied Emoticon