2016-12-04 2 views
1

データフレームスキーマをjsonにシリアル化して後でそれをデシリアライズする方法はありますか?jsonスキーマ表現からsparkデータフレームスキーマを作成する

ユースケースは簡単です: 私は読んでおく必要があるデータフレームのスキーマを含むjson構成ファイルを持っています。 (データフレーム内の)既存のスキーマからデフォルトの設定を作成できるようにするため、後でjson文字列から読み込むことによって関連するスキーマを生成できるようにしたいと考えています。

答えて

7

これには2つのステップがあります。既存のデータフレームからjsonを作成し、以前に保存したjson文字列からスキーマを作成する。既存のデータフレーム

val schema = df.schema 
val jsonString = schema.json 

から文字列を作成

JSON

import org.apache.spark.sql.types.{DataType, StructType} 
val newSchema = DataType.fromJson(jsonString).asInstanceOf[StructType] 
からスキーマを作成します
関連する問題