PySpark - 读取镶木地板文件但不是同一文件夹中的另一个?
Posted
技术标签:
【中文标题】PySpark - 读取镶木地板文件但不是同一文件夹中的另一个?【英文标题】:PySpark - Reads on parquet file but not another in the same folder? 【发布时间】:2020-04-21 13:50:55 【问题描述】:我真的什么都不懂了...PySpark 不会读取同一文件夹中的所有文件。
ls
返回:
Verzeichnis von C:\Users\####\Data_Projects\NPL
21.04.2020 15:41 <DIR> .
21.04.2020 15:41 <DIR> ..
21.04.2020 13:18 <DIR> .ipynb_checkpoints
21.04.2020 14:50 <DIR> IMBD_Reviews
21.04.2020 15:40 <DIR> imdb_reviews_preprocessed
21.04.2020 14:48 13.717.398 imdb_reviews_preprocessed.parquet.zip
21.04.2020 15:38 21.738 NPL with pyspark.ipynb
23.10.2016 19:47 <DIR> sentiments.parquet
21.04.2020 14:51 38.387 sentiments.parquet.zip
21.04.2020 14:52 <DIR> tweets.parquet
21.04.2020 14:51 136.483 tweets.parquet.zip
4 Datei(en), 13.914.006 Bytes
7 Verzeichnis(se), 1.552.965.632 Bytes frei
tweets_df = sqlContext.read.parquet('tweets.parquet')
工作得很好,而且
rewievs = sqlContext.read.parquet("imdb_reviews_preprocessed.parquet")
返回错误
An error occurred while calling o541.parquet.
: org.apache.spark.sql.AnalysisException: Path does not exist: file:/C:/Users/####/Data_Projects/NPL/imdb_reviews_preprocessed/imdb_reviews_preprocessed.parquet;
...
有什么想法吗?
【问题讨论】:
似乎有一个名为 imdb_reviews_preprocessed(没有 .parquet)扩展名的目录。你能试着读那个吗? 你可以这样尝试——sqlContext.read.parquet("imdb_reviews_preprocessed/*.parquet") @Srinivas 这有帮助!你能解释一下发生了什么吗? 您已经给出了 - sqlContext.read.parquet("imdb_reviews_preprocessed.parquet") ,该位置没有 imdb_reviews_preprocessed.parquet 文件。 【参考方案1】: // get parquet files in folder
val f1 = spark.sparkContext.wholeTextFiles("/tmp/*.parquet")
.toDF("fileName", "dataInFile")
.select('fileName)
// DataFrame with files parquet in folder
val f10 = spark.read.parquet("/tmp/*.parquet")
【讨论】:
以上是关于PySpark - 读取镶木地板文件但不是同一文件夹中的另一个?的主要内容,如果未能解决你的问题,请参考以下文章
使用 pyspark 从 s3 位置读取镶木地板文件的文件夹到 pyspark 数据帧
Pyspark:无法从 SparkFiles 读取镶木地板文件