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

技术编号:31562496 阅读:32 留言:0更新日期:2021-12-25 10:45
本发明专利技术实施例公开了一种文件读取方法、装置、电子设备和存储介质,其中方法包括:获取目标文件的读取请求;通过预先创建的多线程请求队列,并行下发读取请求到各存储节点;在接收到目标存储节点返回的成功读取目标文件的消息时,将目标文件反馈给目标文件请求方,并将其它存储节点返回的读取结果消息设置为无效。本发明专利技术实施例中,通过预先建立的多线程请求队列,将获取的读取请求并行下发到各存储节点后,若某一目标存储节点返回所请求的目标文件,则立即将目标文件立即返回请求方,其余存储节点返回的读取结果自动失效处理,由此避免了因等待所有存储节点完成读取操作后返回最终结果,所导致的读取文件耗时大的问题,提升了文件的读取效率。了文件的读取效率。了文件的读取效率。

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


[0001]本专利技术实施例涉及云存储
,尤其涉及一种文件读取方法、装置、电子设备和存储介质。

技术介绍

[0002]随着大数据、人工智能、云存储等技术的进步和不断革新,视频监控、数字警务、智能助理、智慧城市等信息化业务在生活中的出现也越来越频繁,这给我们的社会活动和生产带来了极大的方便。大规模的信息化应用产生了海量的数据,这些数据可以是键值对数据、图片、短视频、文档、表格等,这就对云存储系统的高效性提出了更高的要求。一般海量数据的存储采用云存储系统进行,其包含元数据管理服务器CDM和若干个虚拟存储节点,在单个存储节点中数据以文件的方式进行组织和存储。而在业务量不断增长的情况下性能问题成为了一个极其关键的问题,同等的存储硬件,性能的提升有助于直接提高产品竞争力和性价比。
[0003]通常,业务使用云存储客户端实现基本的文件操作功能,文件读取时携带文件名称获取到所有在线的存储节点,再向每个存储节点发送读取文件请求,等到所有节点上读取操作完成后,业务层才能获取到最终结果,也即存在已经读取成功但还是要等所有结果返回的情况,使得文件的读取效率较低。

技术实现思路

