CN115145841A - 一种应用于Spark计算平台中的降低内存争用的方法 - Google Patents
一种应用于Spark计算平台中的降低内存争用的方法 Download PDFInfo
- Publication number
- CN115145841A CN115145841A CN202210843160.7A CN202210843160A CN115145841A CN 115145841 A CN115145841 A CN 115145841A CN 202210843160 A CN202210843160 A CN 202210843160A CN 115145841 A CN115145841 A CN 115145841A
- Authority
- CN
- China
- Prior art keywords
- memory
- rdd
- persisted
- acceleration
- utility
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0877—Cache access modes
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本发明提供一种应用于Spark计算平台中的降低内存争用的方法。该方法包括:步骤1:计算内存中所有持久化RDD的价值,并按照价值高低对所有RDD进行排序形成优先队列;步骤2:若监控内存状态获知内存达到瓶颈,则执行步骤3;步骤3:循环释放所述优先队列中价值较低的RDD;步骤4:在进行当前循环释放操作后,若判断获知存在空闲的处理器核,则继续执行步骤3,反之则执行步骤5;步骤5:计算将当前需要持久化的RDD分别持久化至内存中时的内存持久化加速效用和持久化至硬盘中时的硬盘持久化加速效用;步骤6:基于内存持久化加速效用和硬盘持久化加速效用,采用贪心算法求解当前程序中所有需要缓存的RDD的存储位置。
Description
技术领域
本发明涉及分布式计算平台性能优化技术领域,尤其涉及一种应用于Spark计算平台中的降低内存争用的方法。
背景技术
分布式计算平台执行性能一直以来都是一个研究热点,基于内存计算的Spark计算平台极大提升执行性能。Spark自1.6版本后采用统一内存管理模型,通过执行区和存储区共享方式,在一定程度上提升内存利用率。然而,集群内存资源有限,统一内存管理模型中,容易出现内存争用的问题。如图1所示的内存争用示意图,最初为“空闲”状态,此刻“执行区”和“存储区”都有空闲;随着内存使用率上升,内存出现“借用”状态,即“执行区”内存不足则会借用“存储区”一方的内存,反之亦然;随着内存使用率继续增加,则内存达到“瓶颈”状态,此刻两个区域的内存均不足,此时两个区域就会争用内存。
从图1可知,内存瓶颈导致频繁争用,该情况会严重影响程序执行效率。由于内存资源成本昂贵,程序执行对编程人员不透明等因素,如何降低内存争用成为一个研究问题。考虑分区大小,存储时间,使用次数,计算代价等因素,一些学者设计新的缓存替换算法,例如基于重用度的RDD加速效用度量方法,一些学者通过选择、替换和清理的途径,最大化内存中存储的RDD加速效用。然而,当内存压力持续增加,基于改进替换算法思想的策略并不能取得良好的优化效果。
发明内容
针对内存争用导致程序执行效率降低的问题,本发明提出了一种应用于Spark计算平台中的降低内存争用的方法。
本发明提供的一种应用于Spark计算平台中的降低内存争用的方法,包括:
步骤1:计算内存中所有持久化RDD的价值,并按照价值高低对所有RDD进行排序形成优先队列;
步骤2:若监控内存状态获知内存达到瓶颈,则执行步骤3;
步骤3:循环释放所述优先队列中价值较低的RDD;
步骤4:在进行当前循环释放操作后,若判断获知存在空闲的处理器核,则继续执行步骤3,反之则执行步骤5;
步骤5:计算将当前需要持久化的RDD分别持久化至内存中时的内存持久化加速效用和持久化至硬盘中时的硬盘持久化加速效用;
步骤6:基于内存持久化加速效用和硬盘持久化加速效用,采用贪心算法求解当前程序中所有需要缓存的RDD的存储位置。
进一步地,步骤1中具体包括:
步骤1.1:通过预执行分析DAG执行逻辑,获取每个持久化RDD的引用频率;
步骤1.2:利用定时器获取每个持久化RDD处于非持久化状态时的计算时间代价;
步骤1.3:每个持久化RDD的引用频率和计算时间代价的乘积即为每个持久化RDD的价值。
进一步地,步骤2中,若存在空闲的CPU核并且在将当前需要持久化的RDD持久化至内存中时发生溢写时,则认为内存达到瓶颈。
进一步地,步骤5具体包括:
步骤5.1:将目标RDD计算路径中的中间RDD记作rj,按照公式(1)计算rj的持久化加速收益Gain(rj):
Gain(rj)=(fnj-1)×[time(RDDps=false)-time(RDDps=true)] (1)
其中,fnj表示rj的引用频率,time(RDDps=false)表示rj处于非持久化状态时的计算时间代价,time(RDDps=true)表示rj处于持久化状态时的计算时间代价;
步骤5.2:按照公式(2)计算rj的内存争用损失I(rj,setτ):
其中,setτ表示内存上与rj相同大小的RDD分区集合,设定setτ中的RDD的引用频率分别为{fac1,fac2,…,facτ};OldHeapSize表示堆栈大小;q表示垃圾回收系数;
步骤5.3:按照公式(3)计算将rj持久化至内存中时的内存利用率u(sizej):
其中,sizej表示rj的大小,usage_memo表示内存已占用空间大小,max_memo表示内存总空间大小;
步骤5.4:按照公式(4)计算将rj持久化至内存中时的内存争用发生概率P{X=contention|u(sizej)}:
P{X=contention|u(sizej)}=sigmoid(u(sizej)) (4)
步骤5.5:按照公式(5)计算将rj持久化至内存中时的内存持久化加速效用Umem:
Umem=Gain(rj)-P{X=contention|u(sizej)}×I(rj,setτ)(5)。
进一步地,步骤5具体还包括:
步骤5.6:按照公式(6)计算rj持久化至硬盘中时的硬盘持久化加速效用Udisk:
其中,vdisk表示硬盘传输速度。
进一步地,步骤6具体包括:
步骤6.1:针对当前程序中所有需要缓存的RDD,逐一执行步骤6.2,直至处理完所有的RDD;
步骤6.2:针对第个需要缓存的RDD,按照公式(7)计算前个已缓存的RDD的缓存加速效用并定义公式(8)所示的子问题,根据贪心算法求取所述子问题的最优解,所述最优解对应的存储位置即为当前需要缓存的RDD的存储位置:
其中,λ表示前个已缓存的RDD中缓存至内存中的RDD数量;表示将第i个RDD持久化至内存时的内存持久化加速效用,表示将第j个RDD持久化至硬盘时的硬盘持久化加速效用;表示将第个RDD缓存在内存中时,前个RDD的缓存加速效用;表示表示将个RDD缓存在硬盘中时,前个RDD的缓存加速效用;当第个RDD的缓存未起到加速效用时,则不进行持久化,并将前个RDD的缓存加速效用仍记为
进一步地,还包括:使用Web API接口监控内存占用空间大小、RDD的大小和RDD的持久化溢写状态。
本发明的有益效果:
本发明提供的应用于Spark计算平台中的降低内存争用的方法,所采用的争用避免策略主要分为两步:第一步,通过释放低价值的RDD提升空闲内存空间,充分利用CPUCORE资源;第二步,考虑内存争用损失,计算RDD分别存储到硬盘和内存时的加速效用,从而选择RDD的最佳持久化位置实现分级存储RDD持久化数据。通过上述的争用避免策略,本发明在Spark平台内存受限时,可以有效降低内存争用带来的负面影响,加速Spark作业执行。
附图说明
图1为内存争用示意图;
图2为本发明实施例提供的一种应用于Spark计算平台中的降低内存争用的方法的流程示意图;
图3为本发明实施例提供的RDD排序和清理优先级示意图;
图4为本发明实施例提供的DAG执行逻辑示意图;
图5为本发明实施例提供的LCM策略与Spark内置策略执行时间对比图;
图6为本发明实施例提供的LCM策略与Spark内置策略垃圾回收时间对比图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
针对内存争用问题,如图2所示,本发明实施例提供一种应用于Spark计算平台中的降低内存争用的方法,包括:
S101:计算内存中所有持久化RDD的价值,并按照价值高低对所有RDD进行排序形成优先队列;
具体地,本步骤中,每个持久化RDD的价值的计算过程具体包括以下子步骤:
S1011:通过预执行分析DAG执行逻辑,获取每个持久化RDD的引用频率(也称引用频次);
具体地,基于Spark action算子懒执行特点,分析DAG执行逻辑中RDD引用频率。
S1012:利用定时器获取每个持久化RDD处于非持久化状态时的计算时间代价;
S1013:每个持久化RDD的引用频率和计算时间代价的乘积即为每个持久化RDD的价值。
此外,为了后续计算的需要,本步骤还包括:使用Web API接口监控内存占用空间大小、RDD的大小和RDD的持久化溢写状态。使用的Web API接口有:
/applications/[app-id]/storage/rdd
/applications/[app-id]/executors。
在此基础上,作为一种可实施方式,针对每个RDD,采用数据结构<rdd,size,time,frequency>表示其信息;其中,rdd所在位置用于存储RDD标识,size所在位置用于存储RDD的大小,time所在位置用于存储RDD处于非持久化状态时的计算时间代价,frequency所在位置用于存储RDD的引用频率。进一步地,通过程序执行动态添加RDD对象引用句柄至队列中完成队列的建立,建立的优先队列的数据结构可表示为如下结构:
Queue<rdd,size,time,frequency>cacheList;
S102:若监控内存状态获知内存达到瓶颈,则执行步骤S103;
具体地,使用定时器每间隔预设时长(例如每间隔1秒)查看内存状态,若存在空闲的CPU核并且在将当前需要持久化的RDD持久化至内存中时发生溢写时,则认为内存达到瓶颈。
在实际应用中,空闲的CPU核数量通过启动参数框架并行度减去活跃任务(activetask)数得到。同时,RDD持久化默认使用memory_and_disk策略,若监控发现RDD被存储至硬盘,则意味着RDD持久化溢写发生。
需要说明的是,若内存没有达到瓶颈,按照memory_and_disk策略,直接将RDD缓存至内存即可。
S103:循环释放所述优先队列中价值较低的RDD;
具体地,依次循环出队低价值RDD对象引用,并释放该RDD占用的内存空间,通过本步骤可以提升CPU核的利用率,从而可以在一定程度上缓解内存争用的情况。如图3所示。
S104:在进行当前循环释放操作后,若判断获知存在空闲的处理器核,则继续执行步骤S103,反之则执行步骤S105;
具体地,只要空闲的处理器核的数量不为0,则继续执行步骤S103直至空闲的处理器核数量为0;也就是说,当出现内存争用时,本发明实施例优先采用提升CPU核的利用率来缓解内存争用的问题。
S105:计算将当前需要持久化的RDD分别持久化至内存中时的内存持久化加速效用和持久化至硬盘中时的硬盘持久化加速效用;
具体地,如图4所示,Spark作业中RDD的执行由DAG方式组织,若将引用频率大于1的RDD持久化至存储介质后可避免该RDD的重复计算。但是由于硬盘和内存的读写速率不同,不同的存储位置产生收益不同,如此就需要分别计算出内存持久化加速效用和硬盘持久化加速效用,以便为后续确定RDD的持久化存储位置提供依据。
具体地,本步骤具体包括以下子步骤:
S1051:将目标RDD计算路径中的中间RDD记作rj,按照公式(1)计算rj的持久化加速收益Gain(rj):
Gain(rj)=(fnj-1)×[time(RDDps=false)-time(RDDps=true)] (1)
其中,fnj表示rj的引用频率,time(RDDps=false)表示rj处于非持久化状态时的计算时间代价,time(RDDps=true)表示rj处于持久化状态时的计算时间代价;下标ps表示是否处于持久化状态的标志。
具体地,RDD持久化可以避免重复计算,加速任务执行,故在不考虑资源争用情况下,rj的持久化加速收益如公式(1)所示。
S1052:按照公式(2)计算rj的内存争用损失I(rj,setτ):
其中,setτ表示内存上与rj相同大小的RDD分区集合,设定setτ中的RDD的引用频率分别为{fac1,fac2,…,facτ};OldHeapSize表示堆栈大小;q表示垃圾回收系数。
具体地,若考虑资源争用,当内存发生争用时,如果仍将当前需要缓存的RDD继续缓存至内存中,就需要先在内存中移除等量的RDD,而被移除的RDD事实上也存在被引用的需求,如此就需要计算得到该移除操作所造成的损失,本实施例中,将该损失记作内存争用损失。同时,可以理解,当移除RDD时,会发生垃圾回收操作,进而存在垃圾回收开销,垃圾回收开销与堆栈大小成正比,因此,在上述公式(2)中,还引入了垃圾回收系数。
S1053:按照公式(3)计算将rj持久化至内存中时的内存利用率u(sizej):
其中,sizej表示rj的大小,usage_memo表示内存已占用空间大小,max_memo表示内存总空间大小;
具体地,内存利用率是影响内存争用的主要因素。内存利用率增大,内存争用发生的概率增大。
S1054:按照公式(4)计算将rj持久化至内存中时的内存争用发生概率P{X=contention|u(sizej)}:
P{X=contention|u(sizej)}=sigmoid(u(sizej)) (4)
具体地,内存争用发生概率与内存利用率是非线性相关的,在内存利用率较低时,内存争用发生概率接近于0,随着内存利用率增加,内存争用发生概率急剧增加。sigmoid函数具有良好单调性,可将内存利用率非线性化映射到(0,1)区间内,故内存争用发生概率可形式化如公式(4)。
S1055:若rj选择缓存到内存,考虑到内存争用发生概率和内存争用损失,按照公式(5)计算将rj持久化至内存中时的内存持久化加速效用Umem:
Umem=Gain(rj)-P{X=contention|u(sizej)}×I(rj,setτ)(5)
S1056:按照公式(6)计算rj持久化至硬盘中时的硬盘持久化加速效用Udisk:
其中,vdisk表示硬盘传输速度。
S106:基于内存持久化加速效用和硬盘持久化加速效用,采用贪心算法求解当前程序中所有需要缓存的RDD的存储位置。
具体地,本步骤具体包括以下子步骤:
S1061:针对当前程序中所有需要缓存的RDD,逐一执行步骤6.2,直至处理完所有的RDD;
S1062:针对第个需要缓存的RDD,按照公式(7)计算前个已缓存的RDD的缓存加速效用并定义公式(8)所示的子问题,根据贪心算法求取所述子问题的最优解,所述最优解对应的存储位置即为当前需要缓存的RDD的存储位置:
其中,λ表示前个已缓存的RDD中缓存至内存中的RDD数量;表示将第i个RDD持久化至内存时的内存持久化加速效用,表示将第j个RDD持久化至硬盘时的硬盘持久化加速效用;表示将第个RDD缓存在内存中时,前个RDD的缓存加速效用;表示表示将个RDD缓存在硬盘中时,前个RDD的缓存加速效用;当第个RDD的缓存未起到加速效用时,则不进行持久化,并将前个RDD的缓存加速效用仍记为
为了解决内存压力过载时频繁争用降低执行效率的问题,本发明提供的应用于Spark计算平台中的降低内存争用的方法,所采用的争用避免策略主要分为两步:第一步,通过释放低价值的RDD提升空闲内存空间;第二步,考虑内存争用损失,计算RDD分别存储到硬盘和内存时的加速效用,从而选择最佳存储位置。通过上述的争用避免策略,本发明在Spark平台内存受限时,可以有效降低内存争用带来的负面影响,加速Spark作业执行。
为了验证本发明的可行性,本发明还提供有下述实验。
实验运行在三台服务器节点上,每个节点的配置如表1所示,作业类型选取pagerank算法,数据集大小设置为20Gb、30Gb、40Gb、50Gb。由于Spark作业在垃圾回收时暂停作业线程,故垃圾回收时间具有重要参考意义。实验指标选择为作业执行时间和垃圾回收时间。实验结果如图5和图6所示。
表1资源配置信息
图5为本发明提供的执行时间结果图。通过结果图可以看出随着数据量增加,相比only_disk策略,only_memory策略和memory_and_disk策略出现明显的执行时间延迟。分析原因可知,内存不足导致的争用状态使得持久化RDD命中率大幅下降。而本发明策略(简称为LCM策略)避免频繁内存争用,在50Gb时明显降低了作业执行时间。
图6为本发明提供的Spark平台垃圾回收时间结果图。通过结果图可以看出随着数据量增加,相比only_disk策略,only_memory策略和memory_and_disk策略出现较大的垃圾回收开销。LCM策略将垃圾回收开销维持在一个稳定且较低的水平上。垃圾回收动作由内存不足事件触发,分析原因可知,LCM策略通过清理内存中低价值RDD和分层存储RDD技术将Spark内存维持在未超载状态,避免频繁触发垃圾回收。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (7)
1.一种应用于Spark计算平台中的降低内存争用的方法,其特征在于,包括:
步骤1:计算内存中所有持久化RDD的价值,并按照价值高低对所有RDD进行排序形成优先队列;
步骤2:若监控内存状态获知内存达到瓶颈,则执行步骤3;
步骤3:循环释放所述优先队列中价值较低的RDD;
步骤4:在进行当前循环释放操作后,若判断获知存在空闲的处理器核,则继续执行步骤3,反之则执行步骤5;
步骤5:计算将当前需要持久化的RDD分别持久化至内存中时的内存持久化加速效用和持久化至硬盘中时的硬盘持久化加速效用;
步骤6:基于内存持久化加速效用和硬盘持久化加速效用,采用贪心算法求解当前程序中所有需要缓存的RDD的存储位置。
2.根据权利要求1所述的一种应用于Spark计算平台中的降低内存争用的方法,其特征在于,步骤1中具体包括:
步骤1.1:通过预执行分析DAG执行逻辑,获取每个持久化RDD的引用频率;
步骤1.2:利用定时器获取每个持久化RDD处于非持久化状态时的计算时间代价;
步骤1.3:每个持久化RDD的引用频率和计算时间代价的乘积即为每个持久化RDD的价值。
3.根据权利要求1所述的一种应用于Spark计算平台中的降低内存争用的方法,其特征在于,步骤2中,若存在空闲的CPU核并且在将当前需要持久化的RDD持久化至内存中时发生溢写时,则认为内存达到瓶颈。
4.根据权利要求1所述的一种应用于Spark计算平台中的降低内存争用的方法,其特征在于,步骤5具体包括:
步骤5.1:将目标RDD计算路径中的中间RDD记作rj,按照公式(1)计算rj的持久化加速收益Gain(rj):
Gain(rj)=(fnj-1)×[time(RDDps=false)-time(RDDps=true)] (1)
其中,fnj表示rj的引用频率,time(RDDps=false)表示rj处于非持久化状态时的计算时间代价,time(RDDps=true)表示rj处于持久化状态时的计算时间代价;
步骤5.2:按照公式(2)计算rj的内存争用损失I(rj,setτ):
其中,setτ表示内存上与rj相同大小的RDD分区集合,设定setτ中的RDD的引用频率分别为{fac1,fac2,…,facτ};OldHeapSize表示堆栈大小;q表示垃圾回收系数;
步骤5.3:按照公式(3)计算将rj持久化至内存中时的内存利用率u(sizej):
其中,sizej表示rj的大小,usage_memo表示内存已占用空间大小,max_memo表示内存总空间大小;
步骤5.4:按照公式(4)计算将rj持久化至内存中时的内存争用发生概率P{X=contention|u(sizej)}:
P{X=contention|u(sizej)}=sigmoid(u(sizej)) (4)
步骤5.5:按照公式(5)计算将rj持久化至内存中时的内存持久化加速效用Umem:
Umem=Gain(rj)-P{X=contention|u(sizej)}×I(rj,setτ) (5)。
6.根据权利要求1所述的一种应用于Spark计算平台中的降低内存争用的方法,其特征在于,步骤6具体包括:
步骤6.1:针对当前程序中所有需要缓存的RDD,逐一执行步骤6.2,直至处理完所有的RDD;
步骤6.2:针对第个需要缓存的RDD,按照公式(7)计算前个已缓存的RDD的缓存加速效用并定义公式(8)所示的子问题,根据贪心算法求取所述子问题的最优解,所述最优解对应的存储位置即为当前需要缓存的RDD的存储位置:
7.根据权利要求1所述的一种应用于Spark计算平台中的降低内存争用的方法,其特征在于,还包括:使用Web API接口监控内存占用空间大小、RDD的大小和RDD的持久化溢写状态。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210843160.7A CN115145841B (zh) | 2022-07-18 | 2022-07-18 | 一种应用于Spark计算平台中的降低内存争用的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210843160.7A CN115145841B (zh) | 2022-07-18 | 2022-07-18 | 一种应用于Spark计算平台中的降低内存争用的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115145841A true CN115145841A (zh) | 2022-10-04 |
CN115145841B CN115145841B (zh) | 2023-05-12 |
Family
ID=83413083
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210843160.7A Active CN115145841B (zh) | 2022-07-18 | 2022-07-18 | 一种应用于Spark计算平台中的降低内存争用的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115145841B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107526546A (zh) * | 2017-08-25 | 2017-12-29 | 深圳大学 | 一种Spark分布式计算数据处理方法及系统 |
CN108628682A (zh) * | 2018-04-17 | 2018-10-09 | 西南交通大学 | 一种基于数据持久化的Spark平台成本优化方法 |
WO2019037093A1 (zh) * | 2017-08-25 | 2019-02-28 | 深圳大学 | 一种 Spark 分布式计算数据处理方法及系统 |
CN112015765A (zh) * | 2020-08-19 | 2020-12-01 | 重庆邮电大学 | 基于缓存价值的Spark缓存淘汰方法及系统 |
CN112597076A (zh) * | 2020-12-22 | 2021-04-02 | 中国科学院软件研究所 | 一种面向Spark的基于数据感知的缓存替换方法及系统 |
-
2022
- 2022-07-18 CN CN202210843160.7A patent/CN115145841B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107526546A (zh) * | 2017-08-25 | 2017-12-29 | 深圳大学 | 一种Spark分布式计算数据处理方法及系统 |
WO2019037093A1 (zh) * | 2017-08-25 | 2019-02-28 | 深圳大学 | 一种 Spark 分布式计算数据处理方法及系统 |
CN108628682A (zh) * | 2018-04-17 | 2018-10-09 | 西南交通大学 | 一种基于数据持久化的Spark平台成本优化方法 |
CN112015765A (zh) * | 2020-08-19 | 2020-12-01 | 重庆邮电大学 | 基于缓存价值的Spark缓存淘汰方法及系统 |
CN112597076A (zh) * | 2020-12-22 | 2021-04-02 | 中国科学院软件研究所 | 一种面向Spark的基于数据感知的缓存替换方法及系统 |
Non-Patent Citations (2)
Title |
---|
YIXIN SONG,ET AL: "memory management optimization strategy in spark framework based on less contention", THE JOURNAL OF SUPERCOMPUTING * |
宋一鑫等: "Spark效用感知的检查点缓存并行清理策略", 计算机系统应用 * |
Also Published As
Publication number | Publication date |
---|---|
CN115145841B (zh) | 2023-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6924820B2 (ja) | ワーキングセットおよびスレッドの関連付け | |
TWI564719B (zh) | 具有多個資料預取器的處理器、所述處理器的操作方法及所述處理器操作的電腦程式產品 | |
EP2751685B1 (en) | Resource allocation tree | |
TWI735542B (zh) | 一種虛擬機器的資料儲存方法和裝置 | |
JPS60140446A (ja) | 記憶階層制御方式 | |
CN111400204B (zh) | 一种固态盘缓存方法、系统及相关设备 | |
US9727465B2 (en) | Self-disabling working set cache | |
CN111737168A (zh) | 一种缓存系统、缓存处理方法、装置、设备及介质 | |
CN116225686A (zh) | 面向混合内存架构的cpu调度方法和系统 | |
CN115576505A (zh) | 一种数据存储方法、装置、设备及可读存储介质 | |
US8954688B2 (en) | Handling storage pages in a database system | |
Carniel et al. | A generic and efficient framework for flash-aware spatial indexing | |
Wang et al. | PA-tree: Polled-mode asynchronous B+ tree for NVMe | |
CN107220069B (zh) | 一种针对非易失性内存的Shuffle方法 | |
CN111459402B (zh) | 磁盘可控缓冲写方法、控制器、混合io调度方法及调度器 | |
CN115145841A (zh) | 一种应用于Spark计算平台中的降低内存争用的方法 | |
US8380948B2 (en) | Managing purgeable memory objects using purge groups | |
CN116700988A (zh) | Spark环境下基于自适应预留内存的数据调度策略 | |
Song et al. | Memory management optimization strategy in Spark framework based on less contention | |
Chen et al. | Scheduling-aware data prefetching for data processing services in cloud | |
US7831784B2 (en) | Managing purgeable memory objects | |
US11977488B2 (en) | Cache prefetching method and system based on K-Truss graph for storage system, and medium | |
CN115718767A (zh) | 一种面向大数据平台的远程缓存替换方法及装置 | |
Patgiri et al. | rTuner: A performance enhancement of MapReduce job | |
JP5847313B2 (ja) | 情報処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |