Spark打印数据帧而不会耗尽内存

时间:2019-03-12 16:02:28

标签: java apache-spark memory dataset partitioning

如何在不耗尽内存的情况下用Java打印整个数据框?

Dataset<Row> df = ...

我知道:

df.show() 

将显示数据帧,但是如果数据帧足够大,则可能会耗尽内存。

我知道我可以使用以下内容限制内容

df.show(rowCount, false)

但是要打印整个数据框,我不想限制内容...

我尝试过:

df.foreachPartition(iter -> {
    while(iter.hasNext()){
       System.out.println(rowIter.next().mkString(",");)
     }
});

但这将打印在各个节点上,而不是驱动程序上。

是否可以在不耗尽内存的情况下打印驱动程序中的所有内容?

0 个答案:

没有答案