Veri Bilimi Okulu

BG2: Cluster Ağ ve IP Planlaması

Loading

1. VMware Sanal Ağ Ayarları Editörü (Virtual Network Editor) Hadoop Big Data Cluster için basit de olsa ağ ve ip planlaması yapmamız gerekiyor. Tüm sunucularımızın internete çıkmasını istiyoruz. Bu sebeple VMware network adaptörü NAT’da (varsayılan) bıraktık. Böylelikle oluşturulan her sanal sunucu ana makinenin ip’si ile internete çıkış sağlayacaktır. Ağ ve ip yapılandırmasını yapmak için VMware […]

BG3: VMWare ile Sanal Makine Yaratmak

Loading

Kişisel Bilgisayara Gerçek Bir Hadoop Big Data Clusterı Kurmak yazı dizimizin üçüncüsüne devam ediyoruz. İlk yazımızda genel bir giriş yapmıştık. İkinci yazımızda ise ağ ve ip planlaması yaptık. Bu yazımızda belirlediğimiz uygulama planına göre devam ediyoruz. Planımıza göre 6 sunuculu bir Hadoop cluster kurmayı hedeflemiştik. İşimizi kolaylaştırmak için VMware ile bir sanal makine oluşturacağız. Bu […]

BG4: İşletim Sistemini Yüklemek

Loading

Bu yazımızda daha önce VMware ile yarattığımız sanal makine üzerine CentOS7 64-bit işletim sistemini kuracağız, gerekli yükleme seçeneklerini belirleyeceğiz ve internete erişir hale getireceğiz. BASECENTOS7 sanal makinemizi başlatıyoruz. Sanal DVD sürücüde  CentOS-7-x86_64-DVD-1708.iso takılı olduğu için oradan başlatacaktır. Karşımıza çıkan ekranın içine tıklayıp mouse ve klavye komutlarını sanal makineye teslim editoruz. TAB tuşuna tıklayıp imlecin yanıp […]

BG5: Gerekli Yazılımları Yüklemek

Loading

Şimdiye kadar internete bağlanan bir makine kurduk. Öncelikle internete bağlı bir makine yapmamızın sebebi gerekli yazılımların kurulması için internet bağlantısına ihtiyacımızın olmasıydı. Bu yazımızda aşağıdaki yazılımları kurup bazı küçük ayarlamalar yapacağız. 1. Yüklemesi Zorunlu Programlar: yum rpm scp, curl, unzip, tar wget OpenSSL Python 2.7.X java (1.8 ve üzeri) ssh ntp Ayrıca ben bu yazıdan itibaren ana […]

BG7: Baz Şablon Sunucu Konfigürasyonu

Loading

Baz şablon sunucumuza (basecentos7min) gerekli yazılımları yükledik. Şimde bazı ayarları yapılandıracağız. 1. Ağ ayarlarının kontrolü İşletim sistemi kurulumu esnasında ağ ayarlarını yapmıştık. Ağ ayarları deyince gözümüz korkmasın basit bir kaç değerden ibaret. ip, gateway, dns server, subnetmask ve hostname. 2. Hosts dosyasını düzenleme Her bilgisayar aslında kendi içinde küçük bir dosyada isim çözümlemesi tutar. Linux […]

BG8: Uzman Seviyesi Linux Kernel Ayarları

Loading

Linux kernel ayarlarını varsayılanda bıraksak da sıkıntı olmaz ancak biz bu makineleri big data için kullanacağız bu sebeple bazı konfigürasyon değişikliği yapmak hem faydalı hem de performans artırıcı olacaktır. Bu ayarları yapmadan devam edebilirsiniz. 1. Tavsiye Edilen Linux Kernel Parametreleri: Değiştireceğimiz temel kernel ayarları   /etc/sysctl.conf dosyasındadır. [root@basecentos7min ~]# nano /etc/sysctl.conf  # sysctl settings are defined through […]

BG9: Sanal Makineleri Kopyalama ve Parolasız (Passworless-SSH) Bağlantısı

Loading

Baz şablon sunucu hazırlandıktan sonra bunu cluster planındaki sunucu sayısı kadar çoğaltıyoruz. Benim planımda 6 sunucu kurmak vardı, o yüzden 6 tane kopyaladım. Bu yazıda kopyalanmış sunucuların içine tek tek girip ip ve hostname değişikliği yapacağız. Tek tek yapmak ip çakışmasını önlemek için önemlidir. Sonrasında sunucular arasında passwordless-ssh kuracağız. Passwordless-ssh Ambari ile yapılan kurulumlarda büyük […]

