Spark-submit Sql Context Create Statement不起作用

时间:2015-08-17 18:00:58

标签: scala apache-spark spark-streaming apache-spark-sql

我的以下代码不适用于Spark-submit。

sqlContext.sql(s"""
create external table if not exists landing (
date string,
referrer string)
partitioned by (partnerid string,dt string)
row format delimited fields terminated by '\t' lines terminated by '\n'
STORED AS TEXTFILE LOCATION 's3n://....'
      """)

它给出错误: 线程“main”中的异常java.lang.RuntimeException:[1.2]失败:``with''预期但找到标识符

此代码适用于Spark-shell,但不适用于Spark-submit。可能是什么原因?

1 个答案:

答案 0 :(得分:3)

默认情况下,spark-shell中的“sqlContext”是'HiveContext'。也许您需要在脚本中新建一个HiveContext而不是sqlContext。

你可能会这样新:

import SparkContext._
import org.apache.spark.sql.hive._ 
val sc = new SparkContext()
val sqlContext = new HiveContext(sc)