开发者社区> 问答> 正文

Spark:将筛选后的行保存在FilterFunction中

我已经在Spark中编写了FilterFunction来过滤DataSet中的行。一切正常,但是新的要求是我需要将所有省略的行保存到其他位置。最好的方法是什么?

我的目标是确保我不会两次访问同一数据集;一次过滤掉我想要的行,一次得到省略的行。

有可能这样做吗?我想,如果有另一种方法,我不想使用FilterFunction

展开
收起
小六码奴 2019-10-03 19:36:59 886 0
1 条回答
写回答
取消 提交回答
  • 代替过滤器函数,编写一个用户定义的函数,该函数将根据过滤器条件添加一个附加列“分区”。实际数据-数据,过滤器数据-省略。然后使用partitioner在partition列上写入df。

    +----+----------------+---------+ |col1|filtercondition |partition| +----+----------------+---------+ | a| true| data| | b| false| omitted| +----+----------------+---------+ //Output //hdfs://..../data/ //Actual Data //hdfs://..../omitted/ //Filtered Data

    2019-10-09 15:42:35
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
Hybrid Cloud and Apache Spark 立即下载
Scalable Deep Learning on Spark 立即下载
Comparison of Spark SQL with Hive 立即下载