我将表存储为文本文件,例如hive中的employee,我想使用spark访问它。
首先我使用
设置了sql上下文对象val sqlContext = new org.apache.spark.sql.hive.HiveContext(sc)
然后我创建了表
scala>sqlContext.sql("CREATE TABLE IF NOT EXISTS employee(
id INT, name STRING, age INT) ROW FORMAT DELIMITED FIELDS TERMINATED BY
',' LINES TERMINATED BY '\n'")
此外,我试图使用
加载文本文件的内容scala> sqlContext.sql("LOAD DATA LOCAL INPATH 'employee.txt' INTO TABLE employee")
我收到错误
SET hive.support.sql11.reserved.keywords=false
FAILED: SemanticException Line 1:23 Invalid path ''employee.txt'': No files
matching path file:/home/username/employee.txt
如果我必须将文本文件放在运行spark-shell的当前目录中,该怎么做?
答案 0 :(得分:0)
你在hadoop上运行蜂巢吗? 尝试使用绝对路径...如果这不起作用,尝试将文件加载到hdfs,然后给出文件的绝对路径(hdfs位置)。
答案 1 :(得分:0)
尝试执行以下步骤