[0004]本专利技术实施例提供一种文件读取方法、装置、电子设备和存储介质,以达到提升文件读取效率的效果。
[0005]第一方面,本专利技术实施例提供了一种文件读取方法,应用于云存储系统中的数据产生设备,所述方法包括:
[0006]获取目标文件的读取请求;
[0007]通过预先创建的多线程请求队列,并行下发所述读取请求到各存储节点;
[0008]在接收到目标存储节点返回的成功读取所述目标文件的消息时,将所述目标文件反馈给目标文件请求方,并将其它存储节点返回的读取结果消息设置为无效。
[0009]第二方面,本专利技术实施例提供了一种文件读取方法,应用于云存储系统中的存储节点,所述方法包括:
[0010]响应于对已经存储的目标文件的读取请求,在预先加载的目录树中确定所述目标文件对应的目标目录;
[0011]根据所述目标目录下预先创建的过滤器,判断预先创建的过滤器中是否存在所述目标文件信息,其中,所述过滤器中用于存储所述目标目录下的部分文件块中的文件信息;
[0012]若存在,则根据所述目标文件信息,获取对应的目标文件;
[0013]若不存在,则从存储节点的磁盘中依次读取所述目标目录下的其它文件块,并将读取过的文件块的文件信息添加到过滤器中,直到查找到所述目标文件对应的目标文件信
息为止,其中,所述其它文件块为所述目标目录下除了已存储在过滤器中的文件块以外的文件块。
[0014]第三方面,本专利技术实施例提供了一种文件读取装置,配置于云存储系统中的数据产生设备,所述装置包括:
[0015]请求获取模块,用于获取目标文件的读取请求;
[0016]请求下发模块,用于通过预先创建的多线程请求队列,并行下发所述读取请求到各存储节点;
[0017]消息处理模块,用于在接收到目标存储节点返回的成功读取所述目标文件的消息时,将所述目标文件反馈给目标文件请求方,并将其它存储节点返回的读取结果消息设置为无效。
[0018]第四方面,本专利技术实施例提供了一种文件读取装置,配置于云存储系统中的存储节点,所述装置包括:
[0019]响应模块,用于响应于对已经存储的目标文件的读取请求,在预先加载的目录树中确定所述目标文件对应的目标目录;
[0020]判断模块,用于根据所述目标目录下预先创建的过滤器,判断预先创建的过滤器中是否存在所述目标文件信息,其中,所述过滤器中用于存储所述目标目录下的部分文件块中的文件信息;
[0021]目标文件获取模块,用于在判断结果为是时,则根据所述目标文件信息,获取对应的目标文件;
[0022]文件信息查找模块,用于在判断结果为否时,则从存储节点的磁盘中依次读取所述目标目录下的其它文件块,并将读取过的文件块的文件信息添加到过滤器中,直到查找到所述目标文件对应的目标文件信息为止,其中,所述其它文件块为所述目标目录下除了已存储在过滤器中的文件块以外的文件块。
[0023]第五方面,本专利技术实施例还提供了一种电子设备,包括:
[0024]一个或多个处理器;
[0025]存储装置,用于存储一个或多个程序,
[0026]当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本专利技术任一实施例所述的文件读取方法。
[0027]第六方面,本专利技术实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本专利技术任一实施例所述的文件读取方法。
[0028]本专利技术实施例中,通过预先建立的多线程请求队列,将获取的读取请求并行下发到各个存储节点后,若某一目标存储节点返回所请求的目标文件,则立即将目标文件立即返回请求方,其余存储节点返回的读取结果自动失效处理,由此避免了因等待所有存储节点完成读取操作后返回最终结果所导致的读取文件耗时大的问题,提升了文件的读取效率。
附图说明
[0029]图1a为本专利技术实施例一中的文件读取方法的流程图;
[0030]图1b为本专利技术实施例一中的云存储系统组网图以及数据存储流程;
[0031]图2a为本专利技术实施例二中的文件读取方法的流程图;
[0032]图2b为本专利技术实施例二中的读取目标文件的逻辑模块组成图;
[0033]图2c为本专利技术实施例二中的文件读取方法的逻辑流程图;
[0034]图3a是本专利技术实施例三中的文件读取方法的流程示意图;
[0035]图3b是本专利技术实施例三中的单个存储资源上文件系统的组成格式图;
[0036]图3c是本专利技术实施例三中的基本的布隆过滤原理图;
[0037]图4a是本专利技术实施例四中的文件读取方法的流程示意图;
[0038]图4b是本专利技术实施例四中的读取文件块的过程图;
[0039]图4c是本专利技术实施例四中的文件读取的逻辑流程图;
[0040]图5a是本专利技术实施例五中的文件读取方法的流程示意图;
[0041]图5b是本专利技术实施例五中三种情况下创建的过滤器的示意图;
[0042]图6是本专利技术实施例六中的文件读取方法的流程示意图;
[0043]图7是本专利技术实施例七中的文件读取装置的结构示意图;
[0044]图8是本专利技术实施例八中的文件读取装置的结构示意图;
[0045]图9是本专利技术实施例四中的电子设备的结构示意图。
具体实施方式
[0046]下面结合附图和实施例对本专利技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。
[0047]实施例一
[0048]图1a为本专利技术实施例一提供的文件读取本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种文件读取方法,其特征在于,应用于云存储系统中的数据产生设备,所述方法包括:获取目标文件的读取请求;通过预先创建的多线程请求队列,并行下发所述读取请求到各存储节点;在接收到目标存储节点返回的成功读取所述目标文件的消息时,将所述目标文件反馈给目标文件请求方,并将其它存储节点返回的读取结果消息设置为无效。2.根据权利要求1所述的方法,其特征在于,在将所述目标文件反馈给目标文件请求方之前,所述方法还包括:判断预先建立的结果收集器中是否已有成功读取到目标文件的标志;其中,所述结果收集器用于存储从存储节点读取到的目标文件;若否,则将所述目标文件复制到所述结果收集器中;若是,则将成功读取所述目标文件的消息设置为无效。3.根据权利要求2所述的方法,其特征在于,所述方法还包括:在接收到目标存储节点返回的未成功读取所述目标文件的消息时,判断所述目标存储节点是否为最后一个返回目标文件读取结果消息的存储节点;若是,则清空所述结果收集器。4.根据权利要求1所述的方法,其特征在于,获取目标文件的读取请求,包括:根据待读取的目标文件的名称信息、云存储系统中当前在线的存储节点数量以及各存储节点的编码,构建与当前在线存储节点数量相同的消息体,其中,每个消息体唯一对应一个在线的存储节点;相应的,通过预先创建的多线程请求队列,并行下发所述读取请求到各存储节点,包括:通过预先创建的多线程请求队列,将各消息体并行下发到各自对应的存储节点。5.一种文件读取方法,其特征在于,应用于云存储系统中的存储节点,所述方法包括:响应于对已经存储的目标文件的读取请求,在预先加载的目录树中确定所述目标文件对应的目标目录;根据所述目标目录下预先创建的过滤器,判断预先创建的过滤器中是否存在所述目标文件信息,其中,所述过滤器中用于存储所述目标目录下的部分文件块中的文件信息;若存在,则根据所述目标文件信息,获取对应的目标文件;若不存在,则从存储节点的磁盘中依次读取所述目标目录下的其它文件块,并将读取过的文件块的文件信息添加到过滤器中,直到查找到所述目标文件对应的目标文件信息为止,其中,所述其它文件块为所述目标目录下除了已存储在过滤器中的文件块以外的文件块。6.根据权利要求5所述的方法,其特征在于,所述过滤器中设置有...

【专利技术属性】
技术研发人员:张波波
申请(专利权)人:浙江宇视科技有限公司
类型:发明
国别省市:

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

1