BG10: Hadoop Cluster Planı

Loading

Hadoop clusterında bulunacak servislerin sunuculara dağıtımına cluster planlaması diyoruz. Hangi servis hangi sunucuda çalışacak, master nodelar hangileri, slave nodelar hangileri, edge server hangisi olacak, meta data tutan ilişkisel veritabanlarını nereye kuracağız, local repository nerede olacak bunların planlamasını bu aşamada yapıyoruz. Aşağıdaki şekilde plana göz atılabilir. Şeklin anlaşılır kılmak adına ayrıntılara yer vermedik. Biz burada basit […]

BG11: Edge Server Hazırlama (httpd ve pssh)

Loading

Şimdiye kadar cluster planımızı yaptık, birbiriyle haberleşen 6 sunucu hazırladık. Cluster planımızda node3’ü edge server olarak belirlemiştik. Bu yazımızda edge serverı clusterı kurmaya yönelik olarakApache httpd servisini ve paralel ssh (pssh) kurulumu yapacağız. 1. Paralel ssh Kurulumu ve Kullanımı Cluster kurulumunda veya yönetiminde sunucularımıza birçok işlem yapıyoruz. Her sunucuya tek tek bağlanıp bu işlemleri yapmak çok […]

BG12: Local Repository Kurulumu

Loading

1. Giriş Lokal respository kurum ve şirketler tarafından sıklıkla kullanılır. Lokal repository sayesinde kullanıcı bilgisayarları veya sunucular genel internetten karşıladığı paket yükleme, güncelleme vb. işlemleri kurum/şirket lokal repositorysinden karşılar. Böylelikle yüzlerce, binlerce bilgisayarın internetten tek tek yapacağı işi, bir sunucu bir kere yapar ve geniş alan ağ trafiği azaltılmış olur. Lokal repository kullanımına zorunlu hale […]

BG13: Ambari Kurulumu

Loading

Cluster planında Ambari/Edge Server olarak belirlediğimiz node3 sunucusuna bağlanıyoruz. Kurulumdan kastım; tarayıcıda http://node3.datalonga.com:8080 yazdığımızda karşımıza Ambari arayüzünün çıkmasını sağayacak herşeydir. Bu kurulum 3 aşamada olacak: Ambari Yükleme Ambari Kurma Ambari Çalıştırma 1. Ambari Yükleme (İşin Türkçesi Install Ambari ) O kadar hazırlık yaptık değil mi? Şimdi bir komutla yükleyelim artık. yum -y install ambari-server diyoruz […]

BG14: Ambari ile Cluster Kurulumu

Loading

Şimdiye kadar Ambari Server kurduk. Artık Ambari ile Hadoop cluster kurabiliriz. Çalışmıyorsa Ambari Server’ı çalıştıralım. node3 sunucusundan ambari-server start komutuyla çalıştıralım. Daha sonra tarayıcıdan http://node3.datalonga.com:8080 adresine gidelim ve Ambari’de admin/admin ile oturumu açalım. Launch Istall Wizard butonuna basalım ve cluster kurmaya başlayalım. 1. Cluster’a İsim Verme İlk adımda cluster’a isim veriyoruz. Ben keraban verdim. 2. Versiyon Seçme […]

Spark Dataframe Operasyonları-1: İndeks Ekleme ve Sütun Sırasını ve Türünü Değiştirme

Loading

Merhaba, bu yazımızda veri ön hazırlığı aşamasında veri yüklerken, Spark Dataframe oluştururken, dataframe şekillendirirken, onu dönüştürürken, dataframe üzerinde veri keşfi yaparken vb. işlemler için kullandığım örnek uygulamaları paylaşacağım. Basit bir yazı olacak ancak bunu önemsiyorum, çünkü birçok insan veri yükleme ve veri hazırlığı esnasında sorun yaşıyor. Spark 2.0 sürümüyle birlikte Spark dataframe API’ye daha fazla […]

Apache Spark2 Dataframe Tarih Saat İşlemleri

Loading

Merhaba, bu yazımızda Spark Dataframe tarih-saat için kullandığım bazı işlemleri paylaşacağım. Tarih saat işlemlerinde format dilden dile, ülkeden ülkeye ve kültürden kültüre biraz farklı olduğu için sık sık düzeltme ve dönüştürme yapmak gerekir. Örneğin bizde gün/ay/yıl kullanımı yaygın iken bazı ülkelerde /ay/gün/yıl kullanımı yaygındır. 03/07/1999 tarihini örnek alalım: Bu 3 Temmuz mu, yoksa 7 Mart […]

Apache Spark SQL: CSV Okuma, Şema Oluşturma, Dataframe Üzerinde SQL Sorguları (Scala)

Loading

Merhaba, bu yazımızda Spark Dataframe oluştururken ve dataframe üzerinde veri keşfi yaparken kullandığım bazı işlemleri paylaşacağım. Basit bir yazı olacak ancak bunu önemsiyorum çünkü birçok insan veri yükleme esnasında sorun yaşıyor ve bir sürü zaman kaybediyor. Daha önce de buna benzer yazı yazmıştım ancak o zaman Spark1 kullanmıştım. Artık Spark2 var. Spark 2.0 sürümüyle birlikte […]

Linux Yetkilendirmeler (Linux Permissions)

Loading

Hepimiz Linux kullanırken permission denied gibi hatalar almışızdır. Bu tür hataları çözmek veya hataya baştan düşmemek için Linux’un kullanıcı, grup, sahiplik (owner) ve file mode kavramlarını iyi anlamalıyız. Bu yazımızda dosya modu (file mode) kavramı ve chmod ile file mode nasıl düzenlenir onu ele alacağız. Sonrasında örnekler yapacağız. Linux dünyasında bir kullanıcı bir dosya veya […]

Sık Kullanılan Linux Komutları: grep ve wc

Loading

Atatürk’ün bilim ile ilgili söylemiş olduğu sözlerden derleme yaparak bir metin dosyası içine topladık. Bu yazımızda kullanacağımız komutları bu örnek dosya üzerinde yapacağız. erkan@vm:~/lnx_kmtlari\$ nano ataturk_bilim_sozleri.txt Bilim ve fen nerede ise oradan alacağız ve ulusun her bireyinin kafasına koyacağız. Hayatta en hakiki mürşit, ilimdir. Her işin esas hedefine kısa ve kestirme yoldan varmak arzu edilmekle beraber, yolun […]

Sık Kullanılan Linux Komutları:Kopyalama, Taşıma ve Silme

Loading

Serinin bu yazısında temel linux komutlarından kopyalama, taşıma, silme işlemlerini göreceğiz Aynı anda birden fazla dizin yaratma erkan@vm:~\$ mkdir dir1 dir2 dir3 erkan@vm:~\$ ls -l total 191140 drwxrwxr-x 2 erkan erkan 4096 Eyl 16 07:07 dir1 drwxrwxr-x 2 erkan erkan 4096 Eyl 16 07:07 dir2 drwxrwxr-x 2 erkan erkan 4096 Eyl 16 07:07 dir3 Linux […]

Sık Kullanılan Linux Komutları: Genel Bilgiler

Loading

Kendim sıkça kullandığım Linux komutlarını bu yazıda derleyeceğim. Umarım sizlere de faydası dokunur. Komut satırında shell promptun solunda \$ varsa kullanıcı, # varsa superuser demektir. erkan@vm:~\$ exit exit root@vm:/home/erkan# Harddisk doluluk durumunu görmek için:df root@vm:~# df Filesystem 1K-blocks Used Available Use% Mounted on udev 1995360 0 1995360 0% /dev tmpfs 403528 11456 392072 3% /run […]

Bir Bakışta K-Fold Cross Validation

Loading

K-Fold Cross Validation, sınıflandırma modellerinin değerlendirilmesi ve modelin eğitilmesi için veri setini parçalara ayırma yöntemlerinden biridir. Bu yazımızda k-fold cross validation (k sayısı kadar çapraz doğrulama) yöntemini anlatmaya çalışacağım. Elimizde bin kayıtlık bir veri seti olsun. Biz bu veri setinin bir kısmı ile modelimizi eğitmek, bir kısmı ile eğittiğimiz modelimizin başarısını değerlendirmek istiyoruz. Basit yaklaşım; […]

Password Requirements:

  • At least 8 characters
  • At least 1 lowercase letter
  • At least 1 uppercase letter
  • At least 1 numerical number
  • At least 1 special character