首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏简单聊聊Spark

    Spark性能九之常用算子

            前面介绍了很多关于Spark性能的手段,今天来介绍一下Spark性能的最后一个点,就是关于Spark中常用算子。 mapPartitions优化 2.filter操作之后使用coalesce算子提高性能 先看看默认情况下,执行完filter操作以后的各个partition的情况,如下图所示; ? coalesce算子就是针对上述出现的问题的一个解决方案,下图是一个解决案例。 ? 就是使用repartition算子,对SparkSQL查询出来的数据重新进行分区操作,此时可以增加分区的个数。具体使用如下图所示: ? 总结:关于RDD算子的优化,就先讲到这里。 关于整个Spark,基本先告一段落,后面会介绍一些Spark源码分析的知识,欢迎关注。 如需转载,请注明: z小赵 Spark性能九之常用算子

    1.4K10发布于 2018-09-05
  • 来自专栏不温卜火

    Spark性能优化 (2) | 算子

    一. mapPartitions 普通的 map 算子对 RDD 中的每一个元素进行操作,而 mapPartitions 算子对 RDD 中每一个分区进行操作。 因此,mapPartitions算子适用于数据量不是特别大的时候,此时使用mapPartitions算子对性能的提升效果还是不错的。 算子。 我们需要coalesce算子。 四. repartition解决 SparkSQL 低并行度问题 在第一节的常规性能中我们讲解了并行度的调节策略,但是,并行度的设置对于Spark SQL是不生效的,用户设置的并行度只对于Spark

    1.7K20发布于 2020-10-28
  • Sparse FlashAttention 算子架构分析与技巧

    算子设计Sparse FlashAttention算子的设计充分结合了FlashAttention的融合思想和稀疏计算特点。 与传统将这些步骤拆分为多个算子不同,融合算子通过在UB缓冲区反复利用小块数据,实现了计算与数据搬运的高度重叠,并避免了中间大矩阵的物理落地,大幅提升了算子算力和带宽利用率。 Ascend优化实践中通常采用\自适应块大小调:根据硬件的L0/UB大小和向量寄存器宽度,计算出适合当前模型和硬件的最佳(block_m, block_n, block_k)分块维度,并确保这些维度对齐硬件向量宽度以避免向量指令处理 策略与结果Ascend平台的Sparse FlashAttention实现中采用了一系列调策略,并取得了显著的性能收益。 过程中,通过分析算子时间线发现Cube(矩阵乘法)和Vector(激活函数等)之间存在空闲等待,于是采用**CV流水优化:让Cube一次性计算多个块的部分结果并暂存,然后Vector端分次取出处理。

    45610编辑于 2026-01-13
  • 来自专栏Java帮帮-微信公众号-技术文章全总结

    虚拟机11.JVM_方法

    虚拟机11.JVM_方法 ENTER TITLE JVM工具 Jconsole,jProfile,VisualVM Jconsole : jdk自带,功能简单,但是可以在系统有一定负荷的情况下使用 如何 观察内存释放情况、集合类检查、对象树 上面这些工具都提供了强大的功能,但是总的来说一般分为以下几类功能 堆信息查看 ? 在我们进行的时候,不可能用眼睛去跟踪所有系统变化,依赖快照功能,我们就可以进行系统两个不同运行时刻,对象(或类、线程等)的不同,以便快速找到问题 举例说,我要检查系统进行垃圾回收以后,是否还有该收回的对象被遗漏下来的了

    1.1K60发布于 2018-03-15
  • 来自专栏五分钟学大数据

    Spark性能-RDD算子篇(深度好文,面试常问,建议收藏)

    Spark之RDD算子 1. RDD复用 在对RDD进行算子时,要避免相同的算子和计算逻辑之下对RDD进行重复的计算,如下图所示: ? 因此,mapPartitions算子适用于数据量不是特别大的时候,此时使用mapPartitions算子对性能的提升效果还是不错的。 算子。 我们需要coalesce算子。 对于多个Task可能会共用的数据可以广播到每个Executor上: val 广播变量名= sc.broadcast(会被各个Task用到的变量,即需要广播的变量) 广播变量名.value//获取广播变量 11

    1K10发布于 2021-04-01
  • 来自专栏搜云库技术团队

    JVM 11指南:如何进行JVM,JVM参数

    JVM 11的优化指南:如何进行JVM,以及JVM参数有哪些”这篇文章将包含JVM 11的核心概念、重要性、参数,并提供12个实用的代码示例,每个示例都会结合JVM参数和Java代码 本文已收录于,我的技术网站 ddkk.com,有大厂完整面经,工作技术,架构师成长之路,等经验分享 JVM 11的优化指南 JVM简介 JVM是通过调整Java虚拟机的配置参数来提升应用程序的性能和资源利用效率的过程 JVM的重要性 提高性能:通过,可以提升应用程序的响应速度和处理能力。 资源优化:合理的配置可以使应用更高效地利用系统资源。 JVM 11参数 堆内存设置:-Xms 和 -Xmx 设置堆的起始大小和最大大小。 垃圾收集器选择:-XX:+UseG1GC 使用G1垃圾收集器,适用于大堆和多核处理器。 企业级 JVM 11参数,机器配置是8核32G 为配置有8核和32GB内存的机器推荐JVM 11参数时,需考虑应用的类型、负载特性等。

    2.3K10编辑于 2024-01-17
  • 来自专栏chenchenchen

    SQL之性能

    针对专门操作符的 前面,讲的是关于查询条件的一般规则,在这一节中,将讨论如何使用专门的操作符来改进 SQL 代码的性能。 本文总结的是一些 SQL 性能的比较初级的方面,SQL 还包括 Order by,Group by 以及 Index 等等。

    2.3K30发布于 2019-12-03
  • 来自专栏java一日一条

    11 个简单的 Java 性能技巧

    这里有11个易于遵循的建议和最佳实践可以帮助你创建一个性能良好的应用程序。 ? 大部分建议是针对Java的。但也有若干建议是与语言无关的,可以应用于所有应用程序和编程语言。 在讨论专门针对Java的性能技巧之前,让我们先来看看通用技巧。 1.在你知道必要之前不要优化 这可能是最重要的性能调整技巧之一。你应该遵循常见的最佳实践做法并尝试高效地实现用例。 this test.replace(“test”,“simple test”); // with this StringUtils.replace(test, “test”,“simple test”); 11

    40120发布于 2018-09-14
  • 来自专栏LhWorld哥陪你聊算法

    【Spark篇】---Spark之代码,数据本地化,内存,SparkShuffle,Executor的堆外内存

    一、前述 Spark中大致分为以下几种 ,代码,数据本地化,内存,SparkShuffle,调节Executor的堆外内存。 二、具体    1、代码 1、避免创建重复的RDD,尽量使用同一个RDD 2、对多次使用的RDD进行持久化 如何选择一种最合适的持久化策略? 通过日志或者WEBUI 3、内存 ? Spark  JVM主要是降低gc时间,可以修改Executor内存的比例参数。 RDD缓存、task定义运行的算子函数,可能会创建很多对象,这样会占用大量的堆内存。 Spark中如何内存

    2.1K30发布于 2018-09-13
  • 来自专栏算法与数据结构

    11个简单的Java性能技巧

    内容源自Java技术栈 11个简单的Java性能技巧 大多数开发人员理所当然地以为性能优化很复杂,需要大量的经验和知识。 好吧,不能说这是完全错误的。 这里有11个易于遵循的建议和最佳实践可以帮助你创建一个性能良好的应用程序。 大部分建议是针对Java的。但也有若干建议是与语言无关的,可以应用于所有应用程序和编程语言。 在讨论专门针对Java的性能技巧之前,让我们先来看看通用技巧。 1.在你知道必要之前不要优化 这可能是最重要的性能调整技巧之一。你应该遵循常见的最佳实践做法并尝试高效地实现用例。 test.replace(“test”, “simple test”); // with this StringUtils.replace(test, “test”, “simple test”); 11

    55330发布于 2019-05-28
  • 来自专栏Albert陈凯

    2019-11-15 JVM参数推荐

    JVM的"标准参数"的各种陷阱 ,R大的文章,在JDK6时写的,年年期待更新。 内存与GC篇 2.1 GC策略 为了稳健,还是8G以下的堆还是CMS好了,G1现在虽然是默认了,但其实在小堆里的表现也没有比CMS好,还是JDK11的ZGC引人期待。 但像R大说的,System GC是保护机制(如堆外内存满时清理它的堆内引用对象),禁了system.gc() 未必是好事,只要没用什么特别烂的类库,真有人调了总有的原因,所以不应该加这个烂大街的参数。

    2.2K20发布于 2019-11-15
  • 来自专栏精讲JAVA

    11 个简单的 Java 性能技巧

    这里有11个易于遵循的建议和最佳实践可以帮助你创建一个性能良好的应用程序。 大部分建议是针对Java的。但也有若干建议是与语言无关的,可以应用于所有应用程序和编程语言。 在讨论专门针对Java的性能技巧之前,让我们先来看看通用技巧。 1.在你知道必要之前不要优化 这可能是最重要的性能调整技巧之一。你应该遵循常见的最佳实践做法并尝试高效地实现用例。 thistest.replace(“test”, “simple test”);// with thisStringUtils.replace(test, “test”, “simple test”); 11 在你知道必要之前不要优化 使用分析器查找真正的瓶颈 首先处理最大的瓶颈 来源:码农网 译文:http://www.codeceo.com 原文:https://dzone.com/articles/11

    67280发布于 2018-01-30
  • 来自专栏平凡文摘

    11 个简单的 Java 性能技巧

    这里有11个易于遵循的建议和最佳实践可以帮助你创建一个性能良好的应用程序。 大部分建议是针对Java的。但也有若干建议是与语言无关的,可以应用于所有应用程序和编程语言。 在讨论专门针对Java的性能技巧之前,让我们先来看看通用技巧。 1.在你知道必要之前不要优化 这可能是最重要的性能调整技巧之一。你应该遵循常见的最佳实践做法并尝试高效地实现用例。 test.replace(“test”, “simple test”); // with this StringUtils.replace(test, “test”, “simple test”); 11 在你知道必要之前不要优化 使用分析器查找真正的瓶颈 首先处理最大的瓶颈 来源:码农网 译文:http://www.codeceo.com 原文:https://dzone.com/articles/11

    41220发布于 2018-07-03
  • 来自专栏JAVA高级架构

    11 个简练的 Java 性能技巧

    在我们学习特定的 Java 编程性能之前,先来探讨一些通用的技巧。 ---- 1.在明确必要之前别急着优化 这可能是最重要的性能优化技巧之一。你应该遵循常见的最佳实践做法并在案例中高效地应用它。 常见的通用技巧到此结束。接下来让我们仔细看看一些特定于 Java 的技巧。 ---- 5.使用 StringBuilder 以编程方式连接字符串 在 Java 中有很多不同的选项来连接字符串。 英文原文:11 Simple Java Performance Tuning Tips ; 参与翻译 : Tocy, Tot_ziens, Tony, 透过树叶的光, 我是菜鸟我骄傲

    79560发布于 2018-04-19
  • 来自专栏纯洁的微笑

    Tomcat 性能之 JVM

    因此在对Web 容器( 应用服务器) 的中必不可少的是对于 JVM 的。 对于 JVM 的,主要有两个方面考虑: 内存大小配置 垃圾回收算法选择 当然,确切的说,以上两点并不互相独立,内存的大小配置也会影响垃圾回收的执行效率。 延迟、吞吐量 其他 JVM 配置 垃圾回收算法对应到的就是不同的垃圾收集器,具体到在 JVM 中的配置,是使用 -XX:+UseParallelOldGC 或者 -XX:+UseConcMarkSweepGC 所谓,就是一个不断调整和优化的过程,需要观察、配置、测试再如此重复。有相关经验的朋友欢迎留言补充! 说到底,那上面的这些选项是要配置在哪里呢?

    2.2K30发布于 2019-05-06
  • 来自专栏个人积累

    数据库 项目

    Springboot项目 配置文件 更改Tomcat的相关配置 设置Tomcat的最大连接数 设置请求头最大内存 设置post请求的最大内存 设置Tomcat最大线程数 设置Tomcat 的最小工作线程数 JVM 设置项目启动的参数 在vm option处添加配置内容 -XX:MetaspaceSize=128m #(元空间默认大小) -XX:MaxMetaspaceSize=128m

    1K51发布于 2020-10-10
  • 来自专栏SmartSi

    Spark 性能之Shuffle

    因此,如果要让作业的性能更上一层楼,就有必要对 shuffle 过程进行。 但是也必须提醒大家的是,影响一个 Spark 作业性能的因素,主要还是代码开发、资源参数以及数据倾斜,shuffle 只能在整个 Spark 的性能中占到一小部分而已。 因此大家务必把握住的基本原则,千万不要舍本逐末。下面我们就给大家详细讲解 shuffle 的原理,以及相关参数的说明,同时给出各个参数的建议。 2. 5. shuffle相关参数 以下是Shffule过程中的一些主要参数,这里详细讲解了各个参数的功能、默认值以及基于实践经验给出的建议。 建议:在资源参数中讲解过这个参数。如果内存充足,而且很少使用持久化操作,建议调高这个比例,给 shuffle read 的聚合操作更多内存,以避免由于内存不足导致聚合过程中频繁读写磁盘。

    1.8K31发布于 2019-08-08
  • 来自专栏SmartSi

    Spark 性能之开发

    Spark的性能实际上是由很多部分组成的,不是调节几个参数就可以立竿见影提升作业性能的。 整套方案主要分为开发、资源、数据倾斜、shuffle几个部分。 开发和资源是所有Spark作业都需要注意和遵循的一些基本原则,是高性能Spark作业的基础;数据倾斜,主要讲解了一套完整的用来解决Spark作业数据倾斜的解决方案;shuffle,面向的是对 本文作为Spark性能优化指南的基础篇,主要讲解开发。 2. 开发 2.1 概述 Spark性能优化的第一步,就是要在开发Spark作业的过程中注意和应用一些性能优化的基本原则。 开发,就是要让大家了解以下一些Spark基本开发原则,包括:RDD lineage设计、算子的合理使用、特殊操作的优化等。

    1.3K31发布于 2019-08-07
  • 来自专栏ApacheHudi

    | Apache Hudi应用指南

    通过Spark作业将数据写入Hudi时,Spark应用的技巧也适用于此。如果要提高性能或可靠性,请牢记以下几点。 GC:请确保遵循Spark指南中的垃圾收集技巧,以避免OutOfMemory错误。

    1.3K20发布于 2021-04-13
  • 来自专栏大数据成神之路

    Spark | Spark SQL参数

    本文讲解最近关于在参与hive往spark迁移过程中遇到的一些参数相关问题的。 内容分为两部分,第一部分讲遇到异常,从而需要通过设置参数来解决的;第二部分讲用于提升性能而进行的。 异常 spark.sql.hive.convertMetastoreParquet parquet是一种列式存储格式,可以用于spark-sql 和hive 的存储格式。 性能 除了遇到异常需要被动调整参数之外,我们还可以主动调整参数从而对性能进行

    8.3K63发布于 2019-08-16
领券