【发布时间】:2020-04-20 04:57:47
【问题描述】:
我们正在保存一个数据框,但我们需要检查该数据框不应该为空。
为了实现这一点,我们使用df.isEmpty(),这是保存 DF 时非常常见的做法。
我担心的是 df.isEmpty、head(1)、limit(1) 所有这些都会执行一个 Action,它将第一次执行整个计划,然后当我们 保存它将再次触发(执行)计划第二次。是不是很糟糕,有没有更好的方法呢?
在大多数代码示例中,我遇到的博客这是保存非空数据帧的常用方法 检查空(触发操作并执行计划),然后保存(触发操作并再次执行整个计划)
【问题讨论】:
-
df.isEmpty, head(1), limit(1) 是您得到的最佳选择。他们只会抢第一排,所以他们不会那么慢。
标签: scala apache-spark hadoop apache-spark-sql