您的位置:首页 > 其它

spark rdd转dataframe的两种方式

2017-11-01 11:50 316 查看
方式1:

使用隐式转换

 case class Dika(skuId: Int,skudesc:String, listId: Int, listDesc:String)

 import hiveContext.implicits._

    val p = sc.parallelize(Seq(new Dika(1,"miao",1,"shu"))).toDF()

    p.show(1)

    p.printSchema()

方式2:

使用StructType

    val schema = StructType(

      Seq(

        StructField("skuId",IntegerType,true),

        StructField("skudesc",StringType,true),

        StructField("listId",IntegerType,true),

        StructField("listDesc",StringType,true)

      )

    )

    val p2: RDD[Row] = sc.parallelize(Seq(Row(1,"222",3,"666")))

    val df2: SchemaRDD = hiveContext.createDataFrame(p2,schema)

    df2.printSchema()

    df2.show(1)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: