Anasayfa / Büyük Veri / Apache Spark ile Parquet Formatında Veri Okuma (Python)

Apache Spark ile Parquet Formatında Veri Okuma (Python)

Merhaba bu yazımızda parquet uzantılı bir dosyanın pyspark ile nasıl okunacağını göreceğiz. Bu yazıyı yazmamızın sebebi pyspark ile parquet dosyası okumanın, standart dataframe API’si ile csv gibi yaygın formatları okumaktan farklılık göstermesidir.

Bu çalışma esnasında kullandığım ortamlar:

İşletim sistemi: Windows 10 64 bit Pro

IDE: Jupyter Notebook (Anaconda ile kuruldu)

Spark 2.3.1

Dil: Python 3

Kodlara buradan erişebilirsiniz.

Findspark ile Spark’ı bulalım:

import findspark
findspark.init()

SparkSession ve SqlContext’i içeri aktaralım:

from pyspark.sql import SparkSession, SQLContext

SparkSession oluşturma:

spark = SparkSession.builder \
.appName("readFromParquet") \
.master("local[6]") \
.config("spark.driver.memory","2g") \
.config("spark.executor.memory","4g") \
.getOrCreate()

SparkContext ve SqlContext oluşturma:

# SparkContext
sc = spark.sparkContext

# sqlContect
sqlContext = SQLContext(sc)

Parquet uzantılı dosyayı okuyalım:

df_parquet = sqlContext.read.load("D:\Datasets\OnlineRetailParquet")

Yukarıda sadece dizin verdik, .parquet uzantılı dosya dizin içindedir.

Okuduğumuzu görelim:

df_parquet.show()

Çıktı:

+---------+---------+--------------------+--------+---------------+---------+----------+--------------+
|InvoiceNo|StockCode|         Description|Quantity|    InvoiceDate|UnitPrice|CustomerID|       Country|
+---------+---------+--------------------+--------+---------------+---------+----------+--------------+
|   536365|   85123A|WHITE HANGING HEA...|       6|1.12.2010 08:26|     2,55|     17850|United Kingdom|
|   536365|    71053| WHITE METAL LANTERN|       6|1.12.2010 08:26|     3,39|     17850|United Kingdom|
|   536365|   84406B|CREAM CUPID HEART...|       8|1.12.2010 08:26|     2,75|     17850|United Kingdom|
|   536365|   84029G|KNITTED UNION FLA...|       6|1.12.2010 08:26|     3,39|     17850|United Kingdom|
|   536365|   84029E|RED WOOLLY HOTTIE...|       6|1.12.2010 08:26|     3,39|     17850|United Kingdom|
|   536365|    22752|SET 7 BABUSHKA NE...|       2|1.12.2010 08:26|     7,65|     17850|United Kingdom|
|   536365|    21730|GLASS STAR FROSTE...|       6|1.12.2010 08:26|     4,25|     17850|United Kingdom|
|   536366|    22633|HAND WARMER UNION...|       6|1.12.2010 08:28|     1,85|     17850|United Kingdom|
|   536366|    22632|HAND WARMER RED P...|       6|1.12.2010 08:28|     1,85|     17850|United Kingdom|
|   536367|    84879|ASSORTED COLOUR B...|      32|1.12.2010 08:34|     1,69|     13047|United Kingdom|
|   536367|    22745|POPPY'S PLAYHOUSE...|       6|1.12.2010 08:34|      2,1|     13047|United Kingdom|
|   536367|    22748|POPPY'S PLAYHOUSE...|       6|1.12.2010 08:34|      2,1|     13047|United Kingdom|
|   536367|    22749|FELTCRAFT PRINCES...|       8|1.12.2010 08:34|     3,75|     13047|United Kingdom|
|   536367|    22310|IVORY KNITTED MUG...|       6|1.12.2010 08:34|     1,65|     13047|United Kingdom|
|   536367|    84969|BOX OF 6 ASSORTED...|       6|1.12.2010 08:34|     4,25|     13047|United Kingdom|
|   536367|    22623|BOX OF VINTAGE JI...|       3|1.12.2010 08:34|     4,95|     13047|United Kingdom|
|   536367|    22622|BOX OF VINTAGE AL...|       2|1.12.2010 08:34|     9,95|     13047|United Kingdom|
|   536367|    21754|HOME BUILDING BLO...|       3|1.12.2010 08:34|     5,95|     13047|United Kingdom|
|   536367|    21755|LOVE BUILDING BLO...|       3|1.12.2010 08:34|     5,95|     13047|United Kingdom|
|   536367|    21777|RECIPE BOX WITH M...|       4|1.12.2010 08:34|     7,95|     13047|United Kingdom|
+---------+---------+--------------------+--------+---------------+---------+----------+--------------+
only showing top 20 rows

Evet işte bu kadar. Pyspark ile parquet dosyası okuduk ve gördük. Başka bir yazıda görüşmek dileğiyle hoşçakalın…

Hakkında Erkan ŞİRİN

2014'ten beri hem akademik alanda hem de sektörde pratik anlamda büyük veri ve veri bilimi ile ilgili çalışmalar yürütmektedir. Halihazırda İmpektra Bilişim A.Ş.'de büyük veri yöneticisi olarak çalışmakta olup aynı zamanda Gazi Üniversitesi Yönetim Bilişim Sistemleri doktora öğrencisidir. Büyük veri ve veri bilimi ile ilgili birçok kurum ve şirkete eğitimler vermekte ve projeler icra etmektedir. Çalışma alanları: büyük veri platformlarının kurulum ve yönetimi, büyük veri üzerinde makine öğrenmesi, olağan dışılık tespiti, sahtecilik tespiti, veri hazırlama sürecidir.

GÖZ ATMAK İSTEYEBİLİRSİNİZ

sahte-haberlerin-belirlenmesi

Sahte Haberlerin Belirlenmesi

“A lie gets halfway around the world before the truth has a chance to get …

Bir cevap yazın

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