CN107632784A - 一种存储介质和分布式存储系统的缓存方法、装置及设备 - Google Patents
一种存储介质和分布式存储系统的缓存方法、装置及设备 Download PDFInfo
- Publication number
- CN107632784A CN107632784A CN201710828201.4A CN201710828201A CN107632784A CN 107632784 A CN107632784 A CN 107632784A CN 201710828201 A CN201710828201 A CN 201710828201A CN 107632784 A CN107632784 A CN 107632784A
- Authority
- CN
- China
- Prior art keywords
- high speed
- hardware device
- data
- write
- speed storing
- 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.)
- Pending
Links
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本发明公开了一种分布式存储系统的缓存方法,将最近使用的目标数据和写入数据作为热数据存储至分布式存储系统的存储节点设置的高速存储设备,这相当于实现了热数据的本地缓存,有效地减少了存储应用与底层存储池的交互次数,从而提高了读写请求的处理效率,进一步地提升了分布式存储系统的存储性能。而且,本缓存方法的使用成本大幅降低,且在设备掉电时,在高速存储硬件设备中存储的数据也不会被擦除。因此,本缓存方法能够使用更低的成本,在保证设备掉电时,数据也不被擦除的情况下,提高分布式存储系统的存储性能。此外,本发明还公开了一种分布式存储系统的缓存装置及设备和一种计算机可读存储介质,效果如上。
Description
技术领域
本发明涉及存储领域,特别涉及一种存储介质和分布式存储系统的缓存方法、装置及设备。
背景技术
随着虚拟化及云计算技术的快速发展,虚拟化及云计算技术被广泛的应用于企业数据中心,其存储性能也自然地成为企业核心应用的关键指标之一。
目前,较为常用的提升存储性能的手段是通过将硬盘驱动器(HDD)升级为其它高速存储设备(如固态硬盘、非易失性随机访问存储器等。但是,实际上,通过升级存储设备虽然在一定程度上能够提升存储性能,但是并不能兼顾存储容量。因此,为了从容量和性能两方面同时快速横向扩展,还可以通过采用全闪环境或内存缓存技术的分布式存储系统,在充分利用已有的硬件资源的同时提升存储性能。但是,全闪环境的分布式存储系统由于其所有的存储设备均采用了高速存储硬件,所以导致存储设备成本大幅增加;而采用内存缓存技术的分布式存储系统则是在掉电时,无法保护数据。
因此,如何使用更低的成本,在保证设备掉电时,数据也不被擦除的情况下,提高分布式存储系统的存储性能是本领域技术人员目前需要解决的技术问题。
发明内容
本发明的目的是提供一种存储介质和分布式存储系统的缓存方法、装置及设备,能够使用更低的成本,在保证设备掉电时,数据也不被擦除的情况下,提高分布式存储系统的存储性能。
为了解决上述技术问题,本发明提供的一种分布式存储系统的缓存方法,其中,所述分布式存储系统的存储节点设置有高速存储硬件设备,所述缓存方法包括:
在接收到读请求后,依据所述读请求中携带的读取信息判断所述高速存储硬件设备中是否存储有目标数据,如果否,则将底层存储池中存储的所述目标数据存储至所述高速存储硬件设备;
在接收到写请求后,依据所述写请求中携带的写入信息将写入数据存储到所述高速存储硬件设备。
优选地,所述在接收到读请求后,所述缓存方法还包括:
将所述读请求转化为标准读请求;
则对应的,所述依据所述读请求中携带的读取信息判断所述高速存储硬件设备中是否存储有目标数据具体包括:
依据所述标准读请求中携带的读取信息判断所述高速存储硬件设备中是否存储有所述目标数据。
优选地,所述在接收到写请求之后,所述缓存方法还包括:
将所述写请求转化为标准写请求;
则对应的,所述依据所述写请求中携带的写入信息将写入数据存储到所述高速存储硬件设备具体包括:
依据所述标准写请求中携带的写入信息将所述写入数据存储到所述高速存储硬件设备。
优选地,所述缓存方法还包括:
利用LRU算法,依据缓存管理信息将所述高速存储硬件设备中在预设时间内未使用的冷数据逐出;
则对应的,在所述判断为所述高速存储硬件设备中存储所述有目标数据或所述将底层存储池中存储的所述目标数据存储至所述高速存储硬件设备后,和在所述依据所述标准写请求中携带的写入信息将所述写入数据存储到所述高速存储硬件设备后,还包括:
更新所述缓存管理信息。
优选地,所述依据缓存管理信息将所述高速存储硬件设备中在预设时间内未使用的冷数据逐出具体包括:
将所述冷数据存储至所述底层存储池,并删除所述高速存储硬件设备中的所述冷数据。
优选地,所述缓存方法还包括:
计算所述高速存储硬件设备中的已存数据量与所述高速存储硬件设备的容量的比值;
判断所述比值是否大于或等于预设值;
如果是,则利用LRU算法,依据缓存管理信息将所述高速存储硬件设备中的冷数据依次逐出,直至所述比值小于所述预设值;
则对应的,在所述判断为所述高速存储硬件设备中存储所述有目标数据或所述将底层存储池中存储的所述目标数据存储至所述高速存储硬件设备后,和在所述依据所述标准写请求中携带的写入信息将所述写入数据存储到所述高速存储硬件设备后,还包括:
更新所述缓存管理信息。
优选地,所述依据缓存管理信息将所述高速存储硬件设备中的冷数据依次逐出具体包括:
将所述冷数据依次存储至所述底层存储池,并删除已存储至所述底层存储池的、且存储于所述高速存储硬件设备中的所述冷数据。
为了解决上述技术问题,本发明还提供的一种分布式存储系统的缓存装置,其中,所述分布式存储系统的存储节点设置有高速存储硬件设备,所述缓存装置包括:
读缓存模块,用于在接收到读请求后,依据所述读请求中携带的读取信息判断所述高速存储硬件设备中是否存储有目标数据,如果否,则将底层存储池中存储的所述目标数据存储至所述高速存储硬件设备;
写缓存模块,用于在接收到写请求后,依据所述写请求中携带的写入信息将写入数据存储到所述高速存储硬件设备。
为了解决上述技术问题,本发明还提供的一种分布式存储系统的缓存设备,其中,所述分布式存储系统的存储节点设置有高速存储硬件设备,所述缓存设备包括:
存储器,用于存储缓存程序;
处理器,用于执行所述缓存程序时实现上述任一种所述缓存方法的步骤。
为了解决上述技术问题,本发明还提供的一种计算机可读存储介质,所述计算机可读存储介质上存储有缓存程序,所述缓存程序被处理器执行时实现上述任一种所述缓存方法的步骤。
本发明提供的分布式存储系统的缓存方法,应用于存储节点设置有高速存储硬件设备的分布式存储系统,本缓存方法在接收到读请求后,依据读请求中携带的读取信息判断高速存储硬件设备中是否存储有目标数据,如果否,则将底层存储池中存储的目标数据存储至高速存储硬件设备;在接收到写请求后,依据写请求中携带的写入信息将写入数据存储到高速存储硬件设备。由此可见,本发明提供的分布式存储系统的缓存方法,将最近使用的目标数据和写入数据作为热数据存储至分布式存储系统的存储节点设置的高速存储设备,这相当于实现了热数据的本地缓存,使得存储应用的一部分读写请求可以直接在本地处理,所以存储应用无需再与底层存储池进行网络交互,有效地减少了存储应用与底层存储池的交互次数,从而提高了读写请求的处理效率,进一步地提升了分布式存储系统的存储性能。而且,由于本缓存方法只要求在分布式存储系统的存储节点设置有高速存储硬件设备,而不要求将分布式存储系统的所有存储设备均替换为高速存储设备,所以,较与采用全闪环境而言,本缓存方法的使用成本大幅降低。此外,由于本缓存方法以高速存储硬件设备作为本地缓存,所以,由高速存储硬件设备的物理特性所决定,即使是设备掉电,在高速存储硬件设备中存储的数据也不会被擦除,较与采用内存缓存技术而言,本缓存方法能够保证设备掉电时,数据也不被擦除。因此,本缓存方法能够使用更低的成本,在保证设备掉电时,数据也不被擦除的情况下,提高分布式存储系统的存储性能。此外,本发明还提供了一种分布式存储系统的缓存装置及设备和一种计算机可读存储介质,效果如上。
附图说明
为了更清楚地说明本发明实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
图1为本发明实施例提供的一种分布式存储系统的缓存方法的流程图;
图2为本发明实施例提供的另一种分布式存储系统的缓存方法的流程图;
图3为本发明实施例提供的另一种分布式存储系统的缓存方法的流程图;
图4为本发明实施例提供的另一种分布式存储系统的缓存方法的流程图;
图5为本发明实施例提供的另一种分布式存储系统的缓存方法的流程图;
图6为本发明实施例提供的一种分布式存储系统的缓存装置的结构图;
图7为本发明实施例提供的一种分布式存储系统的缓存设备的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动的前提下,所获得的所有其他实施例,都属于本发明保护范围。
本发明的目的是提供一种存储介质和分布式存储系统的缓存方法、装置及设备,能够使用更低的成本,在保证设备掉电时,数据也不被擦除的情况下,提高分布式存储系统的存储性能。
为了使本领域的技术人员更好的理解本发明技术方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。
图1为本发明实施例提供的一种分布式存储系统的缓存方法的流程图。本缓存方法应用于在存储节点设置有高速存储硬件设备的分布式储系统,如图1所示,本缓存方法包括:
S10:在接收到读请求后,依据读请求中携带的读取信息判断高速存储硬件设备中是否存储有目标数据,如果否,则进入步骤S11,如果是,则跳过步骤S11。
S11:将底层存储池中存储的目标数据存储至高速存储硬件设备。
S12:在接收到写请求后,依据写请求中携带的写入信息将写入数据存储到高速存储硬件设备。
需要说明的是,虽然在本实施例中,将步骤S12安排在步骤S10后执行,但是在具体实施中,步骤S12与步骤S10的执行顺序没有先后之分,当接收到读请求时,则执行步骤S10,当接收到写请求时,则执行步骤S12。高速存储硬件设备是掉电时,其存储的数据不被擦除的存储设备,如固态硬盘。目标数据是指读请求被响应后读取到的数据。
在具体实施中,由于读取存储在高速存储硬件设备中的数据,相当于是读取存储在本地缓存中的数据,所以较与读取底层存储池中的数据来说,无需与底层存储池进行网络交互,其延迟时间更短,读取速度会更快。因此,一旦接收到存储应用的读请求,为了能够以更快的速度读取到目标数据,当高速存储硬件设备中存储有目标数据时,则优先于从高速存储硬件设备中读取目标数据,而只有在高速存储硬件设备中没有存储目标数据的时候,才从底层存储池中读取目标数据。而且,一般地,可以将最近使用的数据看作热数据,将最近未使用的数据看作冷数据,也就是说,最近使用的数据被再次使用的概率要比最近未使用的数据被使用的概率大。因此,为了提升系统的存储性能,往往将热数据存储在高速硬件设备中,而将冷数据存储在底层存储池中。
其中,步骤S10中提到的读取信息包括目标数据块(目标数据)序号、偏移量、读取数据长度等。在具体实施中,对于步骤S10来说,在接收到存储应用的读请求后,首先要判断高速存储硬件设备中是否存储有目标数据,如果没有,则认为高速存储硬件设备中缺少热数据,需要从底层存储池获取目标数据,并将目标数据作为热数据存储至高速存储硬件设备中;如果有,则认为高速存储硬件设备中的热数据充足,不需要再从底层存储池中获取目标数据,直接跳过步骤S11即可。
对于步骤S11来说,由于目标数据被认为是热数据,其下一次再被使用的概率较大,为了减少读操作的延迟时间,提高读取目标数据的速度,提升系统的存储性能,可以从底层存储池中获取目标数据并存储至高速存储硬件设备中,为下一次能够直接在高速存储硬件设备中找到目标数据做准备。
其中,步骤S12中提到的写入信息包括数据块(写入数据)序号、偏移量、写入数据长度和数据块内容(写入数据)等。在具体实施中,对于步骤S12来说,每一个新写入数据均被视为热数据,会直接存储到高速存储硬件设备中,为下一次能够直接在高速存储硬件设备中找到目标数据做准备。
由此可见,本实施例提供的分布式存储系统的缓存方法,将最近使用的目标数据和写入数据作为热数据存储至分布式存储系统的存储节点设置的高速存储设备,这相当于实现了热数据的本地缓存,使得存储应用的一部分读写请求可以直接在本地处理,所以存储应用无需再与底层存储池进行网络交互,有效地减少了存储应用与底层存储池的交互次数,从而提高了读写请求的处理效率,进一步地提升了分布式存储系统的存储性能。而且,由于本缓存方法可以应用在存储节点设置有高速存储硬件设备的分布式存储系统,而不要求将分布式存储系统的所有存储设备均替换为高速存储设备,所以,较与采用全闪环境而言,本缓存方法的使用成本大幅降低。此外,由于本缓存方法以高速存储硬件设备作为本地缓存,所以,由高速存储硬件设备的物理特性所决定,即使是设备掉电,在高速存储硬件设备中存储的数据也不会被擦除,较与采用内存缓存技术而言,本缓存方法能够保证设备掉电时,数据也不被擦除。因此,本缓存方法能够使用更低的成本,在保证设备掉电时,数据也不被擦除的情况下,提高分布式存储系统的存储性能。
当然,为了使本发明提供的分布式存储系统的缓存方法,能够广泛的适用于不同的存储应用,本实施例在上述实施例的基础上作进一步改进,可以基于统一的标准,将来自不同存储应用的读请求均转化为本系统可识别的标准读请求,以提升本缓存方法的通用性。
图2为本发明实施例提供的另一种分布式存储系统的缓存方法的流程图。如图2所示,作为优选地实施方式,在图1的基础上,步骤S10具体包括:
S20:在接收到读请求后,将读请求转化为标准读请求。
S21:依据标准读请求中携带的读取信息判断高速存储硬件设备中是否存储有目标数据。
需要说明的是,标准读请求为应用本缓存方法的系统可识别的读请求。
由此可见,本实施例可以通过将来自不同存储应用的读请求基于统一的转化标准,转化为标准读请求,使得来自于不同的存储应用的读请求均可以被应用本缓存方法进行缓存的系统识别,进而提升了本缓存方法的通用性,促使本缓存方法可以更广泛的适用于不同的存储应用。
同理,为了使本发明提供的分布式存储系统的缓存方法,能够更广泛的适用于不同的存储应用,本实施例在上述实施例的基础上作进一步改进,可以基于统一的标准,将来自不同存储应用的写请求均转化为本系统可识别的标准写请求,以提升本缓存方法的通用性。
图3为本发明实施例提供的另一种分布式存储系统的缓存方法的流程图。如图3所示,作为优选地实施方式,在图2的基础上,步骤S12具体包括:
S30:在接收到写请求后,将写请求转化为标准写请求。
S31:依据标准写请求中携带的写入信息将写入数据存储到高速存储硬件设备。
需要说明的是,标准写请求为应用本缓存方法的系统可识别的写请求。
由此可见,本实施例可以通过将来自不同存储应用的写请求基于统一的转化标准,转化为标准读请求,使得来自于不同的存储应用的写请求均可以被应用本缓存方法进行缓存的系统识别,进而提升了本缓存方法的通用性,促使本缓存方法可以更广泛的适用于不同的存储应用。
由于高速存储硬件设备的存储容量有限,不可能在不删减的情况下,一直将目标数据和写入数据均无限制地存储至高速存储硬件设备中。因此,本实施例在上述实施例的基础上作进一步改进,指定一种逐出策略,以根据该逐出策略将高速存储硬件设备中的相对较冷的数据逐出,以保证在一定的命中概率下,系统的存储性能保持在一个最优的状态。
图4为本发明实施例提供的另一种分布式存储系统的缓存方法的流程图。如图4所示,作为优选地实施方式,在图3的基础上,还包括:
S40:更新缓存管理信息。
S41:利用LRU算法,依据缓存管理信息将高速存储硬件设备中在预设时间内未使用的冷数据逐出。
需要说明的是,步骤S40分别在执行完步骤S21、步骤S11和步骤S31之后执行,而且,可以理解的是,本实施例中,步骤S41可以安排在步骤31执行后的步骤S40执行完毕后执行,但是,在具体实施中,对于步骤S41来说,只要高速存储硬件设备中存在预设时间内未使用的冷数据,则触发步骤S41执行,与其它步骤没有严格的先后顺序要求。另外,需要说明的是,缓存管理信息中记录了数据的冷热程度,即数据近期再一次被使用的概率大小。
在具体实施中,由于步骤S21执行完毕后,包括两种可能,其中第一种可能是判断为高速存储硬件设备中存储有目标数据,第二种可能是判断为高速存储硬件设备中没有存储目标数据,对于步骤S21执行完毕后的第一种可能,直接执行步骤S40即可,而对于第二种可能,则是在执行完步骤S11后,再执行步骤S40。
其中,步骤S41中提到的LRU算法为最近最久未使用算法;预设时间可以预先设定。在具体实施中,对于步骤S41来说,可以根据缓存管理信息确定出在预设时间内未使用的冷数据,然后再利用LRU算法将预设时间内未使用的冷数据逐出,以释放高速存储硬件设备的存储空间,存储热数据,提升系统的存储性能。
当然,如果将预设时间内的冷数据直接从高速存储硬件设备中删除,可能会导致数据丢失。因此,为了不丢失数据,可以在将高速存储硬件设备中存储的预设时间内未使用的冷数据的删除之前,将该冷数据备份至底层存储池。作为优选的实施方式,依据缓存管理信息将高速存储硬件设备中在预设时间内未使用的冷数据逐出具体包括:将冷数据存储至底层存储池,并删除高速存储硬件设备中的冷数据。
当然,当不同的数据被频繁使用时,会造成热数据特别多的情况出现,即使是在预设时间内未使用的冷数据均已全部被逐出高速存储硬件设备,高速存储硬件设备存储的数据量可能也达到了最大存储量。因此,本实施例在上述实施例的基础上作进一步改进,使得当高速存储硬件设备中已存数据量与高速存储硬件设备的容量的比值大于一定值的时候,将相对较冷的数据一次逐出高速存储硬件设备,直至高速存储硬件设备中已存数据量与高速存储硬件设备的容量的比值小于一定值,以在保证一定命中率的情况下,释放高速存储硬件设备的存储空间。
图5为本发明实施例提供的另一种分布式存储系统的缓存方法的流程图。如图5所示,作为优选地实施方式,在图3的基础上,还包括:
S40:更新缓存管理信息。
S50:计算高速存储硬件设备的已存数据量与高速存储硬件设备的容量的比值。
S51:判断比值是否大于或等于预设值,如果是,则执行步骤S52,如果否,则重复本步骤。
S52:则利用LRU算法,依据缓存管理信息将高速存储硬件设备中的冷数据依次逐出,直至比值小于预设值。
需要说明的是,步骤S40分别在执行完步骤S21、步骤S11和步骤S31之后执行,而且,可以理解的是,本实施例中,步骤S50可以安排在步骤31执行后的步骤S40执行完毕后执行,但是,在具体实施中,对于步骤S50来说,只要高速存储硬件设备的已存数据量与高速存储硬件设备的容量的比值大于或等于预设值,则触发步骤S50执行,与其它步骤没有严格的先后顺序要求。另外,需要说明的是,缓存管理信息中记录了数据的冷热程度,即数据近期再一次被使用的概率大小。
在具体实施中,由于步骤S21执行完毕后,包括两种可能,其中第一种可能是判断为高速存储硬件设备中存储有目标数据,第二种可能是判断为高速存储硬件设备中没有存储目标数据,对于步骤S21执行完毕后的第一种可能,直接执行步骤S40即可,而对于第二种可能,则是在执行完步骤S11后,再执行步骤S40。
其中,步骤S52中提到的LRU算法为最近最久未使用算法;预设值可以预先设定。在具体实施中,对于步骤S52来说,可以根据缓存管理信息确定出最后使用时间由早到晚的较冷数据的排序,然后再利用LRU算法,按照排序的先后顺序将较冷数据依次逐出,直至高速存储硬件设备中的已存数据量与高速存储硬件设备的容量的比值小于预设值为止,从而达到释放高速存储硬件设备的存储空间,提升系统的存储性能的目的。
当然,如果利用LRU算法,按照排序的先后顺序将较冷数据依次直接从高速存储硬件设备中删除,可能会导致数据丢失。因此,为了不丢失数据,可以在将较冷数据依次从高速存储硬件设备中删除之前,将该较冷数据备份至底层存储池。作为优选的实施方式,依据缓存管理信息将高速存储硬件设备中的冷数据依次逐出具体包括:将冷数据依次存储至底层存储池,并删除已存储至底层存储池的、且存储于高速存储硬件设备中的冷数据。
上文对于本发明提供的一种分布式存储系统的缓存方法的实施例进行了详细的描述,本发明还提供了一种与该缓存方法对应的分布式存储系统的缓存装置,由于装置部分的实施例与方法部分的实施例相互照应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
图6为本发明实施例提供的一种分布式存储系统的缓存装置的结构图。本缓存装置应用于存储节点设置有高速存储硬件设备的分布式存储系统,如图6所示,缓存装置包括:
读缓存模块60,用于在接收到读请求后,依据读请求中携带的读取信息判断高速存储硬件设备中是否存储有目标数据,如果否,则将底层存储池中存储的目标数据存储至高速存储硬件设备。
写缓存模块61,用于在接收到写请求后,依据写请求中携带的写入信息将写入数据存储到高速存储硬件设备。
由此可见,本实施例提供的分布式存储系统的缓存装置,利用读缓存模块和写缓存模块将最近使用的目标数据和写入数据作为热数据存储至分布式存储系统的存储节点设置的高速存储设备,这相当于实现了热数据的本地缓存,使得存储应用的一部分读写请求可以直接在本地处理,所以存储应用无需再与底层存储池进行网络交互,有效地减少了存储应用与底层存储池的交互次数,从而提高了读写请求的处理效率,进一步地提升了分布式存储系统的存储性能。而且,由于本缓存装置可应用于在存储节点设置有高速存储硬件设备的分布式存储系统,而不要求将分布式存储系统的所有存储设备均替换为高速存储设备,所以,较与采用全闪环境而言,本缓存装置的使用成本大幅降低。此外,由于本缓存装置以高速存储硬件设备作为本地缓存,所以,由高速存储硬件设备的物理特性所决定,即使是设备掉电,在高速存储硬件设备中存储的数据也不会被擦除,较与采用内存缓存技术而言,本缓存装置能够保证设备掉电时,数据也不被擦除。因此,本缓存装置能够使用更低的成本,在保证设备掉电时,数据也不被擦除的情况下,提高分布式存储系统的存储性能。
本发明还提供了一种与上述缓存方法对应的布式存储系统的缓存设备,由于设备部分的实施例与方法部分的实施例相互照应,因此设备部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
图7为本发明实施例提供的一种分布式存储系统的缓存设备的结构图。本缓存设备应用于存储节点设置有高速存储硬件设备的分布式存储系统,如图7所示,本缓存设备包括:
存储器70,用于存储缓存程序。
处理器71,用于执行缓存程序时实现如上述任一种实施例提供的缓存方法的步骤。
由此可见,本实施例提供的分布式存储系统的缓存设备,由于可以通过处理器调用存储器存储的缓存程序,实现上述任一实施例提供的缓存方法的步骤,所以本缓存设备具有同上述缓存方法同样的实际效果。
本发明还提供了一种计算机可读存储介质,且该计算机可读存储介质上存储有缓存程序,当该计算机可读存储介质上存储的缓存程序被处理器执行时,能够实现上述任一实施例提供的缓存方法的步骤。
由此可见,本实施例提供的计算机可读存储介质,由于存储有可被处理器执行的缓存程序,且在该缓存程序被处理器执行时,可以是实现上述任一实施例提供的缓存方法的步骤,所以本计算机可读存储介质具有同上述缓存方法同样的实际效果。
以上对本发明所提供的一种存储介质和分布式存储系统的缓存方法、装置及设备进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明都是与其它实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或者操作区分开来,而不一定要求或者暗示这些实体或者操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何变体意在涵盖非排他性的包含,从而使得包括一系列的要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其它要素,或者还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (10)
1.一种分布式存储系统的缓存方法,其特征在于,所述分布式存储系统的存储节点设置有高速存储硬件设备,所述缓存方法包括:
在接收到读请求后,依据所述读请求中携带的读取信息判断所述高速存储硬件设备中是否存储有目标数据,如果否,则将底层存储池中存储的所述目标数据存储至所述高速存储硬件设备;
在接收到写请求后,依据所述写请求中携带的写入信息将写入数据存储到所述高速存储硬件设备。
2.根据权利要求1所述的缓存方法,其特征在于,所述在接收到读请求后,还包括:
将所述读请求转化为标准读请求;
则对应的,所述依据所述读请求中携带的读取信息判断所述高速存储硬件设备中是否存储有目标数据具体包括:
依据所述标准读请求中携带的读取信息判断所述高速存储硬件设备中是否存储有所述目标数据。
3.根据权利要求1或2所述的缓存方法,其特征在于,所述在接收到写请求之后,还包括:
将所述写请求转化为标准写请求;
则对应的,所述依据所述写请求中携带的写入信息将写入数据存储到所述高速存储硬件设备具体包括:
依据所述标准写请求中携带的写入信息将所述写入数据存储到所述高速存储硬件设备。
4.根据权利要求3所述的缓存方法,其特征在于,还包括:
利用LRU算法,依据缓存管理信息将所述高速存储硬件设备中在预设时间内未使用的冷数据逐出;
则对应的,在所述判断为所述高速存储硬件设备中存储所述有目标数据或所述将底层存储池中存储的所述目标数据存储至所述高速存储硬件设备后,和在所述依据所述标准写请求中携带的写入信息将所述写入数据存储到所述高速存储硬件设备后,还包括:
更新所述缓存管理信息。
5.根据权利要求4所述的缓存方法,其特征在于,所述依据缓存管理信息将所述高速存储硬件设备中在预设时间内未使用的冷数据逐出具体包括:
将所述冷数据存储至所述底层存储池,并删除所述高速存储硬件设备中的所述冷数据。
6.根据权利要求3所述的缓存方法,其特征在于,还包括:
计算所述高速存储硬件设备中的已存数据量与所述高速存储硬件设备的容量的比值;
判断所述比值是否大于或等于预设值;
如果是,则利用LRU算法,依据缓存管理信息将所述高速存储硬件设备中的冷数据依次逐出,直至所述比值小于所述预设值;
则对应的,在所述判断为所述高速存储硬件设备中存储所述有目标数据或所述将底层存储池中存储的所述目标数据存储至所述高速存储硬件设备后,和在所述依据所述标准写请求中携带的写入信息将所述写入数据存储到所述高速存储硬件设备后,还包括:
更新所述缓存管理信息。
7.根据权利要求6所述的缓存方法,其特征在于,所述依据缓存管理信息将所述高速存储硬件设备中的冷数据依次逐出具体包括:
将所述冷数据依次存储至所述底层存储池,并删除已存储至所述底层存储池的、且存储于所述高速存储硬件设备中的所述冷数据。
8.一种分布式存储系统的缓存装置,其特征在于,所述分布式存储系统的存储节点设置有高速存储硬件设备,所述缓存装置包括:
读缓存模块,用于在接收到读请求后,依据所述读请求中携带的读取信息判断所述高速存储硬件设备中是否存储有目标数据,如果否,则将底层存储池中存储的所述目标数据存储至所述高速存储硬件设备;
写缓存模块,用于在接收到写请求后,依据所述写请求中携带的写入信息将写入数据存储到所述高速存储硬件设备。
9.一种分布式存储系统的缓存设备,其特征在于,所述分布式存储系统的存储节点设置有高速存储硬件设备,所述缓存设备包括:
存储器,用于存储缓存程序;
处理器,用于执行所述缓存程序时实现如权利要求1-7任一项所述缓存方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有缓存程序,所述缓存程序被处理器执行时实现如权利要求1-7任一项所述缓存方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710828201.4A CN107632784A (zh) | 2017-09-14 | 2017-09-14 | 一种存储介质和分布式存储系统的缓存方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710828201.4A CN107632784A (zh) | 2017-09-14 | 2017-09-14 | 一种存储介质和分布式存储系统的缓存方法、装置及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107632784A true CN107632784A (zh) | 2018-01-26 |
Family
ID=61101015
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710828201.4A Pending CN107632784A (zh) | 2017-09-14 | 2017-09-14 | 一种存储介质和分布式存储系统的缓存方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107632784A (zh) |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108710474A (zh) * | 2018-05-18 | 2018-10-26 | 郑州云海信息技术有限公司 | 一种数据存储方法、装置及计算机存储介质 |
CN108875046A (zh) * | 2018-06-28 | 2018-11-23 | 郑州云海信息技术有限公司 | 一种存储系统访问方法、装置及电子设备 |
CN108920300A (zh) * | 2018-08-02 | 2018-11-30 | 郑州云海信息技术有限公司 | 一种数据操作方法及相关装置 |
CN108958667A (zh) * | 2018-08-15 | 2018-12-07 | 郑州云海信息技术有限公司 | 一种基于分布式存储系统的数据读取方法、系统及装置 |
CN108984130A (zh) * | 2018-07-25 | 2018-12-11 | 广东浪潮大数据研究有限公司 | 一种分布式存储的缓存读取方法及其装置 |
CN109241021A (zh) * | 2018-09-04 | 2019-01-18 | 郑州云海信息技术有限公司 | 一种文件查询方法、装置、设备及计算机可读存储介质 |
CN109521957A (zh) * | 2018-10-22 | 2019-03-26 | 郑州云海信息技术有限公司 | 一种数据处理方法和装置 |
CN109521962A (zh) * | 2018-11-14 | 2019-03-26 | 郑州云海信息技术有限公司 | 一种元数据查询方法、装置、设备及计算机可读存储介质 |
CN109814804A (zh) * | 2018-12-21 | 2019-05-28 | 创新科存储技术(深圳)有限公司 | 一种降低分布式存储系统能耗的方法和装置 |
CN110989937A (zh) * | 2019-12-06 | 2020-04-10 | 浪潮电子信息产业股份有限公司 | 一种数据存储方法、装置、设备及计算机可读存储介质 |
CN111104048A (zh) * | 2018-10-26 | 2020-05-05 | 华为技术有限公司 | 一种数据处理方法及分布式存储系统 |
CN112104729A (zh) * | 2020-09-10 | 2020-12-18 | 华云数据控股集团有限公司 | 一种存储系统及其缓存方法 |
CN112214178A (zh) * | 2020-11-13 | 2021-01-12 | 新华三大数据技术有限公司 | 一种存储系统、数据读取方法及数据写入方法 |
CN112799595A (zh) * | 2021-02-02 | 2021-05-14 | 联想(北京)有限公司 | 数据处理方法、设备及存储介质 |
CN113608674A (zh) * | 2021-06-25 | 2021-11-05 | 济南浪潮数据技术有限公司 | 一种实现分布式块存储系统读写的方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102870100A (zh) * | 2012-06-30 | 2013-01-09 | 华为技术有限公司 | 数据缓存装置、数据存储系统及方法 |
CN103543955A (zh) * | 2013-08-05 | 2014-01-29 | 记忆科技(深圳)有限公司 | 利用固态硬盘作为设备读缓存的方法、系统及固态硬盘 |
CN104008075A (zh) * | 2014-05-26 | 2014-08-27 | 华中科技大学 | 一种分布式存储系统请求的处理方法 |
CN106354805A (zh) * | 2016-08-28 | 2017-01-25 | 航天恒星科技有限公司 | 一种分布式存储系统NoSQL搜索缓存的优化方法和系统 |
-
2017
- 2017-09-14 CN CN201710828201.4A patent/CN107632784A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102870100A (zh) * | 2012-06-30 | 2013-01-09 | 华为技术有限公司 | 数据缓存装置、数据存储系统及方法 |
CN103543955A (zh) * | 2013-08-05 | 2014-01-29 | 记忆科技(深圳)有限公司 | 利用固态硬盘作为设备读缓存的方法、系统及固态硬盘 |
CN104008075A (zh) * | 2014-05-26 | 2014-08-27 | 华中科技大学 | 一种分布式存储系统请求的处理方法 |
CN106354805A (zh) * | 2016-08-28 | 2017-01-25 | 航天恒星科技有限公司 | 一种分布式存储系统NoSQL搜索缓存的优化方法和系统 |
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108710474A (zh) * | 2018-05-18 | 2018-10-26 | 郑州云海信息技术有限公司 | 一种数据存储方法、装置及计算机存储介质 |
CN108875046A (zh) * | 2018-06-28 | 2018-11-23 | 郑州云海信息技术有限公司 | 一种存储系统访问方法、装置及电子设备 |
CN108984130A (zh) * | 2018-07-25 | 2018-12-11 | 广东浪潮大数据研究有限公司 | 一种分布式存储的缓存读取方法及其装置 |
CN108920300A (zh) * | 2018-08-02 | 2018-11-30 | 郑州云海信息技术有限公司 | 一种数据操作方法及相关装置 |
CN108958667A (zh) * | 2018-08-15 | 2018-12-07 | 郑州云海信息技术有限公司 | 一种基于分布式存储系统的数据读取方法、系统及装置 |
CN109241021A (zh) * | 2018-09-04 | 2019-01-18 | 郑州云海信息技术有限公司 | 一种文件查询方法、装置、设备及计算机可读存储介质 |
CN109521957A (zh) * | 2018-10-22 | 2019-03-26 | 郑州云海信息技术有限公司 | 一种数据处理方法和装置 |
CN111104048A (zh) * | 2018-10-26 | 2020-05-05 | 华为技术有限公司 | 一种数据处理方法及分布式存储系统 |
US11662925B2 (en) | 2018-10-26 | 2023-05-30 | Huawei Cloud Computing Technologies Co., Ltd. | Data processing method and distributed storage system |
CN111104048B (zh) * | 2018-10-26 | 2021-02-12 | 华为技术有限公司 | 一种数据处理方法及分布式存储系统 |
CN109521962A (zh) * | 2018-11-14 | 2019-03-26 | 郑州云海信息技术有限公司 | 一种元数据查询方法、装置、设备及计算机可读存储介质 |
CN109814804A (zh) * | 2018-12-21 | 2019-05-28 | 创新科存储技术(深圳)有限公司 | 一种降低分布式存储系统能耗的方法和装置 |
CN110989937B (zh) * | 2019-12-06 | 2022-07-08 | 浪潮电子信息产业股份有限公司 | 一种数据存储方法、装置、设备及计算机可读存储介质 |
CN110989937A (zh) * | 2019-12-06 | 2020-04-10 | 浪潮电子信息产业股份有限公司 | 一种数据存储方法、装置、设备及计算机可读存储介质 |
CN112104729A (zh) * | 2020-09-10 | 2020-12-18 | 华云数据控股集团有限公司 | 一种存储系统及其缓存方法 |
CN112214178B (zh) * | 2020-11-13 | 2022-08-19 | 新华三大数据技术有限公司 | 一种存储系统、数据读取方法及数据写入方法 |
CN112214178A (zh) * | 2020-11-13 | 2021-01-12 | 新华三大数据技术有限公司 | 一种存储系统、数据读取方法及数据写入方法 |
CN112799595A (zh) * | 2021-02-02 | 2021-05-14 | 联想(北京)有限公司 | 数据处理方法、设备及存储介质 |
CN112799595B (zh) * | 2021-02-02 | 2023-06-23 | 联想(北京)有限公司 | 数据处理方法、设备及存储介质 |
CN113608674A (zh) * | 2021-06-25 | 2021-11-05 | 济南浪潮数据技术有限公司 | 一种实现分布式块存储系统读写的方法及装置 |
CN113608674B (zh) * | 2021-06-25 | 2024-02-23 | 济南浪潮数据技术有限公司 | 一种实现分布式块存储系统读写的方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107632784A (zh) | 一种存储介质和分布式存储系统的缓存方法、装置及设备 | |
CN103902474B (zh) | 一种支持固态盘缓存动态分配的混合存储系统和方法 | |
CN103197899B (zh) | 增强基于闪存的存储的寿命和性能 | |
US7487320B2 (en) | Apparatus and system for dynamically allocating main memory among a plurality of applications | |
CN108647151A (zh) | 一种全闪系统元数据落盘方法、装置、设备及存储介质 | |
US20030105926A1 (en) | Variable size prefetch cache | |
JP2009205335A (ja) | 2種のメモリデバイスをキャッシュに用いるストレージシステム及びそのストレージシステムを制御する方法 | |
CN103885728A (zh) | 一种基于固态盘的磁盘缓存系统 | |
CN106844740A (zh) | 基于内存对象缓存系统的数据预读方法 | |
CN104503703B (zh) | 缓存的处理方法和装置 | |
US20060143395A1 (en) | Method and apparatus for managing a cache memory in a mass-storage system | |
US11620219B2 (en) | Storage drive dependent track removal in a cache for storage | |
CN108920616A (zh) | 一种元数据访问性能优化方法、系统、装置及存储介质 | |
EP2784683A1 (en) | Storage control program, storage control method, storage system and hierarchy control apparatus thereof | |
CN108334284A (zh) | 尾延迟感知前台垃圾收集算法 | |
CN106802955A (zh) | 一种图片数据缓存方法 | |
CN107623732A (zh) | 一种基于云平台的数据存储方法、装置、设备及存储介质 | |
CN107562851A (zh) | 一种数据的更新方法、装置及电子设备 | |
CN109478164B (zh) | 用于存储用于高速缓存条目传输的高速缓存位置信息的系统和方法 | |
CN110413545A (zh) | 存储管理方法、电子设备和计算机程序产品 | |
US8732404B2 (en) | Method and apparatus for managing buffer cache to perform page replacement by using reference time information regarding time at which page is referred to | |
US20170262485A1 (en) | Non-transitory computer-readable recording medium, data management device, and data management method | |
CN107180118A (zh) | 一种文件系统缓存数据管理方法及装置 | |
WO2015072925A1 (en) | Method for hot i/o selective placement and metadata replacement for non-volatile memory cache on hybrid drive or system | |
CN109144431A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180126 |