Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在spark scala应用程序中将数据保存到其他主机_Scala_Apache Spark_Spark Dataframe_Kafka Consumer Api - Fatal编程技术网

在spark scala应用程序中将数据保存到其他主机

在spark scala应用程序中将数据保存到其他主机,scala,apache-spark,spark-dataframe,kafka-consumer-api,Scala,Apache Spark,Spark Dataframe,Kafka Consumer Api,我正在尝试将从kafka主题数据创建的数据帧持久化到其他主机。 我使用的代码是: val topicMaps = Map("topic" -> 2) val conf = new Configuration() conf.set("fs.defaultFS","maprfs://host-2:7222") val fs =FileSystem.get(conf) val messages = KafkaUtils.createStream[String, String,StringD

我正在尝试将从kafka主题数据创建的数据帧持久化到其他主机。 我使用的代码是:

 val topicMaps = Map("topic" -> 2)
val conf = new Configuration()
conf.set("fs.defaultFS","maprfs://host-2:7222")
val fs =FileSystem.get(conf)

val messages  = KafkaUtils.createStream[String, String,StringDecoder,StringDecoder](ssc, kafkaConf, topicMaps, StorageLevel.MEMORY_ONLY_SER)

messages.foreachRDD(rdd=>
{
val sqlContext = new org.apache.spark.sql.SQLContext(sc)
import sqlContext.implicits._

val dataframe =sqlContext.read.json(rdd.map(_._2))
val myDF =dataframe.toDF()
import org.apache.spark.sql.SaveMode


myDF.write.format("parquet").mode(org.apache.spark.sql.SaveMode.Append).save("maprfs://host-2:7222/hdfs/path")

})
上面的代码已经在主机目录中创建了一个路径,但是没有写入任何数据


非常感谢您的帮助。

您是否缺少了
ssc.start()
,或者只是这里没有显示?我特意从这个代码片段中删除了它