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

Spark的dataframecount()函数耗时很长

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

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

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

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

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



1> 小智..:

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

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

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


推荐阅读
  • PySpark实战:高效使用DataFrame超越RDD
    本文深入探讨了PySpark中DataFrame的使用方法及其相对于传统RDD的优势,旨在帮助开发者更好地理解和利用这一强大工具。 ... [详细]
  • 本文介绍了一款基于Spark和Scala开发的应用程序,该应用通过配置单元作为输入,经过Spark处理层进行批处理操作,最终数据存储于Cassandra数据库中。文章探讨了如何实现该应用的测试自动化,包括业务逻辑测试、集成测试、用户验收测试(UAT)及回归测试。 ... [详细]
  • 深入解析Spark核心架构与部署策略
    本文详细探讨了Spark的核心架构,包括其运行机制、任务调度和内存管理等方面,以及四种主要的部署模式:Standalone、Apache Mesos、Hadoop YARN和Kubernetes。通过本文,读者可以深入了解Spark的工作原理及其在不同环境下的部署方式。 ... [详细]
  • 本文详细介绍了如何配置Apache Flume与Spark Streaming,实现高效的数据传输。文中提供了两种集成方案,旨在帮助用户根据具体需求选择最合适的配置方法。 ... [详细]
  • 本文详细探讨了如何在 SparkSQL 中创建 DataFrame,涵盖了从基本概念到具体实践的各种方法。作为持续学习的一部分,本文将持续更新以提供最新信息。 ... [详细]
  • 解决getallheaders函数导致的500错误及8种服务器性能优化策略
    本文探讨了解决getallheaders函数引起的服务器500错误的方法,并介绍八种有效的服务器性能优化技术,包括内存数据库的应用、Spark RDD的使用、缓存策略的实施、SSD的引入、数据库优化、IO模型的选择、多核处理策略以及分布式部署方案。 ... [详细]
  • 全面解读Apache Flink的核心架构与优势
    Apache Flink作为大数据处理领域的新兴力量,凭借其独特的流处理能力和高效的批处理性能,迅速获得了广泛的关注。本文旨在深入探讨Flink的关键技术特点及其应用场景,为大数据处理提供新的视角。 ... [详细]
  • window下kafka的安装以及测试
    目录一、安装JDK(需要安装依赖javaJDK)二、安装Kafka三、测试参考在Windows系统上安装消息队列kafka一、安装JDKÿ ... [详细]
  • Java EE CDI:解决依赖关系冲突的实例
    在本教程中,我们将探讨如何在Java EE的CDI(上下文和依赖注入)框架中有效解决依赖关系的冲突问题。通过学习如何使用限定符,您将能够为应用程序的不同客户端提供多种接口实现,并确保每个客户端都能正确调用其所需的实现。 ... [详细]
  • 深入理解Java MySQL数据库连接池实现
    尽管利用Apache Commons DBCP等工具可以轻松构建数据库连接池,但本文详细解析了数据库连接池的工作机制,提供了详尽的注释,帮助开发者深入理解其内部运作。这不仅有助于提高数据库操作的效率,还能增强应用程序的稳定性和性能。 ... [详细]
  • 本文详细介绍了如何在 Windows Server 2008 R2 64位操作系统上配置 BugFree 3.0.3 的服务器环境,包括所需软件的安装与配置步骤。 ... [详细]
  • ServletContext接口在Java Web开发中扮演着重要角色,它提供了一种方式来获取关于整个Web应用程序的信息。通过ServletContext,开发者可以访问初始化参数、共享数据以及应用资源。 ... [详细]
  • 优化使用Apache + Memcached-Session-Manager + Tomcat集群方案
    本文探讨了使用Apache、Memcached-Session-Manager和Tomcat集群构建高性能Web应用过程中遇到的问题及解决方案。通过重新设计物理架构,解决了单虚拟机环境无法真实模拟分布式环境的问题,并详细记录了性能测试结果。 ... [详细]
  • 本文详细介绍了如何在Spring Boot项目中配置Maven的pom.xml文件,包括项目的基本信息、依赖管理及构建插件的设置。 ... [详细]
  • 本文将指导您如何在MyEclipse 6.0.1环境中手动搭建Struts 2框架,并实现一个简单的用户登录功能。通过本文,您将了解如何解决开发过程中可能遇到的一些常见问题。 ... [详细]
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社区 版权所有