1
我是新来的火花,我试图找出是否有一种方法将复杂的对象(嵌套)或复杂jsons保存为实木复合地板在星火。我知道风筝SDK,但我知道它使用Map/Reduce。如何复杂JSON或复杂的对象保存为实木复合地板在星火?
我环顾四周,但我无法找到一个解决方案。
感谢您的帮助。
我是新来的火花,我试图找出是否有一种方法将复杂的对象(嵌套)或复杂jsons保存为实木复合地板在星火。我知道风筝SDK,但我知道它使用Map/Reduce。如何复杂JSON或复杂的对象保存为实木复合地板在星火?
我环顾四周,但我无法找到一个解决方案。
感谢您的帮助。
case class Address(city:String, block:String);
case class Person(name:String,age:String, address:Address);
val people = sc.parallelize(List(Person("a", "b", Address("a", "b")), Person("c", "d", Address("c", "d"))));
val df = sqlContext.createDataFrame(people);
df.write.mode("overwrite").parquet("/tmp/people.parquet")
这个答案对我有所帮助。 Spark SQL: Nested classes to parquet error
但很难找到,所以我在这里回答了我自己的问题。希望这可以帮助别人寻找一个例子。
是的,它可以保存嵌套的对象与火花镶木地板,你有数据的例子和预期的结果 – Mehrez
@Mehrez我不知道你期望的结果是什么意思?其结果将是一个理解嵌套结构由地板规格(定义和重复级) – IceMan
您的问题它不是干净支持的平面文件,你必须在你的代码的异常,或者你找一个代码示例嵌套对象保存为镶木地板? – Mehrez