Spark SQL 版本的 EXEC()
Posted
技术标签:
【中文标题】Spark SQL 版本的 EXEC()【英文标题】:Spark SQL version of EXEC() 【发布时间】:2015-12-11 10:04:22 【问题描述】:有人知道在 Spark SQL 中执行如下字符串变量的方法吗?
INSERT TableA (Col1,Col2) SELECT Col1,Col2 FROM TableB
我明白我显然可以直接写这个语句。但是,我使用的是工作流引擎,其中我的 Insert/Select 语句位于 String 变量中。如果没有,我想我应该使用 spark_submit。我一直在寻找其他选择。
【问题讨论】:
【参考方案1】:我不确定您所处的环境。如果这是 Spark 应用程序或 Spark shell,您始终以字符串形式提供查询:
val query = "INSERT TableA (Col1,Col2) SELECT Col1,Col2 FROM TableB"
sqlContext.sql(query)
(见http://spark.apache.org/docs/latest/sql-programming-guide.html#running-sql-queries-programmatically。)
【讨论】:
【参考方案2】:Spark Sql 也支持 Hive 查询
insert overwrite table usautomobiles select * from sourcedata
通过这个link
【讨论】:
这如何解决执行存储在变量中的查询的问题?以上是关于Spark SQL 版本的 EXEC()的主要内容,如果未能解决你的问题,请参考以下文章