데브코스 TIL/빅데이터, 스트리밍 데이터 처리

Spark 파일 포맷

예니ㅣ 2024. 1. 18. 13:46

강의

Spark 파일 포맷

  • Unstructured : Text
    • 눈으로 확인 가능
  • Semi-structured : JSON, WML, CSV
    • 눈으로 확인 가능
  • Structured : PARQUET, AVRO, ORC, SequenceFile
    • 압축된 정보
    • 스키마 제공

 

# 파일 다운로드
!wget https://pyspark-test-sj.s3.us-west-2.amazonaws.com/appl_stock.csv
from pyspark.sql import *
from pyspark.sql.functions import *

if __name__ == "__main__":
    spark = SparkSession \
        .builder \
        .appName("Spark Writing Demo") \
        .master("local[3]") \
        .config("spark.jars.packages", "org.apache.spark:spark-avro_2.12:3.3.1") \
        .getOrCreate()
        
df = spark.read \
    .format("csv") \
    .load("appl_stock.csv")
    
df.write \
    .format("parquet") \
    .mode("overwrite") \
    .option("path", "dataOutput/parquet/") \
    .save()

 


Parquet

"Parquet"는 Spark의 기본 파일 포맷 입니다.

하나의 데이터 블록 하나의 Row Group으로 구성합니다.

from pyspark.sql import *
from pyspark.sql.functions import *

if __name__ == "__main__":
    spark = SparkSession \
        .builder \
        .appName("Spark Schema Evolution Demo") \
        .master("local[3]") \
        .getOrCreate()
        
df = spark.read. \
    parquet("schema.parquet")
    
df.printSchema()
df.show()

 

'데브코스 TIL > 빅데이터, 스트리밍 데이터 처리' 카테고리의 다른 글

Spark 클라우드  (0) 2024.01.22
Spark 내부동작  (0) 2024.01.18
Spark Unit Test  (0) 2024.01.17
Hive 메타 스토어  (0) 2024.01.17
Spark SQL 실습 3  (0) 2024.01.17