我想问Spark SQL是否支持类似"插入覆盖目录"的HQL。或者有没有其他方法可以将结果集(从spark-sqljdbc服务器)直接保存到HDFS?
这个问题有一个jira尚未解决,它的jira链接是https://issues.apache.org/jira/browse/SPARK-4131。但你可以这样做:
JavaSchemaRDD employeeSchemaRDD = context.sql("SELECT * FROM employee");
JavaRDD<String> strRDD=employeeSchemaRDD.map(new Function<Row, String>() {
public String call(Row row) throws Exception {
// TODO Auto-generated method stub
return row.get(1).toString();
}
});
strRDD.saveAsTextFile("outputdir");
将outputdir替换为要写入输出的HDFSurl。希望这能回答你的问题。