Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/hadoop/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用spark访问hdfs中的csv文件_Csv_Hadoop_Apache Spark_Pyspark - Fatal编程技术网

使用spark访问hdfs中的csv文件

使用spark访问hdfs中的csv文件,csv,hadoop,apache-spark,pyspark,Csv,Hadoop,Apache Spark,Pyspark,我使用hadoop-put命令将一个csv文件放入hdfs文件系统。我现在需要使用访问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 20

我使用
hadoop-put
命令将一个csv文件放入hdfs文件系统。我现在需要使用访问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

非常感谢您的帮助。

您需要在HDFS中提供文件的完整路径,url将在您提到的hadoop配置核心站点或HDFS站点中提及

查看core-site.xml和hdfs-site.xml以获取有关的详细信息 网址

找到任何url的简单方法是从浏览器访问hdfs并获取路径

If you are using absolute path in your file system use file:///<your path>
如果在文件系统中使用绝对路径,请使用文件:///

尝试指定不带hdfs的绝对路径://

plaintext_rdd = sc.textFile('/input/test.csv')

Spark与HDFS在同一集群上运行时,使用HDFS://作为默认FS。

指向可以读取csv文件的包启动Spark shell或Spark submit,如下所示:

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>)
val data_df=sqlContext.read.format(“com.databricks.spark.csv”)
.选项(“标题”、“正确”)
.schema()
.load()

我使用
http://localhost:50070/explorer.html#/input
。那么,在这种情况下,我应该输入什么?你应该-,在你的浏览器中检查整个路径,它必须在那里可用。我在core-site.xml中找到了它,正如你在回答中提到的。(它位于hadoop安装目录的/etc文件夹中)。所以hdfs://user:54310