-2
现在我正在使用sqoop将我的数据写入rdbms。所以它将数据存储到hdfs然后存储到rdbms。有什么方法可以将rdd直接存储到Hive?如何使用Spark Scala保存并加载rdd到远程配置单元?
现在我正在使用sqoop将我的数据写入rdbms。所以它将数据存储到hdfs然后存储到rdbms。有什么方法可以将rdd直接存储到Hive?如何使用Spark Scala保存并加载rdd到远程配置单元?
是的,你可以写RDD
蜂巢,写RDD
蜂巢的方法之一是RDD转化为Df的,然后saveTableAs(),如下
import org.apache.spark.sql.hive.HiveContext
val hiveContext = new HiveContext(sc)
import hiveContext.implicits._
//read data perform some transformation
val myDF = myRdd.toDF("column names")
然后你就可以创建一个表和转储数据
myDF.write.saveAsTable("tableName")
//with save mode
myDF.write().mode(SaveMode.Overwrite).saveAsTable("tableName")
您可以添加保存模式如上 SaveModes是追加,忽略,覆盖,ErrorIfExists
谢谢Shankar。如果我想将rdd存储在远程Hive中,我如何连接到该配置单元并使用特定的数据库 – Aswathy
我希望这有助于http://stackoverflow.com/questions/39997224/how-to-连接到远程配置单元 - 服务器 - 从火花。如果这有帮助,请接受答案。 –
如何在scala中使用类似DBOutputFormat的东西 – Aswathy