热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

Spark的dataframecount()函数耗时很长

如何解决《Spark的dataframecount()函数耗时很长》经验,为你挑选了1个好方法。

在我的代码中,我有一系列数据帧,我想过滤掉空的数据帧.我做的事情如下:

Seq(df1, df2).map(df => df.count() > 0)

然而,这需要非常长的时间,大约2个数据帧的每个100k行消耗大约7分钟.

我的问题:为什么Spark的count()实现很慢.有解决方法吗?



1> 小智..:

伯爵是一个懒惰的行动.所以你的数据帧有多大并不重要.但是如果你对数据进行了太多昂贵的操作来获取这个数据帧,那么一旦调用了count,spark就会实际执行所有操作来获取这些数据帧.

一些昂贵的操作可能是需要改组数据的操作.喜欢groupBy,减少等

所以我的猜测是你有一些复杂的处理来获取这些数据帧或你用来获得这个数据帧的初始数据太大了.


推荐阅读
author-avatar
粉红色头发丫头_960
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有