Veri Bilimi Serisi #4: Apache Hadoop

Büyük Veri ve işlenmesi konusunda daha önce bazı yazılar paylaşmıştık. Büyük Veri’yi analiz etmek için kullanılan Veri Bilimi ve yöntemleri hakkında daha fazla bilgi için bu yazılarımıza göz atabilirsiniz. Bugün Veri Bilimi Serisi’nin 4. Yazısında Apache Hadoop altyapısından bahsedeceğiz. Apache Hadoop, Apache Kafka gibi mimarilerle oluşturulan büyük veri setleriyle birden fazla makinede paralel olarak işlem yapmamızı, verileri kaydetmemizi ve yönetmemizi sağlayan bir altyapıdır. HDFS (Hadoop Distibuted File System), MapReduce, Hadoop Common ve YARN modüllerinden oluşur. Java ile yazılmıştır ve açık kaynak kodludur.

HDFS (Hadoop Distributed File System) nedir?

HDFS dosya sistemi, sıradan sunucuların disklerini bir araya getirerek büyük ve sanal başka bir disk oluşturur. Oluşturulan bu sanal disk, çok büyük boyuttaki dosyaları sistemde saklanmasını ve bunların işlenmesini sağlar.

hadoop-mimarisi-efilli-apache

Hadoop 4 modülden oluşur:

Bunlara Hadoop’un yapıtaşları da diyebiliriz. Büyük veri analizi için geliştirilmiş sistemlerde her modül önemli bir görevi yerine getirir. Hadoop’u basitçe 4 aşamaya böleriz ve bu 4 temel göreve karşılık 4 modül bulunur. Şimdi bu modülleri kısaca açıklayalım.

Türkçeye Dağıtık Dosya Sistemi olarak çevrilen bu kavramı anlatırken, söylem kolaylığından ve yazılım dilinin genellikle İngilizce olmasından dolayı “distributed file system”, hatta kısaca DFS olarak bahsedeceğiz. DFS, 4 modül içinde en önemli iki tanesinden ilkidir. DFS, verinin çok sayıda depolama cihazında kolayca ulaşılabilir şekilde depolanmasına yarar. Sonrasında bu verilere, ikinci en önemli modül olan MapReduce ile bakılır.

“Dosya sistemi” bilgisayarın kullandığı veri depolama sistemidir, bu sistem sayesinde veriler kolayla bulunup kullanılır. Normalde bilgisayarın işletim sistemine göre belirlenir ama Hadoop’un bunlardan farklı, HDFS (Hadoop DFS) diye bilinen kendine ait bir dosya sistemi vardır. HDFS, sunucu bilgisayarın dosya sisteminin üstündedir, yani OS işletim sistemini kullanan her bilgisayardan ulaşılabilir.

MapReduce, çekilen verileri analize uygun bir formata (map) dönüştürür ve matematiksel işlemlerin yapılabilmesine olanak sağlar. Örneğin; 45 yaş ve üzeri kadınların sayısını hesaplamak vb. -bu işleme “reduce” denir, çünkü veriyi belirli bir oranda sınırlarsınız.

Bu modül farklı işletim sistemlerinde (Windows, Unix vb.) HDFS altında depolanmış verinin okunması için gerekli Java araçlarını sağlar.

Son modül olarak YARN, depolama yapan ve analizi yürüten sistemlerinin kaynaklarını yönetir.

Hadoop’a yıllar boyunca birçok farklı prosedür, kütüphane ve özellik eklenmiş olsa da, HDFS, MapReduce, Hadoop Common ve Hadoop YARN en önemli 4 modüldür.

Hadoop Kullanımı

Hadoop’un esnek yapısı sayesinde şirketler ihtiyaçlarına göre her teknolojik mağazada bulabilecekleri ucuz ve kullanıma hazır parçalarla veri sistemlerinde ekleme veya değişiklik yapabilirler. Günümüzde Hadoop, diğerlerine göre daha uygun fiyatlı ve kullanıma hazır donanımı ile en sık kullanılan sistemlerden biri olmuştur. Fortune 500 listesindeki şirketlerin yarısından fazlasının bu sistemi kullandığı söylenmektedir*.

Çevrimiçi hizmet veren isimlerin neredeyse hepsi bu sistemi kullanıyor ve herkes kendi amaçlarına göre sistemi değiştirebiliyor olduğundan, Hadoop sisteminin yazılımcıları da bu doğrultuda değişiklikler yapmakta ve ürünü geliştirmektedir. Amazon ve Google gibi büyük şirketlerdeki uzman yazılımcılar tarafından yapılan modifikasyonlar Hadoop yazılımcılarına da örnek olmuş ve sistemi geliştirmelerine yardımcı olmuştur.

Açık kaynaklı bir yazılımın en önemli ve faydalı özelliklerinden biri de gönüllü ve kurumsal kullanıcıların iş birliğiyle yapılan ortak geliştirmedir.

Ticari kullanım için farklı versiyonlarının oluşturulmasının nedeni, Hadoop’un ham haliyle, web sitesinde göreceğiniz temel araçlarla bilişim profesyonelleri için bile çok oldukça karmaşık olmasıdır. Örneğin Cloudera ile Hadoop sistemini kurmak ve çalıştırmak şirketler daha kolay hale getirilmiş ve eğitim, destek gibi hizmetler bir araya getirilerek ticari kullanım için bir paket oluşturulmuştur.

Hadoop’un esnek yapısı ile şirketler büyüdükçe sistemlerini de genişletebilir ve veri analizi operasyonlarını buna göre düzeltebilirler. Açık kaynak kodu sayesinde büyük adımlarla ilerlemiş olan bu sistem, Büyük Veri analizini herkes için ulaşılabilir hale getirmeyi başarmıştır.

Severek kullandığımız sistemlerden biri olan Hadoop ile ilgili sorularınız için bize ulaşın. Veri Bilimi Serisi’nin devamını okumak için Blog sayfamızı takipte kalın!

Facebook, Linkedin ve Instagram‘da bizi takip etmeyi de unutmayın.

Yakında görüşmek üzere…

2019-10-17T11:40:06+03:00Ekim 17th, 2019|