如何使用Python在HDFS中打开镶木地板文件?

时间:2018-02-01 17:39:57

标签: python pyspark parquet

我希望阅读存储在HDFS中的镶木地板文件,我正在使用Python来执行此操作。我在下面有这个代码,但它没有打开HDFS中的文件。你能帮我改变代码吗?

sc = spark.sparkContext

from pyspark.sql import SQLContext
sqlContext = SQLContext(sc)

df = sqlContext.read.parquet('path-to-file/commentClusters.parquet')

另外,我也希望将Dataframe保存为CSV文件。

1 个答案:

答案 0 :(得分:1)

尝试

sqlContext.read.parquet("hdfs://<host:port>/path-to-file/commentClusters.parquet")

要查找主机和端口,只需搜索文件core-site.xml并查找xml元素fs.defaultFS(例如$ HADOOP_HOME / etc / hadoop / core-site.xml)

为简单起见,请尝试

sqlContext.read.parquet("hdfs:////path-to-file/commentClusters.parquet")

sqlContext.read.parquet("hdfs:/path-to-file/commentClusters.parquet")

参考Cannot Read a file from HDFS using Spark

要另存为csv,请尝试

df_result.write.csv(path=res_path) # possible options: header=True, compression='gzip'