CN107992271B - 数据预读方法、装置、设备及计算机可读存储介质 - Google Patents
数据预读方法、装置、设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN107992271B CN107992271B CN201711395320.1A CN201711395320A CN107992271B CN 107992271 B CN107992271 B CN 107992271B CN 201711395320 A CN201711395320 A CN 201711395320A CN 107992271 B CN107992271 B CN 107992271B
- Authority
- CN
- China
- Prior art keywords
- data
- read
- client
- reading
- shared memory
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000004590 computer program Methods 0.000 claims description 11
- 230000008569 process Effects 0.000 claims description 8
- 238000004140 cleaning Methods 0.000 claims description 6
- 239000007787 solid Substances 0.000 claims description 5
- 230000006870 function Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0643—Management of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0674—Disk device
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本发明公开了一种数据预读方法、装置、设备及计算机可读存储介质,本发明包括预先将硬盘中的各个文件的前预设字节大小的数据存入预设存储设备中,其中,预设存储设备中的数据读取速度大于硬盘中的数据读取速度;接收客户端发送的数据读取请求;判断缓存空间中是否有待读取的数据,若是,则根据数据读取请求将缓存空间中相应的待读取的数据返回至客户端,若否,则根据数据读取请求将预设存储设备中相应的待读取的数据返回至客户端。由于本发明首次读取是读取的预设存储设备中的数据,并且由于读取预设存储设备中的数据的速度大于读取硬盘中的数据的速度,因此本发明提高了首次读取数据的速度,从而提高了读取数据的效率。
Description
技术领域
本发明涉及数据读取技术领域,特别是涉及一种数据预读方法。本发明还涉及一种数据预读装置、设备及计算机可读存储介质。
背景技术
现在的时代是高速发展的互联网时代,已经从PC发展到移动互联网,无处不在的数字化信息产生了海量的数据和文件,并且这些数据和文件还在不断增长,面对无休无止增长起来的数据及越来越大的文件,要访问、存储和管理这些数据和文件变得越来越困难,为了加快对这些海量的大数据进行读取,现有技术提出了一种缓存机制,在这种缓存机制中,客户端的一次读取操作分为实读和预读两部分完成,实读即为读取文件位置和数据长度与用户实际发起的读取操作相符,最终将指定的数据返回给客户端。预读即为在本次实读读取文件结束的位置向后继续读取长度为len的数据,并将该长度为len的数据放到缓存空间,等下次用户发起针对这部分数据的读取请求时便可以直接返回该数据了。
现有技术中提供的预读机制在第一次读取时,由于没有进行过读取操作,因此缓存空间中并没有存放进行预读操作读取的数据,因此在第一次读取时只能到硬盘中读取对应的数据,由于读取硬盘中的数据的读取速度较慢,因此会导致首次读取时会产生延迟,读取速度慢,从而造成了读取数据效率低的问题。
因此,如何提供一种读取数据的效率高的数据预读方法、装置、设备及计算机可读存储介质是本领域技术人员需要解决的问题。
发明内容
本发明的目的是提供一种数据预读方法,其能够提高读取数据的效率;本发明的另一目的是提供一种包括上述数据预读方法的装置、设备及计算机可读存储介质,其也能够提高读取数据的效率。
为解决上述技术问题,本发明提供了一种数据预读方法,包括:
预先将硬盘中的各个文件的前预设字节大小的数据存入预设存储设备中,其中,所述预设存储设备中的数据读取速度大于所述硬盘中的数据读取速度;
接收客户端发送的数据读取请求;
判断缓存空间中是否有待读取的数据,若是,则根据所述数据读取请求将所述缓存空间中相应的待读取的数据返回至所述客户端,若否,则根据所述数据读取请求将所述预设存储设备中相应的待读取的数据返回至所述客户端。
优选地,所述根据所述数据读取请求将所述缓存空间中相应的待读取的数据返回至所述客户端的过程具体包括:
根据所述数据读取请求生成申请消息并发送至共享内存;
判断所述共享内存是否充足,若是,则从所述共享内存获取内存块;
并将所述缓存空间中相应的待读取的数据拷贝至所述内存块;
将携带所述缓存空间中相应的待读取的数据的内存块返回至所述客户端;
若否,则向所述客户端返回所述共享内存不足的提示。
优选地,所述根据所述数据读取请求将所述预设存储设备中相应的待读取的数据返回至所述客户端的过程具体包括:
根据所述数据读取请求生成申请消息并发送至共享内存;
判断所述共享内存是否充足,若是,则从所述共享内存获取内存块;
并将所述预设存储设备中相应的待读取的数据拷贝至所述内存块;
将携带所述预设存储设备中相应的待读取的数据的内存块返回至所述客户端;
若否,则向所述客户端返回所述共享内存不足的提示。
优选地,在所述向所述客户端返回所述共享内存不足的提示时,还包括:
启动清理线程对所述共享内存进行清理。
优选地,所述预设存储设备为固态硬盘。
为解决上述技术问题,本发明还提供了一种数据预读装置,包括:
存储单元,用于预先将硬盘中的各个文件的前预设字节大小的数据存入预设存储设备中;其中,所述预设存储设备中的数据读取速度大于所述硬盘中的数据读取速度;
接收单元,用于接收客户端发送的数据读取请求;
处理单元,用于判断缓存空间中是否有待读取的数据,若是,则根据所述数据读取请求将所述缓存空间中相应的待读取的数据返回至所述客户端,若否,则根据所述数据读取请求将所述预设存储设备中相应的待读取的数据返回至所述客户端。
优选地,所述处理单元包括:
发送子单元,用于根据所述数据读取请求生成申请消息并发送至共享内存;
第一处理子单元,用于判断所述共享内存是否充足,若是,则从所述共享内存获取内存块;并将所述缓存空间中相应的待读取的数据拷贝至所述内存块;将携带所述缓存空间中相应的待读取的数据的内存块返回至所述客户端;若否,则向所述客户端返回所述共享内存不足的提示。
优选地,所述处理单元包括:
发送子单元,用于根据所述数据读取请求生成申请消息并发送至共享内存;
第二处理子单元,用于判断所述共享内存是否充足,若是,则从所述共享内存获取内存块;并将所述预设存储设备中相应的待读取的数据拷贝至所述内存块;将携带所述预设存储设备中相应的待读取的数据的内存块返回至所述客户端;若否,则向所述客户端返回所述共享内存不足的提示。
为解决上述技术问题,本发明还提供了一种数据预读设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上述任一项所述的数据预读方法的步骤。
为解决上述技术问题,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一项所述的数据预读方法的步骤。
本发明提供了一种数据预读方法、装置、设备及计算机可读存储介质,本发明包括预先将硬盘中的各个文件的前预设字节大小的数据存入预设存储设备中,其中,预设存储设备中的数据读取速度大于硬盘中的数据读取速度;接收客户端发送的数据读取请求;判断缓存空间中是否有待读取的数据,若是,则根据数据读取请求将缓存空间中相应的待读取的数据返回至客户端,若否,则根据数据读取请求将预设存储设备中相应的待读取的数据返回至客户端。本发明将待读取的各个文件的前预设字节大小的数据存入预设存储设备,在读取数据时若缓存空间中没有待读取的数据,则说明该读取操作为首次读取,此时从预设存储设备中将需要读取的文件对应的数据读取到客户端,完成首次读取,由于本发明首次读取是读取的预设存储设备中的数据,并且由于读取预设存储设备中的数据的速度大于读取硬盘中的数据的速度,因此本发明提高了首次读取数据的速度,从而提高了读取数据的效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的一种数据预读方法的流程图;
图2为本发明提供的一种数据预读装置的结构示意图。
具体实施方式
本发明的核心是提供一种数据预读方法,其能够提高读取数据的效率;本发明的另一核心是提供一种包括上述数据预读方法的装置、设备及计算机可读存储介质,其也能够提高读取数据的效率。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供了一种数据预读方法,如图1所示,图1为本发明提供的一种数据预读方法的流程图,该方法包括以下步骤:
步骤S1:预先将硬盘中的各个文件的前预设字节大小的数据存入预设存储设备中,其中,读取预设存储设备中的数据的速度大于读取硬盘中的数据的速度。
需要说明的是,客户端在进行首次读取时,一般都是到硬盘中从文件的文件头中的数据开始读取,因此本发明预先将硬盘中的所有文件的前预设字节大小的数据(即硬盘中文件头的数据)存入预设存储设备,预设字节大小可以根据实际情况进行设置,客户端在首次读取时将会读取预设存储设备中的数据,由于预设存储设备中的数据读取速度大于硬盘中的数据读取速度,因此本发明提高了客户端在首次读取时的读取速度,从而提高了数据读取效率。
步骤S2:接收客户端发送的数据读取请求。
需要说明的是,客户端的读取操作通过调用入口函数libicfs.so中的icfs_read函数开始,然后会调用客户端的read、read_asyn和GShmFileCacher::file_read进入读取逻辑,接收到客户端发送的数据读取请求后,获取数据读取请求中携带的待读取的数据的地址,以及带读取的数据的大小等信息。
步骤S3:判断缓存空间中是否有待读取的数据,若是,则进入步骤S4,若否,则进入步骤S5。
步骤S4:根据数据读取请求将缓存空间中相应的待读取的数据返回至客户端。
步骤S5:根据数据读取请求将预设存储设备中相应的待读取的数据返回至客户端。
需要说明的是,根据待读取数据的地址查找缓存空间,并判断缓存空间中是否有待读取的数据,若缓存空间中有待读取的数据,则说明此次读取操作不是首次读取,此时,将缓存空间中的数据返回至客户端,完成读取操作。若缓存空间中没有待读取的数据,则说明此次读取操作为首次读取,此时,由于预设存储设备中存储有所有文件的前预设字节大小的数据,因此可以到预测存储设备中读取相应的数据,将预设存储空间中待读取的数据返回至客户端,完成读取操作。
作为优选的,根据数据读取请求将缓存空间中相应的待读取的数据返回至客户端的过程具体包括:
根据数据读取请求生成申请消息并发送至共享内存;
判断共享内存是否充足,若是,则从共享内存获取内存块;
并将缓存空间中相应的待读取的数据拷贝至内存块;
将携带缓存空间中相应的待读取的数据的内存块返回至客户端;
若否,则向客户端返回共享内存不足的提示。
需要说明的是,本发明实施例提供的一种数据预读方法应用在分布式文件***中的时候是通过共享内存将缓存空间中相应的待读取的数据返回至客户端,具体的过程为:客户端调用相应的函数发起读取操作,根据客户端传入的读取参数计算目标区域映射到文件对象上的信息,并创建bufferhead数据结构;根据bufferhead向共享内存发送申请消息,***判断共享内存是否充足,若是,则允许客户端调用内存块,若否,则向客户端返回共享内存不足的提示。客户端根据调用的共享内存块的地址填充bufferhead类中的bufflist数据列表(即把bufferhead数据结构指向共享内存地址),并发起异步读取操作,等待分布式集群返回数据并将其放到本地缓存空间中,从本地缓存空间拷贝数据进入上述指向共享内存地址的数据结构中(即为将数据拷贝至内存块),根据客户端实际读取的数据区域,将相应的数据结构(指向共享内存块地址的数据结构,即为相应的内存块)返回至客户端。
作为优选的,根据数据读取请求将预设存储设备中相应的待读取的数据返回至客户端的过程具体包括:
根据数据读取请求生成申请消息并发送至共享内存;
判断共享内存是否充足,若是,则从共享内存获取内存块;
并将预设存储设备中相应的待读取的数据拷贝至内存块;
将携带预设存储设备中相应的待读取的数据的内存块返回至客户端;
若否,则向客户端返回共享内存不足的提示。
需要说明的是,本发明实施例提供的一种数据预读方法应用在分布式文件***中的时候是通过共享内存将预设存储设备中相应的待读取的数据返回至客户端,具体的过程为:客户端调用相应的函数发起读取操作,根据客户端传入的读取参数计算目标区域映射到文件对象上的信息,并创建bufferhead数据结构;根据bufferhead向共享内存发送申请消息,***判断共享内存是否充足,若是,则允许客户端调用内存块,若否,则向客户端返回共享内存不足的提示。客户端根据调用的共享内存块的地址填充bufferhead类中的bufflist数据列表(即把bufferhead数据结构指向共享内存地址),将预设存储设备中相应的待读取的数据拷贝至上述指向共享内存地址的数据结构中,根据客户端实际读取的数据区域,将相应的数据结构(指向共享内存块地址的数据结构,即为相应的内存块)返回至客户端。
作为优选的,在向客户端返回共享内存不足的提示时,还包括:
启动清理线程对共享内存进行清理。
需要说明的是,由于在分布式文件***中除了读取操作需要占用共享内存,其他操作也会占用共享内存,因此在向客户端返回共享内存不足的提示时,***启动清理线程对共享内存进行清理,释放共享内存的空间,在共享空间被释放后,客户端继续向共享内存申请内存块,完成数据读取操作。
可以理解的是,及时清理共享内存,能够保证数据读取操作正常进行,有利于提高工作效率。
作为优选的,预设存储设备为固态硬盘。
需要说明的是,固态硬盘是用固态电子存储芯片阵列而制成的硬盘,其拥有读写速度快、低功耗、无噪音、工作温度范围大等优点,本发明选用固态硬盘作为存储设备能够加速客户端读取数据的速度,能够消除客户端在首次读取数据时产生的延迟,从而提高了数据读取效率。
本发明提供了一种数据预读方法,包括预先将硬盘中的各个文件的前预设字节大小的数据存入预设存储设备中,其中,预设存储设备中的数据读取速度大于硬盘中的数据读取速度;接收客户端发送的数据读取请求;判断缓存空间中是否有待读取的数据,若是,则根据数据读取请求将缓存空间中相应的待读取的数据返回至客户端,若否,则根据数据读取请求将预设存储设备中相应的待读取的数据返回至客户端。本发明将待读取的各个文件的前预设字节大小的数据存入预设存储设备,在读取数据时若缓存空间中没有待读取的数据,则说明该读取操作为首次读取,此时从预设存储设备中将需要读取的文件对应的数据读取到客户端,完成首次读取,由于本发明首次读取是读取的预设存储设备中的数据,并且由于读取预设存储设备中的数据的速度大于读取硬盘中的数据的速度,因此本发明提高了首次读取数据的速度,从而提高了读取数据的效率。
本发明还提供了一种数据预读装置,如图2所示,图2为本发明提供的一种数据预读装置的结构示意图,该装置包括:
存储单元1,用于预先将硬盘中的各个文件的前预设字节大小的数据存入预设存储设备中;其中,读取预设存储设备中的数据的速度大于读取硬盘中的数据的速度;
接收单元2,用于接收客户端发送的数据读取请求;
处理单元3,用于判断缓存空间中是否有待读取的数据,若是,则根据数据读取请求将缓存空间中相应的待读取的数据返回至客户端,若否,则根据数据读取请求将预设存储设备中相应的待读取的数据返回至客户端。
作为优选的,处理单元3包括:
发送子单元,用于根据数据读取请求生成申请消息并发送至共享内存;
第一处理子单元,用于判断共享内存是否充足,若是,则从共享内存获取内存块;并将缓存空间中相应的待读取的数据拷贝至内存块;将携带缓存空间中相应的待读取的数据的内存块返回至客户端;若否,则向客户端返回共享内存不足的提示。
作为优选的,处理单元3包括:
发送子单元,用于根据数据读取请求生成申请消息并发送至共享内存;
第二处理子单元,用于判断共享内存是否充足,若是,则从共享内存获取内存块;并将预设存储设备中相应的待读取的数据拷贝至内存块;将携带预设存储设备中相应的待读取的数据的内存块返回至客户端;若否,则向客户端返回共享内存不足的提示。
作为优选的,还包括:
清理单元,用于启动清理线程对所述共享内存进行清理。
本发明提供了一种数据预读装置,包括存储单元,用于预先将硬盘中的各个文件的前预设字节大小的数据存入预设存储设备中,其中,预设存储设备中的数据读取速度大于硬盘中的数据读取速度;接收单元,用于接收客户端发送的数据读取请求;处理单元,用于判断缓存空间中是否有待读取的数据,若是,则根据数据读取请求将缓存空间中相应的待读取的数据返回至客户端,若否,则根据数据读取请求将预设存储设备中相应的待读取的数据返回至客户端。本发明将待读取的各个文件的前预设字节大小的数据存入预设存储设备,在读取数据时若缓存空间中没有待读取的数据,则说明该读取操作为首次读取,此时从预设存储设备中将需要读取的文件对应的数据读取到客户端,完成首次读取,由于本发明首次读取是读取的预设存储设备中的数据,并且由于读取预设存储设备中的数据的速度大于读取硬盘中的数据的速度,因此本发明提高了首次读取数据的速度,从而提高了读取数据的效率。
本发明还提供了一种数据预读设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行计算机程序时实现如上述任一项的数据预读方法的步骤。
本发明还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述任一项的数据预读方法的步骤。
对于本发明提供的一种数据预读设备及计算机可读存储介质的介绍请参照上述方法实施例,本发明在此不在赘述。
以上对本发明所提供一种数据预读方法、装置、设备及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
Claims (10)
1.一种数据预读方法,其特征在于,包括:
预先将硬盘中的各个文件的前预设字节大小的数据存入预设存储设备中,其中,所述预设存储设备中的数据读取速度大于所述硬盘中的数据读取速度;
接收客户端发送的数据读取请求;
判断缓存空间中是否有待读取的数据,若是,则根据所述数据读取请求将所述缓存空间中相应的待读取的数据返回至所述客户端,若否,则根据所述数据读取请求将所述预设存储设备中相应的待读取的数据返回至所述客户端。
2.根据权利要求1所述的数据预读方法,其特征在于,所述根据所述数据读取请求将所述缓存空间中相应的待读取的数据返回至所述客户端的过程具体包括:
根据所述数据读取请求生成申请消息并发送至共享内存;
判断所述共享内存是否充足,若是,则从所述共享内存获取内存块;
并将所述缓存空间中相应的待读取的数据拷贝至所述内存块;
将携带所述缓存空间中相应的待读取的数据的内存块返回至所述客户端;
若否,则向所述客户端返回所述共享内存不足的提示。
3.根据权利要求1所述的数据预读方法,其特征在于,所述根据所述数据读取请求将所述预设存储设备中相应的待读取的数据返回至所述客户端的过程具体包括:
根据所述数据读取请求生成申请消息并发送至共享内存;
判断所述共享内存是否充足,若是,则从所述共享内存获取内存块;
并将所述预设存储设备中相应的待读取的数据拷贝至所述内存块;
将携带所述预设存储设备中相应的待读取的数据的内存块返回至所述客户端;
若否,则向所述客户端返回所述共享内存不足的提示。
4.根据权利要求2或3所述的数据预读方法,其特征在于,在所述向所述客户端返回所述共享内存不足的提示时,还包括:
启动清理线程对所述共享内存进行清理。
5.根据权利要求4所述的数据预读方法,其特征在于,所述预设存储设备为固态硬盘。
6.一种数据预读装置,其特征在于,包括:
存储单元,用于预先将硬盘中的各个文件的前预设字节大小的数据存入预设存储设备中;其中,所述预设存储设备中的数据读取速度大于所述硬盘中的数据读取速度;
接收单元,用于接收客户端发送的数据读取请求;
处理单元,用于判断缓存空间中是否有待读取的数据,若是,则根据所述数据读取请求将所述缓存空间中相应的待读取的数据返回至所述客户端,若否,则根据所述数据读取请求将所述预设存储设备中相应的待读取的数据返回至所述客户端。
7.根据权利要求6所述的数据预读装置,其特征在于,所述处理单元包括:
发送子单元,用于根据所述数据读取请求生成申请消息并发送至共享内存;
第一处理子单元,用于判断所述共享内存是否充足,若是,则从所述共享内存获取内存块;并将所述缓存空间中相应的待读取的数据拷贝至所述内存块;将携带所述缓存空间中相应的待读取的数据的内存块返回至所述客户端;若否,则向所述客户端返回所述共享内存不足的提示。
8.根据权利要求6所述的数据预读装置,其特征在于,所述处理单元包括:
发送子单元,用于根据所述数据读取请求生成申请消息并发送至共享内存;
第二处理子单元,用于判断所述共享内存是否充足,若是,则从所述共享内存获取内存块;并将所述预设存储设备中相应的待读取的数据拷贝至所述内存块;将携带所述预设存储设备中相应的待读取的数据的内存块返回至所述客户端;若否,则向所述客户端返回所述共享内存不足的提示。
9.一种数据预读设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至5任一项所述的数据预读方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述的数据预读方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711395320.1A CN107992271B (zh) | 2017-12-21 | 2017-12-21 | 数据预读方法、装置、设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711395320.1A CN107992271B (zh) | 2017-12-21 | 2017-12-21 | 数据预读方法、装置、设备及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107992271A CN107992271A (zh) | 2018-05-04 |
CN107992271B true CN107992271B (zh) | 2021-04-23 |
Family
ID=62039390
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711395320.1A Active CN107992271B (zh) | 2017-12-21 | 2017-12-21 | 数据预读方法、装置、设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107992271B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109241010A (zh) * | 2018-09-11 | 2019-01-18 | 中国人民解放军战略支援部队航天工程大学 | 一种数据储存方法、储存***及计算机存储介质 |
CN109542361B (zh) * | 2018-12-04 | 2022-06-07 | 郑州云海信息技术有限公司 | 一种分布式存储***文件读取方法、***及相关装置 |
CN111309257A (zh) * | 2020-02-10 | 2020-06-19 | 西安奥卡云数据科技有限公司 | 恒定速率读文件的预读方法、装置及计算机可读存储介质 |
CN113220233A (zh) * | 2021-05-14 | 2021-08-06 | 北京百度网讯科技有限公司 | 数据读取方法、装置及*** |
CN114691051B (zh) * | 2022-05-30 | 2022-10-04 | 恒生电子股份有限公司 | 数据处理方法以及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101127229A (zh) * | 2006-08-18 | 2008-02-20 | 株式会社东芝 | 信息记录设备及其控制方法 |
WO2010106604A1 (ja) * | 2009-03-17 | 2010-09-23 | 日本電気株式会社 | ストレージシステム |
CN103543955A (zh) * | 2013-08-05 | 2014-01-29 | 记忆科技(深圳)有限公司 | 利用固态硬盘作为设备读缓存的方法、***及固态硬盘 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102662459A (zh) * | 2012-04-22 | 2012-09-12 | 复旦大学 | 利用固态硬盘与机械硬盘混合存储减少服务器能源消耗的方法 |
CN102981783A (zh) * | 2012-11-29 | 2013-03-20 | 浪潮电子信息产业股份有限公司 | 一种基于Nand Flash的Cache加速方法 |
CN104461943B (zh) * | 2014-12-29 | 2017-10-27 | 成都致云科技有限公司 | 数据读取方法、装置以及*** |
JP2016126632A (ja) * | 2015-01-07 | 2016-07-11 | 富士通株式会社 | ストレージ装置、ストレージシステム、データ読み出し方法、及びストレージプログラム |
CN105573669A (zh) * | 2015-12-11 | 2016-05-11 | 上海爱数信息技术股份有限公司 | 一种存储***的io读加速缓存方法和*** |
CN106406764A (zh) * | 2016-09-21 | 2017-02-15 | 郑州云海信息技术有限公司 | 一种分布式san块存储的高效能数据访问***及方法 |
-
2017
- 2017-12-21 CN CN201711395320.1A patent/CN107992271B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101127229A (zh) * | 2006-08-18 | 2008-02-20 | 株式会社东芝 | 信息记录设备及其控制方法 |
WO2010106604A1 (ja) * | 2009-03-17 | 2010-09-23 | 日本電気株式会社 | ストレージシステム |
CN103543955A (zh) * | 2013-08-05 | 2014-01-29 | 记忆科技(深圳)有限公司 | 利用固态硬盘作为设备读缓存的方法、***及固态硬盘 |
Also Published As
Publication number | Publication date |
---|---|
CN107992271A (zh) | 2018-05-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107992271B (zh) | 数据预读方法、装置、设备及计算机可读存储介质 | |
US10116746B2 (en) | Data storage method and network interface card | |
US11586388B2 (en) | Method, device, and computer program product for managing storage system | |
US11481318B2 (en) | Method and apparatus, and storage system for translating I/O requests before sending | |
CN112698959A (zh) | 一种多核通信方法和装置 | |
CN105988941B (zh) | 缓存数据处理方法和装置 | |
CN115827506A (zh) | 数据写入方法、数据读取方法、装置、处理核和处理器 | |
CN111294377B (zh) | 一种依赖关系的网络请求发送方法、终端装置及存储介质 | |
CN110232029A (zh) | 一种基于索引的fpga中ddr4包缓存的实现方法 | |
CN111414383B (zh) | 数据请求方法、数据处理***及计算设备 | |
CN112799723A (zh) | 一种数据读取方法、装置及电子设备 | |
CN111913815A (zh) | 调用请求的处理方法、装置、电子设备及可读存储介质 | |
CN106357557A (zh) | 一种消息处理方法及装置 | |
CN110046132A (zh) | 一种元数据请求处理方法、装置、设备及可读存储介质 | |
CN113641604B (zh) | 一种数据传输方法及*** | |
CN113744013B (zh) | 订单号的生成方法、装置、服务器及存储介质 | |
US20130173862A1 (en) | Method for cleaning cache of processor and associated processor | |
CN105518617B (zh) | 缓存数据的处理方法及装置 | |
CN111159138B (zh) | 一种异步数据存储方法、装置、设备及可读存储介质 | |
WO2017173844A1 (zh) | 一种目录读取的方法、装置及*** | |
CN110825652B (zh) | 淘汰磁盘块上的缓存数据的方法、装置及设备 | |
CN113760678A (zh) | 一种页面渲染时长的统计方法和装置 | |
CN111090633A (zh) | 一种分布式文件***的小文件聚合方法、装置及设备 | |
CN112269538B (zh) | 一种数据读取方法、装置、设备及介质 | |
CN113821173B (zh) | 一种数据存储方法、装置、设备及计算机可读存储介质 |
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 |