如何在Spark上运行rdd.map函数后得到rdd(如何使用rdd.insertInto)

时间:2014-08-07 07:57:20

标签: hadoop mapreduce hive apache-spark

我正在使用spark来处理数据。但我不知道如何将新数据保存到Hive

我从Hive加载rdd然后运行map函数来清理数据。

result = myRdd.map(lambda x: cleanup(x))

我想将结果保存到Hive中的新表中。所以我用

result.insertInto("newTable", True)

我收到错误:'PipelinedRDD' object has no attribute 'insertInto'

如何将结果转换为rdd以使用insertInto函数?我还想知道还有其他方法可以完成这项任务吗?

1 个答案:

答案 0 :(得分:0)

我找到了答案

from pyspark.sql import SQLContext
sqlCtx = SQLContext(sc)
srdd = sqlCtx.inferSchema(result)

现在我可以使用

srdd.insertInto("newTable", True)