如何使用spark for map reduce flow来选择文件夹下所有csv文件的n列、前m行?

pw9qyyiw  于 2021-05-30  发布在  Hadoop
关注(0)|答案(1)|浏览(310)

具体来说,假设我们有一个文件夹,其中有10k个以制表符分隔的csv文件,其属性格式如下(每个csv文件大约10gb):

id  name    address city...
1   Matt    add1    LA...
2   Will    add2    LA...
3   Lucy    add3    SF...
...

我们有一个基于上面“name”的查找表

name    gender
Matt    M
Lucy    F
...

现在,我们有兴趣将每个csv文件的前100000行输出为以下格式:

id  name    gender
1   Matt    M
...

我们能用pyspark有效地处理这个问题吗?
如何并行处理这些10k csv文件?

z9smfwbn

z9smfwbn1#

您可以在python中利用文件的第一行:

top1000 = sc.parallelize("YourFile.csv").map(lambda line : line.split("CsvSeparator")).take(1000)

相关问题