使用spark访问放置在hdfs中的csv文件
Accessing csv file placed in hdfs using spark
我已经使用 hadoop -put
命令将一个 csv 文件放入 hdfs 文件系统。我现在需要使用 pyspark 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
感谢任何帮助。
您需要提供文件在 HDFS 中的完整路径,url 将在您提到的 hadoop 配置核心站点或 hdfs 站点中提及。
Check your core-site.xml & hdfs-site.xml for get the details about
url.
找到任何 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>)
我已经使用 hadoop -put
命令将一个 csv 文件放入 hdfs 文件系统。我现在需要使用 pyspark 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
感谢任何帮助。
您需要提供文件在 HDFS 中的完整路径,url 将在您提到的 hadoop 配置核心站点或 hdfs 站点中提及。
Check your core-site.xml & hdfs-site.xml for get the details about url.
找到任何 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>)