【发布时间】:2017-07-03 16:51:05
【问题描述】:
我正在开发一个将数据帧插入 Hive 表的 spark 程序,如下所示。
import org.apache.spark.sql.SaveMode
import org.apache.spark.sql._
val hiveCont = val hiveCont = new org.apache.spark.sql.hive.HiveContext(sc)
val partfile = sc.textFile("partfile")
val partdata = partfile.map(p => p.split(","))
case class partc(id:Int, name:String, salary:Int, dept:String, location:String)
val partRDD = partdata.map(p => partc(p(0).toInt, p(1), p(2).toInt, p(3), p(4)))
val partDF = partRDD.toDF()
partDF.registerTempTable("party")
hiveCont.sql("insert into parttab select id, name, salary, dept from party")
我知道 Spark V2 已经出来了,我们可以在其中使用 SparkSession 对象。 我们可以使用 SparkSession 对象直接将数据帧插入 Hive 表中,还是我们也必须使用版本 2 中的 HiveContext ?谁能告诉我与 HiveContext 版本的主要区别是什么?
【问题讨论】:
标签: apache-spark hive