System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及嵌入式设备数据存储,特别是涉及一种基于数据聚合的跨文件数据访问方法、系统及嵌入式设备。
技术介绍
1、随着嵌入式设备的性能提升和功能复杂化,越来越多的传感器被集成使用且各种传感器数据被分散记录在不同文件中,不仅加大了嵌入式文件系统的数据管理难度,而且复杂数据处理需求下传感器数据的读取访问会导致频繁出现图1所示的小数据量跨文件读取请求,而这种数据访问模式会导致严重的读放大问题,显著降低文件系统的吞吐量。
2、然而,现有嵌入式文件系统的研究主要集中于如何在处理能力和存储空间等资源受限环境下高效利用现有资源且降低内存开销,以及如何提升文件系统中小文件的访问性能等层面,并未涉及对文件进行较小数据量读取场景的优化研究,难以真正提升嵌入式设备的数据访问性能。
技术实现思路
1、本专利技术的目的是提供一种基于数据聚合的跨文件数据访问方法,针对内存受限的嵌入式设备场景,基于数据级优化层面设计聚合小数据块的存储与索引机制,能在占用较少内存的情况下快速读取数据,有效减少磁盘i/o操作次数和读放大问题,加快数据访问效率,进而有效提升跨文件数据访问性能。
2、为了实现上述目的,有必要针对上述技术问题,提供一种基于数据聚合的跨文件数据访问方法、系统、计算机设备及存储介质。
3、第一方面,本专利技术实施例提供了一种基于数据聚合的跨文件数据访问方法,所述方法包括以下步骤:
4、采集预设时长的数据访问时序信息,并将所述数据访问时序信息发送至服务器,以使
5、接收所述服务器传输的数据访问模式文件,根据所述数据访问模式文件,在预设存储区内创建对应的数据聚合存储块;
6、响应于上层应用的数据访问请求,判断对应的待读取数据内容是否存在匹配的数据访问模式,若存在,则从对应的数据聚合存储块中读取所述待读取数据内容,反之,则从对应的源文件中读取所述待读取数据内容。
7、进一步地,所述方法还包括:
8、响应于数据写入请求,判断对应的写入更新数据是否包含所述数据聚合存储块中的数据,若是,则同时更新所述数据聚合存储块和对应源文件中的数据,反之,则更新对应源文件的数据。
9、进一步地,所述数据访问时序信息包括多个文件读取信息;所述文件读取信息包括文件路径、读取偏移量、读取数据量大小和读取文件大小;
10、所述服务器对所述数据访问时序信息进行聚类分析,生成对应的数据访问模式文件的步骤包括:
11、将所述数据访问时序信息中各个文件读取信息的文件路径进行数值型标识转换,同时将各个文件读取信息的读取偏移量、读取数据量大小和读取文件大小进行归一化处理,得到对应的访问特征向量;
12、将所述数据访问时序信息对应的所有访问特征向量进行时序聚类分析,得到至少一个访问特征聚类簇;
13、根据各个访问特征聚类簇,生成对应的数据访问模式,并根据所有数据访问模式,生成所述数据访问模式文件;所述数据访问模式包括由多个文件数据信息构成的数据访问序列。
14、进一步地,所述文件数据信息包括数据所属文件路径、偏移方向、偏移量和数据大小;所述数据聚合存储块包括聚合存储块;
15、所述根据所述数据访问模式文件,在预设存储区内创建对应的数据聚合存储块的步骤包括:
16、根据设备逻辑分页大小,将所述数据访问模式文件中各个所述数据访问序列的各个文件数据信息进行转换,得到对应的逻辑分页数据信息,并根据各个逻辑分页数据信息,更新所述数据访问序列;所述逻辑分页数据信息包括数据所属文件路径和对应的逻辑页号范围;
17、提取各个数据访问序列对应的所有逻辑分页数据并聚合生成对应的聚合存储块;
18、通过预设哈希算法,生成所述数据访问序列对应的各个逻辑分页数据与对应聚合存储块中存储位置间的数据索引关系。
19、进一步地,所述数据访问模式文件还包括缓存文件数据序列;
20、所述根据各个访问特征聚类簇,生成对应的数据访问模式,并根据所有数据访问模式,生成所述数据访问模式文件的步骤包括:
21、根据各个访问特征聚类簇,生成对应的初始数据访问模式;
22、获取各个初始数据访问模式中重复文件数据信息,并根据所述重复文件数据信息,生成所述缓存文件数据序列;
23、将各个重复文件数据信息分别从对应的初始数据访问模式中移除,得到对应的数据访问模式;
24、根据所有数据访问模式和所述缓存文件数据序列,生成所述数据访问模式文件。
25、进一步地,所述数据聚合存储块包括聚合存储块和缓存数据块;所述根据所述数据访问模式文件,在预设存储区内创建对应的数据聚合存储块的步骤包括:
26、根据设备逻辑分页大小,将所述数据访问模式文件中各个所述数据访问序列的各个文件数据信息进行转换,得到对应的逻辑分页数据信息,并根据各个逻辑分页数据信息,更新所述数据访问序列;所述逻辑分页数据信息包括数据所属文件路径和对应的逻辑页号范围;
27、提取各个数据访问序列对应的所有逻辑分页数据并聚合生成对应的聚合存储块,以及生成所述数据访问序列对应的各个逻辑分页数据与对应聚合存储块中存储位置间的数据索引关系;
28、将所述缓存文件数据序列中的各个重复文件数据信息进行转换,得到对应的重复数据分页信息;
29、提取所述缓存文件数据序列对应的所有重复数据分页信息并聚合生成对应的缓存数据块,以及生成各个重复数据分页信息与对应缓存数据块中的存储位置间的数据索引关系。
30、进一步地,所述待读取数据内容包括待读取文件路径、待读取偏移和待读取数据大小;
31、所述判断对应的待读取数据内容是否存在匹配的数据访问模式的步骤包括:
32、判断各个数据访问模式是否包括所述待读取文件路径,若是,则根据所述待读取偏移和所述待读取数据大小,获取对应的待读取逻辑分页范围;
33、判断所述待读取逻辑分页范围内的各个待读取逻辑分页是否均存储于所述数据聚合存储块中,若是,则判定所述待读取数据内容存在匹配的数据访问模式,反之,则判定所述待读取数据内容不存在匹配的数据访问模式。
34、第二方面,本专利技术实施例提供了一种基于数据聚合的跨文件数据访问系统,所述系统包括:
35、模式分析模块,用于采集预设时长的数据访问时序信息,并将所述数据访问时序信息发送至服务器,以使所述服务器对所述数据访问时序信息进行聚类分析,生成对应的数据访问模式文件;所述数据访问模式文件包括至少一个数据访问模式;
36、数据聚合模块,用于接收所述服务器传输的数据访问模式文件,根据所述数据访问模式文件,在预设存储区内创建对应的数据聚合存储块;
37、加速读取模块,用于响应于上层应用的数据访问请本文档来自技高网...
【技术保护点】
1.一种基于数据聚合的跨文件数据访问方法,其特征在于,所述方法包括以下步骤:
2.如权利要求1所述的基于数据聚合的跨文件数据访问方法,其特征在于,所述方法还包括:
3.如权利要求1或2任一所述的基于数据聚合的跨文件数据访问方法,其特征在于,所述数据访问时序信息包括多个文件读取信息;所述文件读取信息包括文件路径、读取偏移量、读取数据量大小和读取文件大小;
4.如权利要求3所述的基于数据聚合的跨文件数据访问方法,其特征在于,所述文件数据信息包括数据所属文件路径、偏移方向、偏移量和数据大小;所述数据聚合存储块包括聚合存储块;
5.如权利要求3所述的基于数据聚合的跨文件数据访问方法,其特征在于,所述数据访问模式文件还包括缓存文件数据序列;
6.如权利要求5所述的基于数据聚合的跨文件数据访问方法,其特征在于,所述数据聚合存储块包括聚合存储块和缓存数据块;所述根据所述数据访问模式文件,在预设存储区内创建对应的数据聚合存储块的步骤包括:
7.如权利要求4或6任一所述的基于数据聚合的跨文件数据访问方法,其特征在于,所述待读取
8.一种基于数据聚合的跨文件数据访问系统,其特征在于,所述系统包括:
9.如权利要求8所示的基于数据聚合的跨文件数据访问系统,其特征在于,所述系统还包括:
10.一种嵌入式设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1~7中任一所述方法的步骤。
...【技术特征摘要】
1.一种基于数据聚合的跨文件数据访问方法,其特征在于,所述方法包括以下步骤:
2.如权利要求1所述的基于数据聚合的跨文件数据访问方法,其特征在于,所述方法还包括:
3.如权利要求1或2任一所述的基于数据聚合的跨文件数据访问方法,其特征在于,所述数据访问时序信息包括多个文件读取信息;所述文件读取信息包括文件路径、读取偏移量、读取数据量大小和读取文件大小;
4.如权利要求3所述的基于数据聚合的跨文件数据访问方法,其特征在于,所述文件数据信息包括数据所属文件路径、偏移方向、偏移量和数据大小;所述数据聚合存储块包括聚合存储块;
5.如权利要求3所述的基于数据聚合的跨文件数据访问方法,其特征在于,所述数据访问模式文件还包括缓存文件数据序列;
6.如权...
【专利技术属性】
技术研发人员:蒋铭峰,刘铎,陈咸彰,谭玉娟,任骜,钟刊,
申请(专利权)人:重庆大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。