CN105094701A - 一种自适应预读方法及装置 - Google Patents

一种自适应预读方法及装置 Download PDF

Info

Publication number
CN105094701A
CN105094701A CN201510429021.XA CN201510429021A CN105094701A CN 105094701 A CN105094701 A CN 105094701A CN 201510429021 A CN201510429021 A CN 201510429021A CN 105094701 A CN105094701 A CN 105094701A
Authority
CN
China
Prior art keywords
read
read request
sequence
reading mode
request sequence
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
Application number
CN201510429021.XA
Other languages
English (en)
Other versions
CN105094701B (zh
Inventor
卓保特
张书宁
刘友生
舒友村
杨善松
赵鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Wave Cloud Computing Service Co Ltd
Original Assignee
Inspur Beijing Electronic Information Industry Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Inspur Beijing Electronic Information Industry Co Ltd filed Critical Inspur Beijing Electronic Information Industry Co Ltd
Priority to CN201510429021.XA priority Critical patent/CN105094701B/zh
Publication of CN105094701A publication Critical patent/CN105094701A/zh
Application granted granted Critical
Publication of CN105094701B publication Critical patent/CN105094701B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种自适应预读方法及装置,上述方法包括以下步骤:接收读请求后,获取所述读请求对应的读模式及与所述读模式对应的预读参数;对所述读模式对应的读请求序列,按照预设更新匹配策略,进行更新匹配;获取匹配的读请求序列的匹配计数并根据所述读请求序列的新的匹配计数,调整所述读请求序列在读请求序列排序链表中的位置后,按照获取的预读参数进行预读;实现了自适应的统计每种读模式匹配成功的概率,并在运行过程中动态调整,新的读请求优先匹配概率高的读模式,以此减少匹配的搜索次数,提高预读算法的效率。

Description

一种自适应预读方法及装置
技术领域
本发明属于数据处理领域,尤其涉及一种自适应预读方法及装置。
背景技术
随着数字化时代到来,在人们的日常生活和科学研究中,越来越多的传统业务开始数字化、网络化,促使数据爆炸式增长,这使得存储系统在整个业务处理系统中的地位也愈发重要,然而源源不断的数据流导致存储系统产生严重的输入输出I/O瓶颈问题。
计算机系统的性能主要由处理子系统性能和I/O子系统性能两部分决定;其中,CPU处理速度始终保持了高速增长,而I/O子系统其存储容量虽然增长较快,但其处理速度增长远跟不上CPU处理速度增长。
现有技术中,为了解决上述问题,从寄存器、L1/L2高度缓存、内存、闪存、到磁盘/光盘/存储网络,各级存储器硬件组成了一个金字塔结构,越是底层存储容量越大,访问速度也越慢;在操作系统层面通过缓存系统来对金字塔结构的存储硬件进行支持,预读算法作为缓存系统的重要组成部分,对提高I/O子系统的性能至关重要;预读算法通过预测即将访问的页面,并通过提前将待访问的数据批量读入内存缓存,来减少访问磁盘次数,降低等待磁盘的延迟,从而提高I/O子系统的性能。
开源的Linux操作系统中,提供了一种按需预读的算法,该算法能有效的识别顺序读,在随机读模式下不会带来额外的时间和空间开销,且实现简单,性能较高;但是该算法支持的预读模式较少,不支持前向顺序读、跨步读等读模式,且在已有的算法框架下,较难扩展支持新的读模式。
在著名的文件系统ZFS中,提供了一种预读算法,该算法记录系统中的读请求历史序列,新的读请求到来时,与读请求序列中的每一个读请求依次比对,如果成功匹配前向/后向顺序读、跨步读等其中之一,则合并配对的两个读请求,并触发预读操作;如果未匹配成功,则加入到读请求序列。该算法记录了较多的读请求历史信息,能支持更多的读模式,但是查找配对的过程较为费时(假设系统支持m种读模式,记录了n个读请求信息,则每次查找的复杂度为O(n*m)),特别是在多个线程并发读取时。
发明内容
本发明提供一种自适应预读方法及装置,以解决上述问题。
本发明提供一种自适应预读方法。上述方法包括以下步骤:
接收读请求后,获取所述读请求对应的读模式及与所述读模式对应的预读参数;
对所述读模式对应的读请求序列,按照预设更新匹配策略,进行更新匹配;
获取匹配的读请求序列的匹配计数并根据所述读请求序列的新的匹配计数,调整所述读请求序列在读请求序列排序链表中的位置后,按照获取的预读参数进行预读。
本发明还提供一种自适应预读装置,包括获取模块、更新匹配模块、排序预读模块;其中,所述获取模块通过所述更新匹配模块与所述排序预读模块相连;
所述获取模块,用于接收读请求后,获取所述读请求对应的读模式及与所述读模式对应的预读参数并将所述读模式、所述预读参数发送至所述更新匹配模块;
所述更新匹配模块,用于对所述读模式对应的读请求序列,按照预设更新匹配策略,进行更新匹配并将匹配结果发送至所述排序预读模块;
所述排序预读模块,用于获取匹配的读请求序列的匹配计数并根据所述读请求序列的新的匹配计数,调整所述读请求序列在读请求序列排序链表中的位置后,按照获取的预读参数进行预读。
通过以下方案:接收读请求后,获取所述读请求对应的读模式及与所述读模式对应的预读参数;对所述读模式对应的读请求序列,按照预设更新匹配策略,进行更新匹配;获取匹配的读请求序列的匹配计数并根据所述读请求序列的新的匹配计数,调整所述读请求序列在读请求序列排序链表中的位置后,按照获取的预读参数进行预读;实现了自适应的统计每种读模式匹配成功的概率,并在运行过程中动态调整,新的读请求优先匹配概率高的读模式,以此减少匹配的搜索次数,提高预读算法的效率。
通过以下方案:所述读模式包括顺序读模式、跨步读模式;其中,所述顺序读模式包括前向顺序读、后向顺序读;所述跨步读模式包括前向跨步读、后向跨步读;有效匹配多种读模式,并灵活适用于不同的应用场景。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明实施例1的算法数据结构示意图;
图2为本发明实施例2的顺序读判定示意图;
图3为本发明实施例3的跨步读判定方法及预读长度示意图;
图4为本发明实施例4的预读算法处理流程图;
图5所示为本发明实施例5的自适应预读方法处理流程图;
图6所示为本发明实施例6的自适应预读装置结构图;
图7所示为本发明实施例7的又一自适应预读装置结构图;
图8所示为本发明实施例8的又一自适应预读装置结构图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
图1为本发明实施例1的算法数据结构示意图,如图1所示,读请求序列CNT使用双向链表来实现,即为图中标明的读请求链表;其中,有两个节点的读请求链表,表示已识别的跨步读序列;有一个节点的读请求链表,表示已识别的顺序读序列或未识别读模式的序列。
所有读请求序列也通过一双向链表进行链接,即为图中的读请求序列排序链表,该链表中的每一节点,保存对应读请求序列的概率统计值,该概率统计值表示该读请求序列被匹配成功的概率。算法实际实现时,该概率统计值使用读请求序列成功匹配次数表示。
应用层下发的读请求可由二元组R(offset,len)表示,为支持预读,增加prefetch_len表示预读的长度,增加prefetch_offset表示预读的偏移,由此成为四元组R(offset,len,prefetch_offset,prefetch_len)。
图2为本发明实施例2的顺序读判定示意图,如图2所示,展示了后向顺序读和前向顺序读的判定方法及预读长度。
后向顺序读需满足R2.offset=R1.offset+R1.len,另外R2触发的预读长度和起始偏移由以下规则确定:
如果R1.prefetch_len>=R2.len,则R2.prefetch_offset=R2.offset+R1.prefetch_len,R2.prefetch_len=R2.len;
如果R1.prefetch_len<R2.len,则R2.prefetch_offset=R2.offset+R2.len,R2.prefetch_len=R2.len;
前向顺序读需满足R2.offset+R2.len=R1.offset-1,另外R2触发的预读长度和起始偏移由以下规则确定:
如果R1.prefetch_len>=R2.len,则R2.prefetch_offset=R2.offset-R1.prefetch_len+R2.len,R2.prefetch_len=R2.len;
如果R1.prefetch_len<R2.len,则R2.prefetch_offset=R2.offset,R2.prefetch_len=R2.len。
图3为本发明实施例3的跨步读判定方法及预读长度示意图,如图3所示,后向跨步读需满足R2.offset=R1.offset+R1.len+stride,另外R2触发的预读长度和起始偏移由以下规则确定:
如果R1.prefetch_len>=R2.len,则R2.prefetch_offset=R2.offset+R2.len+stride,R2.prefetch_len=R2.len;
如果R1.prefetch_len<R2.len,R2需触发两次读操作,一是同步读,即把R2读请求尚未读入缓存的部分读入,即范围[R2.offset+R1.prefetch_len,R2.offset+R1.len]中的数据;二是预读,其中R2.prefetch_offset=R2.offset+R2.len+stride,R2.prefetch_len=R2.len。
前向跨步读需满足R2.offset+R2.len+stride=R1.offset-1,另外R2触发的预读长度和起始偏移由以下规则确定:
如果R1.prefetch_len>=R2.len,则R2.prefetch_offset=R2.offset-R2.len-stride,R2.prefetch_len=R2.len;
如果R1.prefetch_len<R2.len,R2需触发两次读操作,一是同步读,即把R2读请求尚未读入缓存的部分读入,即范围[R2.offset,R2.offset+R2.len-R1.prefetch_len]中的数据;二是预读,其中R2.prefetch_offset=R2.offset-R2.len-stride,R2.prefetch_len=R2.len。
另外跨步读判定模块还包括跨步读请求序列创建功能,判定一个跨步读请求序列成立,至少需要三个读请求,这三个读请求并未和任何读请求序列匹配并满足R2.offset-R1.offset-R1.len=R3.offset-R2.offset-R2.len,当R2.offset-R1.offset-R1.len>0时,为后向跨步读,R2.offset-R1.offset-R1.len<0时,为前向跨步读。若上述判定条件成立,则利用R2和R3创建一个跨步读请求序列。
图4为本发明实施例4的预读算法处理流程图,包括以下步骤:
步骤1:新的读请求到来时,首先进行顺序读模式判定,若判定为不属于顺序读模式(前向顺序读、后向顺序读)的一种,则跳转到步骤2,否则跳转到步骤4;
步骤2:继续进行跨步读模式判定,若判定为不属于跨步读模式(前向跨步读、后向跨步读)的一种,则跳转到步骤3,否则跳转到步骤4;
步骤3:若新的读请求无法与已确定的读模式匹配,则建立新的跨步读请求序列;若创建成功则跳转到步骤4,否则跳转到步骤8;
步骤4:更新匹配的读请求序列,对于顺序读请求序列,删除原读请求节点,添加当前读请求节点;对于跨步读请求序列,删除第一个读请求节点,添加当前读请求节点;
步骤5:增加匹配的读请求序列的匹配计数;
步骤6:根据该读请求序列的新的匹配计数,调整其在读请求序列排序链表中的位置;
步骤7:计算预读的偏移和大小,进行预读,跳转到步骤10;
步骤8:以当前读请求创建新的读请求序列,匹配计数初始化为1;
步骤9:将新的读请求序列添加到读请求序列排序链表的尾端
步骤10:算法结束。
图5所示为本发明实施例5的自适应预读方法处理流程图,包括以下步骤:
步骤501:接收读请求后,获取所述读请求对应的读模式及与所述读模式对应的预读参数;
进一步地,所述预读参数包括预读长度、预读偏移。
进一步地,所述读模式包括顺序读模式、跨步读模式;其中,所述顺序读模式包括前向顺序读、后向顺序读;所述跨步读模式包括前向跨步读、后向跨步读。
进一步地,所述前向顺序读、后向顺序读的判断过程如下:
读请求由二元组R(offset,len)表示时,若R2.offset+R2.len=R1.offset-1,则为前向顺序读;若R2.offset=R1.offset+R1.len,则为后向顺序读;其中,所述offset是指偏移参数、len是指长度参数。
进一步地,前向顺序读对应的预读长度、预读偏移为:
如果R1.prefetch_len>=R2.len,则R2.prefetch_offset=R2.offset-R1.prefetch_len+R2.len,R2.prefetch_len=R2.len;
如果R1.prefetch_len<R2.len,则R2.prefetch_offset=R2.offset,R2.prefetch_len=R2.len;其中,prefetch_len表示预读长度,prefetch_offset表示预读偏移。
进一步地,后向顺序读对应的预读长度、预读偏移为:
如果R1.prefetch_len>=R2.len,则R2.prefetch_offset=R2.offset+R1.prefetch_len,R2.prefetch_len=R2.len;
如果R1.prefetch_len<R2.len,则R2.prefetch_offset=R2.offset+R2.len,R2.prefetch_len=R2.len;其中,prefetch_len表示预读长度,prefetch_offset表示预读偏移。
进一步地,所述前向跨步读、后向跨步读的判断过程如下:
读请求由二元组R(offset,len)表示时,若R2.offset+R2.len+stride=R1.offset-1,则为前向跨步读;若R2.offset=R1.offset+R1.len+stride,则为后向跨步读;其中,所述offset是指偏移参数、len是指长度参数。
进一步地,前向跨步读对应的预读长度、预读偏移为:
如果R1.prefetch_len>=R2.len,则R2.prefetch_offset=R2.offset-R2.len-stride,R2.prefetch_len=R2.len。
如果R1.prefetch_len<R2.len,则R2.prefetch_offset=R2.offset-R2.len-stride,R2.prefetch_len=R2.len;其中,prefetch_len表示预读长度,prefetch_offset表示预读偏移。
进一步地,后向跨步读对应的预读长度、预读偏移为:
如果R1.prefetch_len>=R2.len,则R2.prefetch_offset=R2.offset+R2.len+stride,R2.prefetch_len=R2.len;
如果R1.prefetch_len<R2.len,R2.prefetch_offset=R2.offset+R2.len+stride,R2.prefetch_len=R2.len;其中,prefetch_len表示预读长度,prefetch_offset表示预读偏移。
进一步地,接收读请求后,获取所述读请求对应的读模式及与所述读模式对应的预读参数之前,还包括:初始化用于预读的全局数据结构。
进一步地,若所述读请求无法匹配与读模式对应的读请求序列时,则为所述读请求创建新的读请求序列并添加至读请求序列的排序链表。
进一步地,若所述读请求无法匹配与读模式对应的读请求序列时,则为所述读请求创建新的读请求序列并添加至读请求序列的排序链表后,将所述读请求序列的匹配次数记为1并将新的读请求序列添加到读请求序列排序链表的尾端。
进一步地,若所述读请求无法匹配与读模式对应的读请求序列时,则为所述读请求创建新的读请求序列并添加至读请求序列的排序链表的过程为:
若所述读请求无法匹配与读模式对应的读请求序列时,获取至少三个读请求且所述三个读请求并未和任何读请求序列匹配并满足预设条件时,创建新的跨步读请求序列并添加至读请求序列的排序链表。
其中,所述预设条件为:若为三个读请求即R1(offset,len,prefetch_offset,prefetch_len);R2(offset,len,prefetch_offset,prefetch_len);R3(offset,len,prefetch_offset,prefetch_len);其中,prefetch_len表示预读长度,prefetch_offset表示预读偏移;
则R2.offset-R1.offset-R1.len=R3.offset-R2.offset-R2.len,当R2.offset-R1.offset-R1.len>0时,为后向跨步读,R2.offset-R1.offset-R1.len<0时,为前向跨步读。
上述预设条件成立,则利用R2和R3创建一个新的跨步读请求序列。
步骤502:对所述读模式对应的读请求序列,按照预设更新匹配策略,进行更新匹配;
进一步地,对所述读模式对应的读请求序列,按照预设更新匹配策略,进行更新匹配的过程为:
若为顺序读请求序列,则删除原读请求节点,添加当前读请求节点;对于跨步读请求序列,删除第一个读请求节点,添加当前读请求节点。
步骤503:获取匹配的读请求序列的匹配计数并根据所述读请求序列的新的匹配计数,调整所述读请求序列在读请求序列排序链表中的位置后,按照获取的预读参数进行预读。
图6所示为本发明实施例6的自适应预读装置结构图,包括获取模块、更新匹配模块、排序预读模块;其中,所述获取模块通过所述更新匹配模块与所述排序预读模块相连;
所述获取模块,用于接收读请求后,获取所述读请求对应的读模式及与所述读模式对应的预读参数并将所述读模式、所述预读参数发送至所述更新匹配模块;
所述更新匹配模块,用于对所述读模式对应的读请求序列,按照预设更新匹配策略,进行更新匹配并将匹配结果发送至所述排序预读模块;
所述排序预读模块,用于获取匹配的读请求序列的匹配计数并根据所述读请求序列的新的匹配计数,调整所述读请求序列在读请求序列排序链表中的位置后,按照获取的预读参数进行预读。
图7所示为本发明实施例7的又一自适应预读装置结构图,在图6的基础上,增加了“创建模块”,所述创建模块与所述获取模块相连;
所述创建模块,用于若所述读请求无法匹配与读模式对应的读请求序列时,则为所述读请求创建新的读请求序列并添加至读请求序列的排序链表。
图8所示为本发明实施例8的又一自适应预读装置结构图,在图6的基础上,增加了“初始化模块”,所述初始化模块与所述获取模块相连;
所述初始化模块,用于初始化用于预读的全局数据结构。
通过以下方案:接收读请求后,获取所述读请求对应的读模式及与所述读模式对应的预读参数;对所述读模式对应的读请求序列,按照预设更新匹配策略,进行更新匹配;获取匹配的读请求序列的匹配计数并根据所述读请求序列的新的匹配计数,调整所述读请求序列在读请求序列排序链表中的位置后,按照获取的预读参数进行预读;实现了自适应的统计每种读模式匹配成功的概率,并在运行过程中动态调整,新的读请求优先匹配概率高的读模式,以此减少匹配的搜索次数,提高预读算法的效率。
通过以下方案:所述读模式包括顺序读模式、跨步读模式;其中,所述顺序读模式包括前向顺序读、后向顺序读;所述跨步读模式包括前向跨步读、后向跨步读;有效匹配多种读模式,并灵活适用于不同的应用场景。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种自适应预读方法,其特征在于,包括以下步骤:
接收读请求后,获取所述读请求对应的读模式及与所述读模式对应的预读参数;
对所述读模式对应的读请求序列,按照预设更新匹配策略,进行更新匹配;
获取匹配的读请求序列的匹配计数并根据所述读请求序列的新的匹配计数,调整所述读请求序列在读请求序列排序链表中的位置后,按照获取的预读参数进行预读。
2.根据权利要求1所述的方法,其特征在于,所述预读参数包括预读长度、预读偏移。
3.根据权利要求1所述的方法,其特征在于,所述读模式包括顺序读模式、跨步读模式;其中,所述顺序读模式包括前向顺序读、后向顺序读;所述跨步读模式包括前向跨步读、后向跨步读。
4.根据权利要求3所述的方法,其特征在于,对所述读模式对应的读请求序列,按照预设更新匹配策略,进行更新匹配的过程为:
若为顺序读请求序列,则删除原读请求节点,添加当前读请求节点;对于跨步读请求序列,删除第一个读请求节点,添加当前读请求节点。
5.根据权利要求1所述的方法,其特征在于,若所述读请求无法匹配与读模式对应的读请求序列时,则为所述读请求创建新的读请求序列并添加至读请求序列的排序链表。
6.根据权利要求5所述的方法,其特征在于,若所述读请求无法匹配与读模式对应的读请求序列时,则为所述读请求创建新的读请求序列并添加至读请求序列的排序链表后,还包括:
将所述读请求序列的匹配次数记为1并将新的读请求序列添加到读请求序列排序链表的尾端。
7.根据权利要求1所述的方法,其特征在于,接收读请求后,获取所述读请求对应的读模式及与所述读模式对应的预读参数之前,还包括:初始化用于预读的全局数据结构。
8.一种自适应预读装置,其特征在于,包括获取模块、更新匹配模块、排序预读模块;其中,所述获取模块通过所述更新匹配模块与所述排序预读模块相连;
所述获取模块,用于接收读请求后,获取所述读请求对应的读模式及与所述读模式对应的预读参数并将所述读模式、所述预读参数发送至所述更新匹配模块;
所述更新匹配模块,用于对所述读模式对应的读请求序列,按照预设更新匹配策略,进行更新匹配并将匹配结果发送至所述排序预读模块;
所述排序预读模块,用于获取匹配的读请求序列的匹配计数并根据所述读请求序列的新的匹配计数,调整所述读请求序列在读请求序列排序链表中的位置后,按照获取的预读参数进行预读。
9.根据权利要求8所述的装置,其特征在于,还包括创建模块;所述创建模块与所述获取模块相连;
所述创建模块,用于若所述读请求无法匹配与读模式对应的读请求序列时,则为所述读请求创建新的读请求序列并添加至读请求序列的排序链表。
10.根据权利要求8所述的装置,其特征在于,还包括初始化模块;其中,所述初始化模块与所述获取模块相连;
所述初始化模块,用于初始化用于预读的全局数据结构。
CN201510429021.XA 2015-07-20 2015-07-20 一种自适应预读方法及装置 Active CN105094701B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510429021.XA CN105094701B (zh) 2015-07-20 2015-07-20 一种自适应预读方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510429021.XA CN105094701B (zh) 2015-07-20 2015-07-20 一种自适应预读方法及装置

Publications (2)

Publication Number Publication Date
CN105094701A true CN105094701A (zh) 2015-11-25
CN105094701B CN105094701B (zh) 2018-02-27

Family

ID=54575261

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510429021.XA Active CN105094701B (zh) 2015-07-20 2015-07-20 一种自适应预读方法及装置

Country Status (1)

Country Link
CN (1) CN105094701B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111881096A (zh) * 2020-07-24 2020-11-03 北京浪潮数据技术有限公司 一种文件读取方法、装置、设备及存储介质
CN113377725A (zh) * 2021-08-13 2021-09-10 苏州浪潮智能科技有限公司 一种内核客户端的预读方法、系统及计算机可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5410653A (en) * 1992-06-16 1995-04-25 International Business Machines Corporation Asynchronous read-ahead disk caching using multiple disk I/O processes and dynamically variable prefetch length
US6721870B1 (en) * 2001-06-12 2004-04-13 Emc Corporation Prefetch algorithm for short sequences
CN103250141A (zh) * 2010-12-01 2013-08-14 国际商业机器公司 联网的客户端-服务器体系结构中的预读处理
CN104715048A (zh) * 2015-03-26 2015-06-17 浪潮集团有限公司 一种文件系统缓存预读取方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5410653A (en) * 1992-06-16 1995-04-25 International Business Machines Corporation Asynchronous read-ahead disk caching using multiple disk I/O processes and dynamically variable prefetch length
US6721870B1 (en) * 2001-06-12 2004-04-13 Emc Corporation Prefetch algorithm for short sequences
CN103250141A (zh) * 2010-12-01 2013-08-14 国际商业机器公司 联网的客户端-服务器体系结构中的预读处理
CN104715048A (zh) * 2015-03-26 2015-06-17 浪潮集团有限公司 一种文件系统缓存预读取方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111881096A (zh) * 2020-07-24 2020-11-03 北京浪潮数据技术有限公司 一种文件读取方法、装置、设备及存储介质
CN111881096B (zh) * 2020-07-24 2022-06-17 北京浪潮数据技术有限公司 一种文件读取方法、装置、设备及存储介质
CN113377725A (zh) * 2021-08-13 2021-09-10 苏州浪潮智能科技有限公司 一种内核客户端的预读方法、系统及计算机可读存储介质
CN113377725B (zh) * 2021-08-13 2021-11-12 苏州浪潮智能科技有限公司 一种内核客户端的预读方法、系统及计算机可读存储介质
WO2023015778A1 (zh) * 2021-08-13 2023-02-16 苏州浪潮智能科技有限公司 一种内核客户端的预读方法、系统及计算机可读存储介质
US11914551B2 (en) 2021-08-13 2024-02-27 Inspur Suzhou Intelligent Technology Co., Ltd. Pre-reading method and system of kernel client, and computer-readable storage medium

Also Published As

Publication number Publication date
CN105094701B (zh) 2018-02-27

Similar Documents

Publication Publication Date Title
Wang et al. An efficient design and implementation of LSM-tree based key-value store on open-channel SSD
US8010766B2 (en) Increasing buffer locality during multiple table access operations
CN101887398B (zh) 一种动态提高服务器输入输出吞吐量的方法和系统
US9244980B1 (en) Strategies for pushing out database blocks from cache
US20180143878A1 (en) De-duplicated virtual machine image transfer
US9817865B2 (en) Direct lookup for identifying duplicate data in a data deduplication system
US10135928B2 (en) Network interface device having general-purpose computing capability
CN106484368B (zh) 一种基于Spark语义的数据重用方法及其系统
CN103514210A (zh) 小文件处理方法及装置
CN106569963A (zh) 缓存方法和装置
US9946461B2 (en) In-flash immutable object processing
WO2020037511A1 (zh) 数据存储及获取方法和装置
CN110059024B (zh) 一种内存空间数据缓存方法及装置
CN105094701A (zh) 一种自适应预读方法及装置
Tulkinbekov et al. CaseDB: Lightweight key-value store for edge computing environment
CN116560562A (zh) 一种读、写数据方法及装置
Du et al. Analysis of image processing algorithm based on bionic intelligent optimization
CN116185287A (zh) 一种降低读延时的方法、装置及固态硬盘
Bian et al. Rainbow: Adaptive layout optimization for wide tables
KR20230117692A (ko) 하이브리드 데이터베이스 가속 장치, 시스템 및 방법
US7937541B2 (en) Speed selective table scan operation
JP6224684B2 (ja) ストアマージ装置、情報処理装置、およびストア制御方法、並びにコンピュータ・プログラム
He et al. Research on key technologies of NBD storage service system based on load classification
CN113901007A (zh) 一种面向ai训练的海量小文件分布式缓存方法
CN103631726B (zh) 一种串接流式计算节点的文件处理方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20180827

Address after: 200436 Room 411, No. three, JIANGCHANG Road, Jingan District, Shanghai, 411

Patentee after: Shanghai wave Cloud Computing Service Co., Ltd.

Address before: 100085 floor 1, C 2-1, No. 2, Shang Di Road, Haidian District, Beijing.

Patentee before: Electronic information industry Co.,Ltd of the tide (Beijing)

TR01 Transfer of patent right