반응형

스키마 정의 장점 및 방법

스키마 정의 장점

  1. 스파크가 데이터 타입을 추측해야 하는 책임을 덜어줍니다.
  2. 스파크가 스키마를 확정하기 위해 파일의 많은 부분을 읽어 들이려고 별도의 잡을 만드는 것을 방지합니다.
  3. 데이터가 스키마와 맞지 않는 경우, 조기에 문제를 발견할 수 있습니다.

 

스키마 정의 방법

스키마를 정의하는 2 가지 방법이 있습니다.

1. 프로그래밍 스타일로 정의합니다.

import org.apache.spark.sql.types._ 
val schema = StructType(Array(StructField("author", StringType, false), 
	StructField("title", StringType, false), 
	StructField("pages", StringType, false), 
))

 

2. DDL(data definition language) 을 사용합니다.

val schema = "author STRING, title STRING, pages INT"

 

 

사용 방법

val schema = ~~ 
val data = ~~ 
if __main__ == "__main__": 
	spark = (SparkSession.builder.appName("appName").getOrCreate()) 
    blogs_df = spark.createDataFrame(data, schema) 
    blogs_df.show() 
    print(blogs_df.printSchema())

 

반응형

+ Recent posts