Apache spark 从json模式表示创建spark数据帧模式
有没有一种方法可以将数据帧模式序列化为json并在以后对其进行反序列化 用例很简单: 我有一个json配置文件,其中包含我需要读取的数据帧的模式。Apache spark 从json模式表示创建spark数据帧模式,apache-spark,apache-spark-sql,Apache Spark,Apache Spark Sql,有没有一种方法可以将数据帧模式序列化为json并在以后对其进行反序列化 用例很简单: 我有一个json配置文件,其中包含我需要读取的数据帧的模式。 我希望能够从现有模式(在数据帧中)创建默认配置我希望能够通过从json字符串中读取来生成稍后使用的相关模式。这有两个步骤:从现有数据帧创建json和从先前保存的json字符串创建模式 从现有数据帧创建字符串 val schema=df.schema val jsonString=schema.json 从json创建架构 import org.ap
我希望能够从现有模式(在数据帧中)创建默认配置我希望能够通过从json字符串中读取来生成稍后使用的相关模式。这有两个步骤:从现有数据帧创建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]
我将发布一个pyspark版本,以回答阿萨夫的一个问题:
从pyspark.sql.types导入StructType
#将模式从原始数据帧保存到json:
schema_json=df.schema.json()
#从json还原架构:
导入json
new_schema=StructType.fromJson(json.load(schema_json))
谢谢!这将我的数据加载速度从几分钟提高到了几秒钟:D