Büyük Veri ve Hadoop

d.
Bilişim Hareketi
Published in
3 min readJan 25, 2016
Büyük Veri [1]

Günümüzde artan cihazlar ve internet kullanımı…. Aslında büyük veri için, gerçekten büyük boyutlara sahip, normal programlama teknikleri ile işlenmesi çok zor ve geleneksel veri saklama modelleri ile barındırılması çok maliyetli(ve zor) olan veri diyebiliriz. Bahsedilen durumun kafamızda şekillenmesi açısından DOMO tarafından yayınlanan Data Never Sleeps 2.0 infografiğine bakmak yetecektir.

1 Dakikada İnternet [2]

Sadece 60 saniyede gerçekleşen bu işlemlerin içerisinde üretilen ve anlamlandırılması gereken verinin boyutu petabaytlarla ifade edilmektedir. Bunun yanı sıra, üretilen veri her zaman kolayca işlenebilir halde de olmamaktadır. Bu durumda büyük veri yığınları içerisinde, anlamlı veriyi en başarılı ve en kolay(az maliyetli) şekilde elde etmek artık bir ihtiyaç haline gelmiştir.

MapReduce [3]

Büyük veri ve işlenmesi denilince muhtemelen akıllara gelen ilk şirket Google olacaktır. Bu algıyı en çok hakeden firma olmasının arkasında, milyarlarca web sayfası içerisinden istenilen bilgiyi en hızlı ve büyük oranda doğru şekilde getirmesi söylenebilir. Google’ın verilerle yaptığı diğer yüzlerce iş bir tarafa, sadece bir arama motoru olarak sunduğu hizmetin arkasında muhteşem bir mühendislik başarısı yatmaktadır, MapReduce. 2004 yılında duyurulan MapReduce algoritmasından önce bahsedilmesi gereken şeyin, bu algoritmanın çalışmasına imkan sağlayan ve yine Google tarafından 2003 yılında duyurulan Google File System (GFS) olduğunu söylemek yanlış olmaz. Teknik detaylara boğmadan kısaca bahsetmek gerekirse, GFS birçok makina üzerinde dağıtık çalışabilen geniş ölçekli ve kayıt(log) tutulabilen yapısal bir dosyalama sistemidir. GFS üzerinde çalıştığından bahsettiğimiz MapReduce algoritması ise isminden de anlaşılabileceği gibi iki kısımdan oluşmaktadır: map ve reduce. Map fonksiyonu verilerin dağıtık sistemdeki makinalarda işlenmesini sağlar. Reduce fonksiyonu da işlenen verilerin sonuçlarına göre bir araya getirilmesini ve istenen sonucun elde edilmesini sağlar. Bu çalışma şekli aynı zamanda yandaki şekilde de rahatça görülebilir.

Büyük veri ve Hadoop başlıklı bir yazıda Google’dan ve büyük verilerle çalışma şeklinden bahsetmemizin sebebi, Hadoop için ilham kaynağı olmasından kaynaklanmakta…

MapReduce algoritmasının duyurulmasının ardından hayata geçirilen Hadoop, Apache Foundation tarafından açık kaynak kodlu olarak geliştirlen ve büyük sunucularda değil de günlük hayatta kullandığımız bilgisayarlarda veya uygun fiyatlı sunucularda (commodity) dağıtık şekilde çalışabilen bir kütüphane olarak tanımlanabilir. Hadoop, dağıtık sistemde dosyaları tutabilmek için Google çözümlerinin benzerleri olan Hadoop Distrubuted File System(HDFS)’i, verileri işlemek içinde Hadoop Map/Reduce’u geliştirmiştir. Efendi — köle (master — slave) mantığıyla çalışan dağıtık sistemlerde, Hadoop için yönetici düğüm olan namenode ve verilerin saklanıp kendi yerelinde işlenmesini sağlayan düğümler olan datanode’lar bulunur. Hadoop ekosistemi, kendi içerisinde makinelerin devre dışı kalma durumuyla başa çıkma, veri kaybına engel olmak için yedekleme gibi her biri ayrı bir yazının konusu olabilecek birçok özelliğe sahiptir.

Hadoop Ekosistemi [4]

Hadoop kendi içerisinde de bir çok projeyi barındıran bir ekosistem. Bu sistemde veri tabanı çözümünü barındıran HBase, kümeleme algoritmalarının Hadoop’a uygun hale getirildiği Mahout, SQL benzeri sorguların Hadoop üzerinde kullanılmasını sağlayan Hive gibi başlıca projeler büyük verilerle çalışmada en çok kullanılan çözümler olarak sayılabilir.

Genel bilgi veren bu yazıda son olarak Hadoop’u kullanan uzun bir kurum ve kuruluş listesi olduğundan bahsetmek gerektiğine inanıyorum. Apache’nin PoweredBy bilgilendirme sayfasında harf sırasına göre listelenmiş şirketler arasında, Facebook, Yahoo, Spotify gibi en bilinen şirketler bulunuyor.

Ytü — Bilgisayar Mühendisliği, bitirme tezi kapsamında çalıştığım Hadoop ve büyük veri işleme alanında yayınlamayı planladığım blog için bir giriş özelliğini taşıyan bu yazıyı okuduğunuz için teşekkür ederim.

--

--