如何使用 spark(python)读取 zip 文件中的 CSV 文件的内容 [重复]

Posted

技术标签:

【中文标题】如何使用 spark(python)读取 zip 文件中的 CSV 文件的内容 [重复]【英文标题】:How to read contents of a CSV file inside zip file using spark (python) [duplicate] 【发布时间】:2016-05-05 21:52:26 【问题描述】:

我有多个 zip 文件,其中包含两种类型的文件(A.csv 和 B.csv)

/data/jan.zip --> 包含 A.csv & B.csv /data/feb.zip --> 包含 A.csv & B.csv

我想使用 pyspark 读取所有 zip 文件中所有 A.csv 文件的内容。

 textFile = sc.textFile("hdfs://<HDFS loc>/data/*.zip")

谁能告诉我如何将 A.csv 文件的内容放入 RDD 中?

【问题讨论】:

这可能会帮助你***.com/questions/32080475/… Read whole text files from a compression in Spark 此链接可能对您有所帮助docs.python.org/2/library/zipfile.html 【参考方案1】:

在这里,您要递归读取 zip 文件中的所有 csv 文件。

val files = sc.CSVFiles("file://path/to/files/*.zip")
files.flatMap(case (name, content) =>
  unzip(content)
)

def unzip(content: String): List[String] = 
  ...

【讨论】:

以上是关于如何使用 spark(python)读取 zip 文件中的 CSV 文件的内容 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

如何将 zip 文件的内容分配给 Spark 中的每个任务?

如何在spark中解压和读取包含多个压缩文件的文件

在 Spark/Scala 中写入 HDFS,读取 zip 文件

如何使用 python 从位于同一目录中的多个 zip 文件夹中读取 csv 文件?

使用 python Spark 将大型 CSV 发送到 Kafka

Python:如何从内存中的 zip 文件中读取图像?