使用PySpark读取时过滤实木复合地板文件

我在AWS s3中存储了庞大的分区镶木地板文件数据集,我想使用AWS EMR从每个月的数据中仅读取一个样本。我必须通过“ user_id”值过滤每个月的数据,例如,从100.000个用户(百万个)中选择数据,然后将汇总写回到s3。

我想出了如何使用EMR集群读写s3的方法,但是我在一个很小的数据集上进行了测试。对于真实的数据集,我需要过滤数据以进行处理。如何使用pyspark做到这一点?

qqq691608414 回答:使用PySpark读取时过滤实木复合地板文件

Spark具有多个采样转换。 tp.method_id == :foo是您所需要的。参见this answer

如果您需要返回准确数量的结果,则必须(a)稍加采样,然后(b)使用df.sample(...)来获得准确的数量。

如果只处理小数而不是目标计数,则可以保存df.limit()

本文链接:https://www.f2er.com/3073467.html

大家都在问