繁体   English   中英

如何使用Spark访问Hive数据

[英]How to access hive data using spark

我将表格存储为文本文件,例如,雇员在蜂巢中,我想使用spark访问它。

  1. 首先我已经使用设置了SQL上下文对象

     val sqlContext = new org.apache.spark.sql.hive.HiveContext(sc) 
  2. 然后我创建了表格

     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'") 
  3. 此外,我试图通过使用加载文本文件的内容

     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的当前目录中,该怎么办?

您在hadoop上运行蜂巢吗? 尝试使用绝对路径...如果不起作用,请尝试将文件加载到hdfs,然后提供文件的绝对路径(hdfs位置)。

尝试执行以下步骤

  • 以本地模式启动spark-shell,例如:spark-shell --master local [*]
  • 提供文件加载文件的完整路径,例如:file:///home/username/employee.txt

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM