【问题标题】:In PySpark RDD, how to use foreachPartition() to print out the first record of each partition?在 PySpark RDD 中,如何使用 foreachPartition() 打印出每个分区的第一条记录?
【发布时间】:2017-09-04 04:02:15
【问题描述】:

在 PySpark RDD 中,如何使用foreachPartition() 打印出每个分区的第一条记录?

【问题讨论】:

    标签: apache-spark pyspark rdd


    【解决方案1】:

    你可以这样做:

    def f(iterator):
       print(iterator.next()) 
    

    def f(iterator):
       print(list(iterator)[0]) 
    

    然后,您可以将上述函数之一应用于 RDD,如下所示:

    rdd1 = sc.parallelize([1, 2, 3, 4, 5])
    rdd1.foreachPartition(f)
    

    请注意,这将打印在每个 spark 工作人员中,因此您应该访问工作人员的日志以查看结果。

    有关更多信息,请查看文档here

    【讨论】:

      猜你喜欢
      • 2022-10-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多