PySpark Makine Öğrenmesi

PySpark Makine Öğrenmesi

Merhaba, bu yazı serisinde PySpark kullanarak ML uygulamaları gerçekleştireceğiz. PySpark’ı python ile spark işbirliği olarak düşünebiliriz.

Python dili ile Spark üzerinde geliştirme yapabilme imkanı tanıyor.

Spark kurulumuna aşağıdaki yazıdan ulaşabilirsiniz,

 

Ben örneklerimde PyCharm IDE’sini kullanıyorum, siz istediğiniz IDE ile çalışma yapabilirsiniz.

Spark üzerinde 4 farklı programlama dili ile çalışma yapabilirsiniz. Bunlar;

  • Java
  • Scala
  • Python
  • R

PySpark’ın kullanabileceğimiz alt modülleri de vardır.  Bunlar,

pyspark.sql (sql işlemleri için)

pyspark.streaming (real-time projeler için)

pyspark.mlib (Makine öğrenmesi modeli geliştirmek için)

 

Not

Spark kurlumunu kendi (local) makinamıza kurabileceğimiz gibi uzaktaki bir sunucuya kurup kendi bilgisayarımızdan da bağlanabiliriz.

Büyük hacimli işlemler için daha donanımlı bir server’a spark cluster’ı kurulup local makinalardan uzaktaki spark makinasına bağlanılarak işlemler gerçekleştirilir.

 

Şimdi küçük bir örnek yapalım.  Bir spark’a bağlanalım ve spark versiyonunu ekrana yazdıralım.

from pyspark.sql import SparkSession

# Create SparkSession object
spark = SparkSession.builder \
                    .master('local[*]') \
                    .appName('test') \
                    .getOrCreate()

# What version of Spark?
# (Might be different to what you saw in the presentation!)
print(spark.version)


Resimde görüldüğü gibi spark başarılı bir şekilde çalışıyor.

Şimdi bir örnek daha yapalım, csv dosyamızdaki bir veriyi spark ile yükleyelim.

Veri setini buradan indirebilirsiniz.

from pyspark.sql import SparkSession

# Create SparkSession object
spark = SparkSession.builder \
                    .master('local[*]') \
                    .appName('test') \
                    .getOrCreate()
# Read data from CSV file,
flights = spark.read.csv('flights-larger.csv',
                         sep=',',
                         header=True,
                         inferSchema=True,
                         nullValue='NA')
# Get number of records
print("The data contain %d records." % flights.count())
# View the first five records
flights.show(5)
# Check column data types
print(flights.dtypes)
Bu örnekte csv dosyasını okuyup içeriğini ekrana yazdırdık, aynı zamanda kolonların type’larını da ekrana bastırdık.
Bir sonraki yazıda Python ile spark işlemlerine devam edeceğiz, görüşmek üzere.

About Deniz Parlak

Hi, i’m Security Data Scientist & Data Engineer at My Security Analytics. I have experienced Advance Python, Machine Learning and Big Data tools. Also i worked Oracle Database Administration, Migration and upgrade projects. For your questions [email protected]

Leave a Reply

Your email address will not be published. Required fields are marked *