Windows 10 için Apache Spark Kurulumu

Büyük veri dünyasında Hadoop’tan sonra adını en çok duyuran proje diyebiliriz. Hadoop ise bildiğimiz gibi en yaygın büyük veri ekosistemini oluşturan açık kaynaklı bir proje. Ancak Hadoop’un MapR, Hortonworks ve Cloudera gibi ticari sürümleri de mevcut. Örneğin ben dizüstü bilgisayarımda 4 sanal sunucudan oluşturduğum Cloudera’nın ücretsiz sürümü olan Hadoop cluster kullanıyorum. Spark Hadoop’a bir alternatif değil. İkisi birbirini dışlamıyor (not mutually exclusive). Sadece Hadoop’un bazı mahsurlarını düzelterek 100 kata kadar varan bir hız artışını sağlıyor. Bunun da temelinde bellek kullanması yatıyor. Bu yazımızın amacı Spark’ı ayrıntılı olarak anlatmak değil elbette. Bu nedenle bu konuyu başka kaynaklara havale ederek asıl yazımızın konusuna geçiyorum. Yazımızın amacı Windows  ortamında Spark’ın kurulumu anlatmak. Böylelikle veri bilimlerine ve Spark’a yeni başlayanlar basit bir geliştirme ortamı kurabilirler. Spark’ın dört adet çalışma modu var:

  • Local
  • Standalone
  • Hadoop YARN
  • Apache Mesos

Bizim kuracağımız local mod olacak.

  1. Öncelikle Spark’ı indiriyoruz. Bunun için Google’da Spark Download diye aratmanız yeterli.

2. İndirdiğimiz sıkıştırılmış dosyayı açıyoruz. C diskinde spark isimli bir klasör oluşturuyoruz ve indirip açtığımız spark-2.1.0-bin-hadoop2.6 klasörü içeriğini C:\spark dizini içine kopyalıyoruz.

Sonuç yukarıdaki resimde görünmektedir.

3. conf dosyası içinde log4j.properties.template dosyasını text editör (notepad, notepad++ vb.) ile açıyoruz. log4j.rootCategory=INFO‘yu log4j.rootCategory=WARN yapıyoruz. Dosyayı kaydedip çıkıyoruz. Çıktıktan sonra dosyanın .template uzantısını kaldırarak log4j.properties şekline getiriyoruz.

4. Windows’un ortam değişkenlerine gelip (Denetim Masası ->Sistem ve Güvenlik -> Sistem -> Gelişmiş Sistem Ayarları -> Ortam Değişkenleri) yeni değişken oluşturuyoruz. Değişken adımız: SPARK_HOME, değeri:C:\spark olarak tanımlıyoruz.

5. Aynı yerde Path’i seçip düzenle diyoruz ve Path’e %SPARK_HOME%\bin ekliyoruz.

6. https://github.com/steveloughran/winutils/blob/master/hadoop-2.6.0/bin/winutils.exe adresinden winutils.exe indiriyoruz. C diskinde winutils klasörü onun içinde de bin klasörü oluşturup winutils.exe’yi bin klasörü içine kopyalıyoruz.

 7. 4’üncü adımı HADOOP_HOME, C:\winutils için de yapıyoruz.

8. Komut satırını (cmd) açıp spark-shell komutunu çalıştırıyoruz.

9. Eğer spark’ı python dilinde kullanmak istersek :q deyip scala’dan çıkıyoruz ve pyspark komutunu çalıştırarak Spark’ı python dilini kullanacak şekilde başlatıyoruz.

Başka bir yazıda görüşmek dileğiyle, veriyle kalın…

Windows 10 için Apache Spark Kurulumu” için 10 yorum

  • 21 Şubat 2017 tarihinde, saat 17:43
    Permalink

    Hocam Ortam Değişkenlerine kaydediyoruz demişssiniz ama Sistem Değişkenleri arasına eklenmesi gerekiyor bu path lerin. Sanırım bu kısımda bir yanlışlık olmuş. İyi çalışmalar, emeğinize sağlık.

    Yanıtla
    • 21 Şubat 2017 tarihinde, saat 18:40
      Permalink

      Merhaba Cihan Bey iki şekilde de olabilir. Düzeltmeniz için teşekkür ederim.

      Yanıtla
  • 12 Nisan 2017 tarihinde, saat 15:28
    Permalink

    Hocam merhaba. Spark üzerine proje çıkarmak için bildiğiniz bir eğitim vs kaynak var mı?
    Teşekkürler

    Yanıtla
    • 24 Nisan 2017 tarihinde, saat 20:49
      Permalink

      Merhaba Melih Bey. Maalesef bu konuda Türkçe olarak hiç bir kaynak mevcut değil. İngilizceniz var ise YouTube da bazı videolar bulabilirsiniz. Kitap olarak da Learning Spark O’Reilly kitabını tavsiye edebilirim. İyi çalışmalar…

      Yanıtla
  • 10 Ekim 2017 tarihinde, saat 14:09
    Permalink

    Hocam Python 3.6 da hata alıyorum Spark 2.2.0 sürümü için.Python 2.7 mi kullanmalıyım ?

    Yanıtla
    • 10 Ekim 2017 tarihinde, saat 19:55
      Permalink

      Merhaba Oğuz Bey. Ben yazıyı hazırladığımda Windows bilgisayarımda Spark 2.1.0 sürümü Python 3.4.3 ile çalışıyordu. Şimdi denedim hala çalışıyor. Spark 2.2.0 sürümünü kullanmak için Python 2.7’ye ihtiyacınız olduğunu düşünmüyorum. Aldığınız hata ile ilgili Google’dan arama yaparsanız benzer hatayı alanların çözümlerine ulaşabileceğinizi umuyorum. Ancak yine de sonuca ulaşamaz iseniz, hata bilgisini paylaşın, yardım etmeye çalışırım. Kolay gelsin…

      Yanıtla
  • 16 Ekim 2017 tarihinde, saat 15:30
    Permalink

    scalaya giriş yapabiliyorum ancak python’da error veriyor.
    “ipython” is not recognized as an internal or external command,operable program or batch file

    Yanıtla
  • 16 Ekim 2017 tarihinde, saat 15:59
    Permalink

    python error veriyo derken “pyspark” error veriyor. Python komutu calısıyor.
    yardımcı olursanız sevinirim
    saygılar

    Yanıtla
    • 17 Ekim 2017 tarihinde, saat 06:52
      Permalink

      Merhaba. Komut satırına pyspark yazdığınızda pyspark shell açılması gerekir. Eğer Notebook kullanıyorsanız komut satırından gerekli ortam değişkenlerini girdikten sonra pyspark komutu ile shell’i başlatmalısınız. Kolay gelsin…

      Yanıtla
  • 18 Ekim 2017 tarihinde, saat 12:07
    Permalink

    pyspark komutundan “ipython is not recognized as an internal or external command,operable program or batch file” hatasını alıyorum.
    Notebook kullanıp kullanmadığım hakkında bi fikrim yok nasıl anlayabilirim ?

    Yanıtla

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir