一种数据读取方法、装置、电子设备及存储介质制造方法及图纸

技术编号:37119918 阅读:20 留言:0更新日期:2023-04-01 05:15
本发明专利技术实施例公开了一种数据读取方法、装置、电子设备及存储介质。该方法包括:基于接收到的当前数据读取请求,确定待读取数据的所属文件及待读取数据的存储片区;在所属文件中的文件数据已被缓存至文件内存的情况下,从文件内存中读取与存储片区对应的第一文件子数据,将第一文件子数据确定为待读取数据,并将待读取数据发送至数据请求节点;其中,文件内存中包括:基于历史数据读取请求缓存的所属文件中的文件数据,文件数据包括至少一个存储片区对应的文件子数据。本发明专利技术实施例的技术方案,通过直接对文件内存进行读取的操作,减少了对本地磁盘的访问次数,降低本地磁盘负载,实现提高数据计算的工作效率和稳定性的效果。高数据计算的工作效率和稳定性的效果。高数据计算的工作效率和稳定性的效果。

【技术实现步骤摘要】
一种数据读取方法、装置、电子设备及存储介质


[0001]本专利技术实施例涉及计算机
,尤其涉及一种数据读取方法、装置、电子设备及存储介质。

技术介绍

[0002]在大数据分布式计算场景下,都离不开对数据的Shuffle(洗牌)操作,Shuffle操作过程的本质是将Map(映射)节点获得的数据使用分区器进行划分,并将数据分发给对应Reducer(归约)节点的过程。
[0003]现有技术的分布式计算场景下,Reducer节点基于Shuffle服务获取Shuffle数据时,需要对本地磁盘中每个Map节点的对应的每个存储片区均进行数据访问,以完成Shuffle操作。但是,在实现本专利技术的过程中,发现现有技术至少存在以下技术问题:在大数据计算场景下,对本地磁盘访问量大;且在获取各存储片区的Shuffle数据时,易产生随机读的情况,导致磁盘负载较高,影响分布式计算引擎的工作效率及稳定性。

技术实现思路

[0004]本专利技术实施例提供了一种数据读取方法、装置、电子设备及存储介质,以减少对本地磁盘的访问次数,降低本地磁盘负载,实现提高数据计算的工作效率和稳定性的目的。
[0005]根据本专利技术的一方面,提供了一种数据读取方法,包括:
[0006]基于接收到的当前数据读取请求,确定待读取数据的所属文件及所述待读取数据的存储片区;
[0007]在所述所属文件中的文件数据已被缓存至文件内存的情况下,从所述文件内存中读取与所述存储片区对应的第一文件子数据,将所述第一文件子数据确定为所述待读取数据,并将所述待读取数据发送至数据请求节点;
[0008]其中,所述文件内存中包括:基于历史数据读取请求缓存的所述所属文件中的文件数据,所述文件数据包括至少一个片区对应的文件子数据。
[0009]根据本专利技术的另一方面,提供了一种数据读取装置,该装置包括:
[0010]所属文件确定模块,用于基于接收到的当前数据读取请求,确定待读取数据的所属文件及所述待读取数据的存储片区;
[0011]待读取数据发送模块,用于在所述所属文件中的文件数据已被缓存至文件内存的情况下,从所述文件内存中读取与所述存储片区对应的第一文件子数据,将所述第一文件子数据确定为所述待读取数据,并将所述待读取数据发送至数据请求节点;
[0012]其中,所述文件内存中包括:基于历史数据读取请求缓存的所述所属文件中的文件数据,所述文件数据包括至少一个存储片区对应的文件子数据。
[0013]根据本专利技术的另一方面,提供了一种电子设备,所述电子设备包括:
[0014]至少一个处理器;以及
[0015]与所述至少一个处理器通信连接的存储器;其中,
[0016]所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本专利技术任一实施例所述的数据读取方法。
[0017]根据本专利技术的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本专利技术任一实施例所述的数据读取方法。
[0018]本专利技术实施例的技术方案,基于接收到的当前数据读取请求,确定待读取数据的所属文件及待读取数据的存储片区,在所属文件中的文件数据已被缓存至文件内存的情况下,通过在从文件内存中读取与存储片区对应的第一文件子数据,以将第一文件子数据作为待读取数据发送至数据请求节点;由于文件数据可通过历史数据读取请求缓存至文件内存中,因此在执行历史数据读取请求之后的当前数据读取请求时,则通过直接对文件内存进行读取的操作,减少了对本地磁盘的访问次数,降低本地磁盘负载,实现提高数据计算的工作效率和稳定性的效果。
[0019]应当理解,本部分所描述的内容并非旨在标识本专利技术的实施例的关键或重要特征,也不用于限制本专利技术的范围。本专利技术的其它特征将通过以下的说明书而变得容易理解。
附图说明
[0020]为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0021]图1是现有技术中提供的一种数据读取方法的示意图;
[0022]图2是根据本专利技术实施例提供的一种数据读取方法的流程图;
[0023]图3是根据本专利技术实施例提供的另一种数据读取方法的流程图;
[0024]图4是根据本专利技术实施例提供的一种数据读取过程的架构图;
[0025]图5是根据本专利技术实施例提供的一种获取待读取数据的过程示意图
[0026]图6是根据本专利技术实施例提供的一种数据读取方法装置的结构示意图;
[0027]图7是实现本专利技术实施例的数据读取方法的电子设备的结构示意图。
具体实施方式
[0028]为了使本
的人员更好地理解本专利技术方案,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分的实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本专利技术保护的范围。
[0029]需要说明的是,本专利技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本专利技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“等”以及他们的任何变形,意图在于覆盖
不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0030]图1是现有技术中提供的一种数据读取方法得示意图;如图1所示,分布式计算场景下,可包括M个Map节点,P个Reducer节点;在执行Shuffle操作时,Map节点生成Shuffle数据,并将Shuffle数据按照不同存储片区分别写入至本地磁盘,每个Map节点对应的存储片区数量为N;其中,M、P和N为正整数。Reducer节点获取本地磁盘存储的Shuffle数据时,向部署于Map节点的Shuffle服务发送请求,Shuffle服务访问本地磁盘以获取到获取Shuffle数据。但上述数据读取方法存在以下问题:获取本地磁盘中存储的数据时,需要访问本地磁盘总次数最多M
×
N次,在大数据计算场景下,对本地磁盘访问量大;且在获取各存储片区的Shuffle数据时,易产生随机读的情况,导致磁盘负载较高,影响分布式计算引擎的工作效率及稳定性。
[0031]为解决当前Shuffle数据读取过程中存在的问题,本技术方案提供过一种数据读取方法。本技术方案中分布式计本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据读取方法,其特征在于,包括:基于接收到的当前数据读取请求,确定待读取数据的所属文件及所述待读取数据的存储片区;在所述所属文件中的文件数据已被缓存至文件内存的情况下,从所述文件内存中读取与所述存储片区对应的第一文件子数据,将所述第一文件子数据确定为所述待读取数据,并将所述待读取数据发送至数据请求节点;其中,所述文件内存中包括:基于历史数据读取请求缓存的所述所属文件中的文件数据,所述文件数据包括至少一个存储片区对应的文件子数据。2.根据权利要求1所述的方法,其特征在于,还包括:在所述所属文件中文件数据未被缓存至文件内存的情况下,获取与所述所属文件中的文件数据,将所述文件数据缓存至与所述所属文件对应的文件内存中;读取所述文件内存中与所述存储片区对应的第一文件子数据,将所述第一文件子数据确定为所述待读取数据,并将所述待读取数据发送至数据请求节点。3.根据权利要求2所述的方法,其特征在于,所述将所述文件数据缓存至与所述所属文件对应的文件内存中,包括:确定所述文件内存的当前剩余存储量和总存储量;若所述文件数据满足预设条件,则将所述文件数据缓存至所述文件内存中;其中,所述预设条件包括所述文件数据的文件占用内存量小于或等于预设内存阈值,且所述文件占用内存量与所述当前剩余存储量之和小于或等于所述总存储量。4.根据权利要求3所述的方法,其特征在于,在所述获取与所述所属文件中的文件数据之前,还包括:若在所述所属文件对应的布隆过滤器中,未查询到与所述所属文件对应的文件信息,则确定在接收到所述数据读取请求之前,所述文件数据在历史时间段内被请求的被请求次数;若所述被请求次数小于预设阈值,则确定所述所属文件中文件数据未被缓存至文件内存;其中,所述布隆过滤器用于存储所述被请求次数大于或等于所述预设阈值,且未被存储至所述文件内存的文件数据对应的文件信息。5.根据权利要求4所述的方法,其特征在于,还包括:若所述文件数据不满足预设条件,则基于所述文件数据生成所述所属文件对应的文件信息,并将所述文件信息存储至所述所属文件对应的布隆过滤器中。6.根据权利要求4所述的方法,其特征在于,还包括:若所述被请求次数大于或等于所述预设阈值,则确定预先存储的缓存操作记录中,是否包括所述所属文件的缓存信息;若所述缓存操作记录包括所述缓存信息,则确定所述所属文件已被缓存至所述文件内存中。7.根据权利要求6所述的方法,其特征在于,还包括:若所述缓存操作记录中不包括所述缓存信息;或者,在所述所属文件对应的布隆过滤器中查询到所述文件信息,...

【专利技术属性】
技术研发人员:魏秀利王文生
申请(专利权)人:北京京东世纪贸易有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1