我使用hadoop -put命令将一个csv文件放入hdfs文件系统中。现在我需要使用电火花csv访问csv文件。它的格式类似于
`plaintext_rdd = sc.textFile('hdfs://x.x.x.x/blah.csv')`我是hdfs的新手。如何找到放置在hdfs://x.x.x.x中的地址?
这是我输入的输出
hduser@remus:~$ hdfs dfs -ls /input
Found 1 items
-rw-r--r-- 1 hduser supergroup 158 2015-06-12 14:13 /input/test.csv任何帮助都是非常感谢的。
发布于 2015-06-12 09:52:23
您需要在HDFS中提供文件的完整路径,您提到的hadoop配置核心站点或hdfs-站点中将提到url。
有关url的详细信息,请查看core-site.xml & hdfs-site.xml。
查找任何url的简单方法是从浏览器访问hdfs并获取路径。
If you are using absolute path in your file system use file:///<your path>发布于 2015-06-12 12:43:49
尝试指定不带hdfs://的绝对路径
plaintext_rdd = sc.textFile('/input/test.csv')在同一个集群上运行HDFS时,可以使用hdfs://作为默认FS。
发布于 2018-10-05 12:39:38
通过指向可以读取csv文件的包启动火花外壳或火花提交,如下所示:
spark-shell --packages com.databricks:spark-csv_2.11:1.2.0在spark代码中,您可以如下所示读取csv文件:
val data_df = sqlContext.read.format("com.databricks.spark.csv")
.option("header", "true")
.schema(<pass schema if required>)
.load(<location in HDFS/S3>)https://stackoverflow.com/questions/30799891
复制相似问题