【发布时间】:2017-06-30 10:20:46
【问题描述】:
我正在尝试使用 Spark 将数据集加载到 Hive 表中。
但是当我尝试将文件从 HDFS 目录加载到 Spark 时,出现异常:
org.apache.spark.sql.AnalysisException: Path does not exist: file:/home/cloudera/partfile;
这些是加载文件之前的步骤。
val wareHouseLocation = "file:${system:user.dir}/spark-warehouse"
val SparkSession = SparkSession.builder.master("local[2]") \
.appName("SparkHive") \
.enableHiveSupport() \
.config("hive.exec.dynamic.partition", "true") \
.config("hive.exec.dynamic.partition.mode","nonstrict") \
.config("hive.metastore.warehouse.dir","/user/hive/warehouse") \
.config("spark.sql.warehouse.dir",wareHouseLocation).getOrCreate()
import sparkSession.implicits._
val partf = sparkSession.read.textFile("partfile")
语句的例外 ->
val partf = sparkSession.read.textFile("partfile")
org.apache.spark.sql.AnalysisException: Path does not exist: file:/home/cloudera/partfile;
但我的 HDFS 主目录中有该文件。
hadoop fs -ls
Found 1 items
-rw-r--r-- 1 cloudera cloudera 58 2017-06-30 02:23 partfile
我尝试了各种方法来加载数据集,例如:
val partfile = sparkSession.read.textFile("/user/cloudera/partfile") and
val partfile = sparkSession.read.textFile("hdfs://quickstart.cloudera:8020/user/cloudera/partfile")
但似乎没有任何效果。
我的spark版本是2.0.2
谁能告诉我怎么解决?
【问题讨论】:
标签: hadoop apache-spark