Spark from_json 함수



from_json() 은 spark sql 에서 지원하는 함수로 json을 받아왔을 때 각 속성들을 column화 시켜주는 함수이다. 아래는 sparkbyexamples 에서의 설명이다.

In Spark/PySpark from_json() SQL function is used to convert JSON string from DataFrame column into struct column, Map type, and multiple columns.



예제


# Schema 정의
schema = StructType([
    StructField("id1", StringType()),
    StructField("id2", StringType()),
    StructField("value1", StringType()),
    StructField("value2", StringType())
])

# json 데이터 파싱
# kafka 에서 오는 데이터는 value
df.selectExpr("CAST(value AS STRING)") \
    .select(from_json("value", schema).alias("data")) \
    .select("data.*") \
    .show()