为什么insertInto失败并且#34;断言失败:没有针对InsertIntoTable的计划"?

时间:2014-08-26 07:33:23

标签: apache-spark

我正在使用SparkSql进行查询。我正在尝试这样的事情:

val sqc = new SQLContext(sc);
import sqc.createSchemaRDD

var p1 = Person("Hari",22)
val rdd1 = sc.parallelize(Array(p1))    
rdd1.registerAsTable("data")

var p2 = Person("sagar", 22)
var rdd2 = sc.parallelize(Array(p2))
rdd2.insertInto("data")

但收到错误

  

“java.lang.AssertionError:断言失败:没有计划   InsertIntoTable Map(),false“

似乎我正在使用insertInto错误的方式?

1 个答案:

答案 0 :(得分:2)

我还遇到了正常SchemaRDD的错误。当我使用由Parquet文件支持的SchemaRDD尝试insertInto时,它成功了。它看起来只有insertInto方法支持Parquet支持的表。

1.1.0 API documentation on SQLContext表示Parquet File中的表可用于insertInto操作。 > "此注册表可用作将来insertInto操作的目标。"