我想使用spark访问配置单元数据:
%spark
val sqlContext = new org.apache.spark.sql.hive.HiveContext(sc)
sqlContext.sql("CREATE TABLE IF NOT EXISTS src (key INT, value STRING)")
sqlContext.sql(LOAD DATA LOCAL INPATH '//filepath' INTO TABLE src)
sqlContext.sql("FROM src SELECT key, value").collect().foreach(println)
然而我收到错误:
:4:错误:')'预期,但'('发现。 sqlContext.sql(" FROM src SELECT键,值")。collect()。foreach(println)
如何解决此错误?
答案 0 :(得分:0)
您应该使用标准SQL语法:
sqlContext.sql("SELECT key, value FROM src").show()
更重要的是,每个sql命令都应该将String作为参数,第二个命令没有""
sqlContext.sql("LOAD DATA LOCAL INPATH '//filepath' INTO TABLE src")
答案 1 :(得分:0)
import org.apache.spark.sql.hive.HiveContext
val sqlContext = new HiveContext(sc) # creating hive context
sqlContext.sql("CREATE TABLE IF NOT EXISTS src (key INT, value STRING)")
sqlContext.sql("LOAD DATA LOCAL INPATH '//filepath' INTO TABLE src")
val srcRDD = sqlContext.sql("SELECT key, value FROM src")
srcRDD.collect().foreach(println) # printing the data