Spark官网提供了两种方法来实现从RDD转换得到DataFrame,第一种方法是,利用反射来推断包含特定类型对象的RDD的schema,适用对已知数据结构的RDD转换;第二种方法是,使用编程接口,构造一个schema并将其应用在已知的RDD上。
在利用反射机制推断RDD模式时,需要首先定义一个case class,因为,只有caseclass才能被Spark隐式地转换为DataFrame。(有22个字段的限制)
使用编程方式定义RDD模式
当无法提前定义case class时,就需要采用编程方式定义RDD模式。