首页 文章

配置文件以在pyspark中定义JSON Schema Struture

提问于
浏览
4

我创建了一个pyspark应用程序,它通过定义的Schema读取数据帧中的json文件 . 下面的代码示例

schema = StructType([
    StructField("domain", StringType(), True),
     StructField("timestamp", LongType(), True),                            
])
df= sqlContext.read.json(file, schema)

我需要一种方法来找到如何在一种配置或ini文件等中定义此模式 . 并在主要的pyspark应用程序中阅读 .

如果将来有任何需要而不更改主pyspark代码,这将帮助我修改更改json的模式 .

感谢任何帮助,谢谢 .

1 回答

  • 5

    StructType 提供 jsonjsonValue 方法,可分别用于获取 jsondict 表示, fromJson 可用于将Python字典转换为 StructType .

    schema = StructType([
        StructField("domain", StringType(), True),
        StructField("timestamp", LongType(), True),                            
    ])
    
    StructType.fromJson(schema.jsonValue())
    

    除此之外,您唯一需要的是内置的json模块来解析 dict 的输入,该输入可以被 StructType 使用 .

相关问题