CN104317736A - 一种分布式文件系统多级缓存实现方法 - Google Patents

一种分布式文件系统多级缓存实现方法 Download PDF

Info

Publication number
CN104317736A
CN104317736A CN201410508442.7A CN201410508442A CN104317736A CN 104317736 A CN104317736 A CN 104317736A CN 201410508442 A CN201410508442 A CN 201410508442A CN 104317736 A CN104317736 A CN 104317736A
Authority
CN
China
Prior art keywords
file data
global buffer
global
buffer layer
data
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
CN201410508442.7A
Other languages
English (en)
Other versions
CN104317736B (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.)
CHINESE CORPORATION DAWNING INFORMATION INDUSTRY CHENGDU CO., LTD.
Dawning Information Industry Co Ltd
Original Assignee
Dawning 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 Dawning Information Industry Co Ltd filed Critical Dawning Information Industry Co Ltd
Priority to CN201410508442.7A priority Critical patent/CN104317736B/zh
Publication of CN104317736A publication Critical patent/CN104317736A/zh
Application granted granted Critical
Publication of CN104317736B publication Critical patent/CN104317736B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

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

Abstract

本发明提供一种分布式文件系统多级缓存实现方法,包括以下步骤:识别分布式文件系统的缓存设备,并进行管理;构建全局缓存元数据服务;客户端文件数据操作解析;全局缓存层文件数据分布;全局缓存层文件数据保护处理。本发明将分布式系统中的多种缓存设备统一到多级全局缓存层中,实现了文件数据在多级缓存中迁移,保证了文件数据在快速缓存上,提高了文件数据的访问性能。同时考虑到多级全局缓存在分布式文件系统中的各种失效问题,采用文件数据冗余机制保证全局缓存在分布式文件系统中节点故障时的可用性,极大的提高了分布式文件系统的文件数据访问效率。

Description

一种分布式文件系统多级缓存实现方法
技术领域
本发明涉及一种实现方法,具体涉及一种分布式文件系统多级缓存实现方法。
背景技术
随着分布式文件系统的广泛应用,其提供的存储容量和节点规模变得越来越大,系统对分布式系统提供的文件操作的性能和可扩展性提出了更高的要求。在分布式系统中客户端的文件访问请求,经过元数据服务器进行解析之后,客户端文件请求最终会变成对数据服务器上的对应文件对象操作,对于数据服务器的对象读写操作性能直接决定了分布式文件系统的性能。
而现有磁盘在容量和操作速度上相比CPU,内存,网络来说存在数量级的差异,为了平衡速度的差异,缓存技术在分布式文件系统中广泛使用,利用访问的局部性原理,将访问尽可能的在快速设备上操作,以减少对慢速设备的访问,提高系统的访问带宽。由于单机文件系统是分布式文件系统的基本组成部分,数据节点上的文件系统的缓存效率直接关系到分布式文件系统的整体效率。单机文件系统一般使用本机内存作文件缓存,通过缓存文件写和文件预读操作,极大的提高了本地文件的操作性能,典型的代表有Linux系统的Page cache系统,在内存实现了一个文件系统缓存。
新型存储介质如固态硬盘(Solid State Disk,SSD)和NVRAM(Non-Volatile RAM),由于其优异的读写性能,被广泛应用于内存和磁盘之间,作为数据缓存,用来保留读取的热点数据和写入的数据,提高存储系统的读写效率。典型的代表有Facebook公司的flashcache技术等。
分布式系统的基于内存的缓存系统,已经在互联网服务等领域得到广泛的应用,典型的系统如MemCached系统,其在多个节点之间构建一个全局的基于内存的键值存取系统(Key-Value Store),缓存网站的后端数据库查询结果等操作,以加速网站的访问效率。
然而上现有技术存在如下问题:
1)全局特性考虑较少:由于分布式文件系统由多个节点组成,需要一种全局缓存技术来协同考虑,缓存分布式文件系统的访问请求,并提供一致,高效的文件操作。单机缓存系统在全局方面考虑较少。
2)设备支持简单:现有缓存设备在访问速度和容量上存在较大差距,需要缓存系统支持多种设备,而现有缓存系统支持较为简单。
3)故障处理简单:分布式缓存系统由于分布在多个不同节点,节点或者缓存设备存在故障时,需要分布式缓存系统仍然能正确高效的提供缓存服务。
发明内容
为了克服上述现有技术的不足,本发明提供一种分布式文件系统多级缓存实现方法,将多种不同分布在不同节点上的缓存设备聚合在分布式缓存中,向分布式文件系统提供高效的文件数据缓存服务,并且容忍各种系统故障,保证分布式缓存的正确性。
为了实现上述发明目的,本发明采取如下技术方案:
本发明提供一种分布式文件系统多级缓存实现方法,所述方法包括以下步骤:
步骤1:识别分布式文件系统的缓存设备,并进行管理;
步骤2:构建全局缓存元数据服务;
步骤3:客户端文件数据操作解析;
步骤4:全局缓存层文件数据分布;
步骤5:全局缓存层文件数据保护处理。
所述步骤1中,分布式文件系统的缓存层由多级全局缓存层组成,每级全局缓存层由分布在不同缓存节点上的缓存组成,全局缓存层的存储介质包括内存卡、固态硬盘、非易失性随机访问存储器、磁盘阵列和磁盘等。
所述缓存节点上的缓存并不相同,且至少存在一种缓存;
缓存节点的物理形态存在于元数据节点或数据节点上,与元数据和数据服务共用服务器或单独使用缓存服务器,该缓存服务器只提供缓存服务;
缓存节点之间使用高速网络连接,通过消息交互共同完成分布式文件系统缓存层的功能。
所述步骤2中,在分布式文件系统的元数据服务中间增加全局缓存元数据服务,全局缓存元数据服务负责实现分布式文件系统全局缓存层的管理,客户端通过全局缓存元数据服务获取到文件数据对应的缓存,并负责缓存的状态维护;全局缓存元数据服务分布在多个缓存节点上。
全局缓存元数据服务包括位置解析、状态监控、频度监控和任务控制;
位置解析负责客户端发起的文件数据位置解析,返回文件数据所在的全局缓存层,以及在缓存节点的具体位置信息;
状态监控用于监控缓存节点的状态,如果出现故障,对出现故障的缓存节点上的脏缓存实现缓存重建任务;
频度监控用于监控缓存中的文件数据访问频度,并根据访问频度生成文件数据在全局缓存层之间的调度任务;
所述任务控制负责与缓存节点和其他全局缓存元数据服务节点之间进行消息通信,实现缓存重建任务和缓存调度任务的具体操作。
所述频度监控使用权重监控缓存中的文件数据访问频度,全局缓存层依据该文件数据的权重进行数据块在多层缓存层中间的替换操作;权重Q表示为:
Q=A1*(1/I)+A2*F
其中,I表示上次文件数据访问的间隔时间,A1为访问间隔时间的加权因子,F表示本文件数据的访问次数,A2为访问次数的加权因子。
所述步骤3中,客户端数据先发送给全局缓存元数据服务,确定数据操作对应的全局缓存层的位置,然后客户端和该全局缓存层交互,共同完成客户端文件数据操作解析;具体包括以下步骤:
步骤3-1:客户端首先向全局缓存元数据服务发起文件数据查询操作,确定对应文件数据是否存在于全局缓存层的缓存中;
步骤3-2:若发现全局缓存层的缓存中存在文件数据,则进行客户端文件数据的读写处理,并更新文件数据的访问时间和频度;客户端文件数据读写处理具体步骤如下:
步骤3-2-1:对于文件数据读操作,直接返回文件数据;
步骤3-2-2:对于文件数据修改操作,在全局缓存层中对文件数据进行加缓存锁,修改文件数据,并设置对应文件数据为已修改,完成修改之后解除对应缓存锁;后台线程进行数据向后端数据服务器的回刷操作;
步骤3-3:若所有全局缓存层中均不存在文件数据,通知数据节点从磁盘上加载文件数据,并将文件数据直接返回给客户端,更新元数据服务的文件数据记录,如果超过预设访问频度,执行文件数据调入全局缓存层操作。
所述步骤4中,全局缓存层在接收到文件数据后,将数据写入到对应的缓存设备上,更新全局缓存元数据服务中的文件数据,并将文件数据分布在不同层级的全局缓存层上。
所述步骤4具体包括以下步骤:
步骤4-1:设第M层全局缓存元数据服务的权值预定义为Q(M),其中缓存的文件数据的权值Q(b)范围为Q(M-1)≤Q(b)<Q(M);
步骤4-2:客户端访问文件数据后,根据重新计算的权值Q(bn),由全局缓存层元数据服务模块将文件数据载入到对应的全局缓存层中,定义M-1层的缓存设备相比M层的缓存设备性能高,容量大,价格便宜;
步骤4-3:全局缓存元数据服务根据重新计算的文件数据权重Q(bn)确定文件数据需要挪动到具体的全局缓存层X;如果该文件数据被客户端频繁访问,需要将文件数据挪动到高性能的全局缓存层中,以加快文件数据操作速度;如果该文件数据很少被访问,则需要将文件数据放置到低性能且大容量的缓存设备中,以提高缓存的整体利用率;确定将该文件数据移动的全局缓存层X后,文件数据存放在本全局缓存层X的具体缓存设备;
步骤4-4:文件数据在全局缓存层X进行放置,出现如下三种情况:
(1)如果对应全局缓存层M存在空闲位置,则直接将文件数据放入全局缓存层M中空闲位置对应节点即可;
(2)如果对应全局缓存层M中不存在空闲位置,则使用缓存替换算法,将最少使用的文件数据移动到全局缓存层M+1中,移动完成之后执行步骤4-1,将文件数据放入到全局缓存层M中;缓存替换算法包括LRU算法和随机替换算法;
(3)如果需要替换的文件数据在多级全局缓存的最下一层,将文件数据替换出多级全局缓存层中,写入到分布式文件系统的数据服务器上;
步骤4-5:在步骤4-4完成后,更新步骤2对应的全局缓存元数据服务上的位置信息。
所述步骤5中,使用数据冗余技术,将文件数据在全局缓存层中放置多份,以保证文件数据在全局缓存层的部分缓存设备发生故障之后,文件数据仍然安全可用;具体包括以下步骤:
步骤5-1:在文件数据调度进入全局缓存层时,由全局缓存元数据服务将该文件数据生成几份文件数据,并放置在具体的全局缓存层对应的缓存设备中,生成文件数据的份数和位置信息由预先定义的策略决定;
步骤5-2:全局缓存层根据文件数据的份数和位置信息,将文件数据存放到对应的全局缓存层中;
步骤5-3:全局缓存层发现在缓存节点或者缓存节点上的缓存设备出现故障时,确定出现故障的文件数据的位置和数量,将对应的文件数据在其他缓存节点上进行缓存重建操作;在缓存重建操作完成后,更新全局缓存元数据服务上的信息,将重建的缓存信息加入全局缓存元数据服务,此时重建数据对应的全局缓存层也同时向外提供缓存服务。
与现有技术相比,本发明的有益效果在于:
本发明提供的分布式文件系统多级缓存实现方法将分布式系统中的多种缓存设备统一到多级全局缓存层中,实现了文件数据在多级缓存中迁移,保证了文件数据在快速缓存上,提高了文件数据的访问性能。同时考虑到多级全局缓存在分布式文件系统中的各种失效问题,采用文件数据冗余机制保证全局缓存在分布式文件系统中节点故障时的可用性,极大的提高了分布式文件系统的文件数据访问效率。
附图说明
图1是本发明实施例中全局缓存元数据服务分布示意图;
图2是本发明实施例中全局缓存元数据服务示意图;
图3是本发明实施例中全局缓存层示意图。
具体实施方式
下面结合附图对本发明作进一步详细说明。
本发明提供一种分布式文件系统多级缓存实现方法,所述方法包括以下步骤:
步骤1:识别分布式文件系统的缓存设备,并进行管理;
步骤2:构建全局缓存元数据服务;
步骤3:客户端文件数据操作解析;
步骤4:全局缓存层文件数据分布;
步骤5:全局缓存层文件数据保护处理。
所述步骤1中,分布式文件系统的缓存层由多级全局缓存层组成,每级全局缓存层由分布在不同缓存节点上的缓存组成,全局缓存层的存储介质包括内存卡、固态硬盘、非易失性随机访问存储器、磁盘阵列和磁盘等。
所述缓存节点上的缓存并不相同,且至少存在一种缓存;
缓存节点的物理形态存在于元数据节点或数据节点上,与元数据和数据服务共用服务器或单独使用缓存服务器,该缓存服务器只提供缓存服务;
缓存节点之间使用高速网络连接,通过消息交互共同完成分布式文件系统缓存层的功能。
所述步骤2中,在分布式文件系统的元数据服务中间增加全局缓存元数据服务,全局缓存元数据服务负责实现分布式文件系统全局缓存层的管理,客户端通过全局缓存元数据服务获取到文件数据对应的缓存,并负责缓存的状态维护;全局缓存元数据服务分布在多个缓存节点上(如图1)。
如图2,全局缓存元数据服务包括位置解析、状态监控、频度监控和任务控制;
位置解析负责客户端发起的文件数据位置解析,返回文件数据所在的全局缓存层,以及在缓存节点的具体位置信息;
状态监控用于监控缓存节点的状态,如果出现故障,对出现故障的缓存节点上的脏缓存实现缓存重建任务;
频度监控用于监控缓存中的文件数据访问频度,并根据访问频度生成文件数据在全局缓存层之间的调度任务;
任务控制负责与缓存节点和其他全局缓存元数据服务节点之间进行消息通信,实现缓存重建任务和缓存调度任务的具体操作。
所述频度监控使用权重监控缓存中的文件数据访问频度,全局缓存层依据该文件数据的权重进行数据块在多层缓存层中间的替换操作;权重Q表示为:
Q=A1*(1/I)+A2*F
其中,I表示上次文件数据访问的间隔时间,A1为访问间隔时间的加权因子,F表示本文件数据的访问次数,A2为访问次数的加权因子。考虑到了最近访问时间和访问频度,最近访问的热点数据,权重Q较大,因此更有可能存在高层次的缓存中,从而提高了热点数据的访问性能。
文件块权重的计算情景为:
情景1:分布式文件系统的元数据服务记录每一个文件的访问频度和访问时间,并根据此频度更新全局缓存层元数据服务中的相应权重。
情景2:分布式文件系统通过API主动设置文件的权重,以指定将文件对应的数据块放置到对应缓存层中。
所述步骤3中,客户端数据先发送给全局缓存元数据服务,确定数据操作对应的全局缓存层的位置,然后客户端和该全局缓存层交互,共同完成客户端文件数据操作解析;具体包括以下步骤:
步骤3-1:客户端首先向全局缓存元数据服务发起文件数据查询操作,确定对应文件数据是否存在于全局缓存层的缓存中;
步骤3-2:若发现全局缓存层的缓存中存在文件数据,则进行客户端文件数据的读写处理,并更新文件数据的访问时间和频度;客户端文件数据读写处理具体步骤如下:
步骤3-2-1:对于文件数据读操作,直接返回文件数据;
步骤3-2-2:对于文件数据修改操作,在全局缓存层中对文件数据进行加缓存锁,修改文件数据,并设置对应文件数据为已修改,完成修改之后解除对应缓存锁;后台线程进行数据向后端数据服务器的回刷操作;
步骤3-3:若所有全局缓存层中均不存在文件数据,通知数据节点从磁盘上加载文件数据,并将文件数据直接返回给客户端,更新元数据服务的文件数据记录,如果超过预设访问频度,执行文件数据调入全局缓存层操作。
所述步骤4中,全局缓存层在接收到文件数据后,将数据写入到对应的缓存设备上,更新全局缓存元数据服务中的文件数据,并将文件数据分布在不同层级的全局缓存层上。
所述步骤4具体包括以下步骤:
步骤4-1:设第M层全局缓存元数据服务的权值预定义为Q(M),其中缓存的文件数据的权值Q(b)范围为Q(M-1)≤Q(b)<Q(M)(如图3);
步骤4-2:客户端访问文件数据后,根据重新计算的权值Q(bn),由全局缓存层元数据服务模块将文件数据载入到对应的全局缓存层中,定义M-1层的缓存设备相比M层的缓存设备性能高,容量大,价格便宜;M+1层的全局缓存使用的缓存设备相比M层的缓存设备性能低,容量大,价格便宜;
步骤4-3:全局缓存元数据服务根据重新计算的文件数据权重Q(bn)确定文件数据需要挪动到具体的全局缓存层X;如果该文件数据被客户端频繁访问,需要将文件数据挪动到高性能的全局缓存层中,以加快文件数据操作速度;如果该文件数据很少被访问,则需要将文件数据放置到低性能且大容量的缓存设备中,以提高缓存的整体利用率;确定将该文件数据移动的全局缓存层X后,文件数据存放在本全局缓存层X的具体缓存设备;
步骤4-4:文件数据在全局缓存层X进行放置,出现如下三种情况:
(1)如果对应全局缓存层M存在空闲位置,则直接将文件数据放入全局缓存层M中空闲位置对应节点即可;
(2)如果对应全局缓存层M中不存在空闲位置,则使用缓存替换算法,将最少使用的文件数据移动到全局缓存层M+1中,移动完成之后执行步骤4-1,将文件数据放入到全局缓存层M中;缓存替换算法包括LRU算法和随机替换算法;
(3)如果需要替换的文件数据在多级全局缓存的最下一层,将文件数据替换出多级全局缓存层中,写入到分布式文件系统的数据服务器上;
步骤4-5:在步骤4-4完成后,更新步骤2对应的全局缓存元数据服务上的位置信息。
所述步骤5中,使用数据冗余技术,将文件数据在全局缓存层中放置多份,以保证文件数据在全局缓存层的部分缓存设备发生故障之后,文件数据仍然安全可用;具体包括以下步骤:
步骤5-1:在文件数据调度进入全局缓存层时,由全局缓存元数据服务将该文件数据生成几份文件数据,并放置在具体的全局缓存层对应的缓存设备中,生成文件数据的份数和位置信息由预先定义的策略决定;
步骤5-2:全局缓存层根据文件数据的份数和位置信息,将文件数据存放到对应的全局缓存层中;
步骤5-3:全局缓存层发现在缓存节点或者缓存节点上的缓存设备出现故障时,确定出现故障的文件数据的位置和数量,将对应的文件数据在其他缓存节点上进行缓存重建操作;在缓存重建操作完成后,更新全局缓存元数据服务上的信息,将重建的缓存信息加入全局缓存元数据服务,此时重建数据对应的全局缓存层也同时向外提供缓存服务。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,所属领域的普通技术人员参照上述实施例依然可以对本发明的具体实施方式进行修改或者等同替换,这些未脱离本发明精神和范围的任何修改或者等同替换,均在申请待批的本发明的权利要求保护范围之内。

Claims (10)

1.一种分布式文件系统多级缓存实现方法,其特征在于:所述方法包括以下步骤:
步骤1:识别分布式文件系统的缓存设备,并进行管理;
步骤2:构建全局缓存元数据服务;
步骤3:客户端文件数据操作解析;
步骤4:全局缓存层文件数据分布;
步骤5:全局缓存层文件数据保护处理。
2.根据权利要求1所述的分布式文件系统多级缓存实现方法,其特征在于:所述步骤1中,分布式文件系统的缓存层由多级全局缓存层组成,每级全局缓存层由分布在不同缓存节点上的缓存组成,全局缓存层的存储介质包括内存卡、固态硬盘、非易失性随机访问存储器、磁盘阵列和磁盘等。
3.根据权利要求2所述的分布式文件系统多级缓存实现方法,其特征在于:所述缓存节点上的缓存并不相同,且至少存在一种缓存;
缓存节点的物理形态存在于元数据节点或数据节点上,与元数据和数据服务共用服务器或单独使用缓存服务器,该缓存服务器只提供缓存服务;
缓存节点之间使用高速网络连接,通过消息交互共同完成分布式文件系统缓存层的功能。
4.根据权利要求1所述的分布式文件系统多级缓存实现方法,其特征在于:所述步骤2中,在分布式文件系统的元数据服务中间增加全局缓存元数据服务,全局缓存元数据服务负责实现分布式文件系统全局缓存层的管理,客户端通过全局缓存元数据服务获取到文件数据对应的缓存,并负责缓存的状态维护;全局缓存元数据服务分布在多个缓存节点上。
5.根据权利要求4所述的分布式文件系统多级缓存实现方法,其特征在于:全局缓存元数据服务包括位置解析、状态监控、频度监控和任务控制;
位置解析负责客户端发起的文件数据位置解析,返回文件数据所在的全局缓存层,以及在缓存节点的具体位置信息;
状态监控用于监控缓存节点的状态,如果出现故障,对出现故障的缓存节点上的脏缓存实现缓存重建任务;
频度监控用于监控缓存中的文件数据访问频度,并根据访问频度生成文件数据在全局缓存层之间的调度任务;
任务控制负责与缓存节点和其他全局缓存元数据服务节点之间进行消息通信,实现缓存重建任务和缓存调度任务的具体操作。
6.根据权利要求5所述的分布式文件系统多级缓存实现方法,其特征在于:所述频度监控使用权重监控缓存中的文件数据访问频度,全局缓存层依据该文件数据的权重进行数据块在多层缓存层中间的替换操作;权重Q表示为:
Q=A1*(1/I)+A2*F
其中,I表示上次文件数据访问的间隔时间,A1为访问间隔时间的加权因子,F表示本文件数据的访问次数,A2为访问次数的加权因子。
7.根据权利要求1所述的分布式文件系统多级缓存实现方法,其特征在于:所述步骤3中,客户端数据先发送给全局缓存元数据服务,确定数据操作对应的全局缓存层的位置,然后客户端和该全局缓存层交互,共同完成客户端文件数据操作解析;具体包括以下步骤:
步骤3-1:客户端首先向全局缓存元数据服务发起文件数据查询操作,确定对应文件数据是否存在于全局缓存层的缓存中;
步骤3-2:若发现全局缓存层的缓存中存在文件数据,则进行客户端文件数据的读写处理,并更新文件数据的访问时间和频度;客户端文件数据读写处理具体步骤如下:
步骤3-2-1:对于文件数据读操作,直接返回文件数据;
步骤3-2-2:对于文件数据修改操作,在全局缓存层中对文件数据进行加缓存锁,修改文件数据,并设置对应文件数据为已修改,完成修改之后解除对应缓存锁;后台线程进行数据向后端数据服务器的回刷操作;
步骤3-3:若所有全局缓存层中均不存在文件数据,通知数据节点从磁盘上加载文件数据,并将文件数据直接返回给客户端,更新元数据服务的文件数据记录,如果超过预设访问频度,执行文件数据调入全局缓存层操作。
8.根据权利要求1所述的分布式文件系统多级缓存实现方法,其特征在于:所述步骤4中,全局缓存层在接收到文件数据后,将数据写入到对应的缓存设备上,更新全局缓存元数据服务中的文件数据,并将文件数据分布在不同层级的全局缓存层上。
9.根据权利要求4所述的分布式文件系统多级缓存实现方法,其特征在于:所述步骤4具体包括以下步骤:
步骤4-1:设第M层全局缓存元数据服务的权值预定义为Q(M),其中缓存的文件数据的权值Q(b)范围为Q(M-1)≤Q(b)<Q(M);
步骤4-2:客户端访问文件数据后,根据重新计算的权值Q(bn),由全局缓存层元数据服务模块将文件数据载入到对应的全局缓存层中,定义M-1层的缓存设备相比M层的缓存设备性能高,容量大,价格便宜;
步骤4-3:全局缓存元数据服务根据重新计算的文件数据权重Q(bn)确定文件数据需要挪动到具体的全局缓存层X;如果该文件数据被客户端频繁访问,需要将文件数据挪动到高性能的全局缓存层中,以加快文件数据操作速度;如果该文件数据很少被访问,则需要将文件数据放置到低性能且大容量的缓存设备中,以提高缓存的整体利用率;确定将该文件数据移动的全局缓存层X后,文件数据存放在本全局缓存层X的具体缓存设备;
步骤4-4:文件数据在全局缓存层X进行放置,出现如下三种情况:
(1)如果对应全局缓存层M存在空闲位置,则直接将文件数据放入全局缓存层M中空闲位置对应节点即可;
(2)如果对应全局缓存层M中不存在空闲位置,则使用缓存替换算法,将最少使用的文件数据移动到全局缓存层M+1中,移动完成之后执行步骤4-1,将文件数据放入到全局缓存层M中;缓存替换算法包括LRU算法和随机替换算法;
(3)如果需要替换的文件数据在多级全局缓存的最下一层,将文件数据替换出多级全局缓存层中,写入到分布式文件系统的数据服务器上;
步骤4-5:在步骤4-4完成后,更新步骤2对应的全局缓存元数据服务上的位置信息。
10.根据权利要求1所述的分布式文件系统多级缓存实现方法,其特征在于:所述步骤5中,使用数据冗余技术,将文件数据在全局缓存层中放置多份,以保证文件数据在全局缓存层的部分缓存设备发生故障之后,文件数据仍然安全可用;具体包括以下步骤:
步骤5-1:在文件数据调度进入全局缓存层时,由全局缓存元数据服务将该文件数据生成几份文件数据,并放置在具体的全局缓存层对应的缓存设备中,生成文件数据的份数和位置信息由预先定义的策略决定;
步骤5-2:全局缓存层根据文件数据的份数和位置信息,将文件数据存放到对应的全局缓存层中;
步骤5-3:全局缓存层发现在缓存节点或者缓存节点上的缓存设备出现故障时,确定出现故障的文件数据的位置和数量,将对应的文件数据在其他缓存节点上进行缓存重建操作;在缓存重建操作完成后,更新全局缓存元数据服务上的信息,将重建的缓存信息加入全局缓存元数据服务,此时重建数据对应的全局缓存层也同时向外提供缓存服务。
CN201410508442.7A 2014-09-28 2014-09-28 一种分布式文件系统多级缓存实现方法 Active CN104317736B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410508442.7A CN104317736B (zh) 2014-09-28 2014-09-28 一种分布式文件系统多级缓存实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410508442.7A CN104317736B (zh) 2014-09-28 2014-09-28 一种分布式文件系统多级缓存实现方法

Publications (2)

Publication Number Publication Date
CN104317736A true CN104317736A (zh) 2015-01-28
CN104317736B CN104317736B (zh) 2017-09-01

Family

ID=52372971

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410508442.7A Active CN104317736B (zh) 2014-09-28 2014-09-28 一种分布式文件系统多级缓存实现方法

Country Status (1)

Country Link
CN (1) CN104317736B (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104657461A (zh) * 2015-02-10 2015-05-27 北京航空航天大学 基于内存与ssd协作式的文件系统元数据搜索缓存方法
CN106445409A (zh) * 2016-09-13 2017-02-22 郑州云海信息技术有限公司 一种分布式块存储的数据写入方法及装置
US10009412B1 (en) 2017-02-09 2018-06-26 International Business Machines Corporation Distributed file transfer with high performance
CN108228078A (zh) * 2016-12-21 2018-06-29 伊姆西Ip控股有限责任公司 用于存储系统中的数据访问方法和装置
CN110187825A (zh) * 2018-06-26 2019-08-30 西安奥卡云数据科技有限公司 一种超融合多副本加速存储系统
CN111984191A (zh) * 2020-08-05 2020-11-24 华东计算技术研究所(中国电子科技集团公司第三十二研究所) 一种支持分布式存储的多客户端缓存方法及系统
CN112115170A (zh) * 2020-09-18 2020-12-22 苏州浪潮智能科技有限公司 一种元数据缓存方法、系统、设备以及介质
CN112988619A (zh) * 2021-02-08 2021-06-18 北京金山云网络技术有限公司 数据读取方法、装置和电子设备
CN115328820A (zh) * 2022-09-28 2022-11-11 北京微核芯科技有限公司 多级缓存系统的访问方法、数据存储方法及装置
US20230022351A1 (en) * 2021-07-23 2023-01-26 EMC IP Holding Company LLC Bottom-up Pre-emptive Cache Update in a Multi-level Redundant Cache System
CN116048425A (zh) * 2023-03-09 2023-05-02 浪潮电子信息产业股份有限公司 一种分层缓存方法、系统及相关组件

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101118519A (zh) * 2007-09-10 2008-02-06 杭州华三通信技术有限公司 对缓存内容进行保护的方法和装置以及缓存控制器
US20090043951A1 (en) * 2007-08-06 2009-02-12 Anobit Technologies Ltd. Programming schemes for multi-level analog memory cells
CN102439934A (zh) * 2011-01-24 2012-05-02 华为技术有限公司 一种cdn中边缘服务器的多级缓存管理方法与系统
CN102880537A (zh) * 2012-09-07 2013-01-16 浪潮电子信息产业股份有限公司 一种Cache一致性协议软件模拟验证方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090043951A1 (en) * 2007-08-06 2009-02-12 Anobit Technologies Ltd. Programming schemes for multi-level analog memory cells
CN101118519A (zh) * 2007-09-10 2008-02-06 杭州华三通信技术有限公司 对缓存内容进行保护的方法和装置以及缓存控制器
CN102439934A (zh) * 2011-01-24 2012-05-02 华为技术有限公司 一种cdn中边缘服务器的多级缓存管理方法与系统
CN102880537A (zh) * 2012-09-07 2013-01-16 浪潮电子信息产业股份有限公司 一种Cache一致性协议软件模拟验证方法

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104657461A (zh) * 2015-02-10 2015-05-27 北京航空航天大学 基于内存与ssd协作式的文件系统元数据搜索缓存方法
CN106445409A (zh) * 2016-09-13 2017-02-22 郑州云海信息技术有限公司 一种分布式块存储的数据写入方法及装置
CN108228078A (zh) * 2016-12-21 2018-06-29 伊姆西Ip控股有限责任公司 用于存储系统中的数据访问方法和装置
US10594771B2 (en) 2017-02-09 2020-03-17 International Business Machines Corporation Distributed file transfer with high performance
US10218774B2 (en) 2017-02-09 2019-02-26 International Business Machines Corporation Distributed file transfer with high performance
US10225321B2 (en) 2017-02-09 2019-03-05 International Business Machines Corporation Distributed file transfer with high performance
US10594772B2 (en) 2017-02-09 2020-03-17 International Business Machines Corporation Distributed file transfer with high performance
US10009412B1 (en) 2017-02-09 2018-06-26 International Business Machines Corporation Distributed file transfer with high performance
CN110187825A (zh) * 2018-06-26 2019-08-30 西安奥卡云数据科技有限公司 一种超融合多副本加速存储系统
CN111984191A (zh) * 2020-08-05 2020-11-24 华东计算技术研究所(中国电子科技集团公司第三十二研究所) 一种支持分布式存储的多客户端缓存方法及系统
CN112115170A (zh) * 2020-09-18 2020-12-22 苏州浪潮智能科技有限公司 一种元数据缓存方法、系统、设备以及介质
CN112115170B (zh) * 2020-09-18 2022-12-06 苏州浪潮智能科技有限公司 一种元数据缓存方法、系统、设备以及介质
CN112988619A (zh) * 2021-02-08 2021-06-18 北京金山云网络技术有限公司 数据读取方法、装置和电子设备
US20230022351A1 (en) * 2021-07-23 2023-01-26 EMC IP Holding Company LLC Bottom-up Pre-emptive Cache Update in a Multi-level Redundant Cache System
US11782874B2 (en) * 2021-07-23 2023-10-10 EMC IP Holding Company LLC Bottom-up pre-emptive cache update in a multi-level redundant cache system
CN115328820A (zh) * 2022-09-28 2022-11-11 北京微核芯科技有限公司 多级缓存系统的访问方法、数据存储方法及装置
CN115328820B (zh) * 2022-09-28 2022-12-20 北京微核芯科技有限公司 多级缓存系统的访问方法、数据存储方法及装置
CN116048425A (zh) * 2023-03-09 2023-05-02 浪潮电子信息产业股份有限公司 一种分层缓存方法、系统及相关组件

Also Published As

Publication number Publication date
CN104317736B (zh) 2017-09-01

Similar Documents

Publication Publication Date Title
CN104317736A (zh) 一种分布式文件系统多级缓存实现方法
CN108733313B (zh) 利用预备盘建立多级闪速缓存的方法、设备和计算机可读介质
CN107506314B (zh) 用于管理存储系统的方法和装置
US8775731B2 (en) Write spike performance enhancement in hybrid storage systems
US10599578B2 (en) Dynamic cache bypassing
JP5943096B2 (ja) 複合不揮発性記憶装置のためのデータ移行
US8533397B2 (en) Improving performance in a cache mechanism by way of destaging data in partial strides
US8452819B1 (en) Methods and apparatus for optimizing resource utilization in distributed storage systems
US8966204B2 (en) Data migration between memory locations
US10459821B2 (en) Dynamically controlling erasure code distribution in an object store
US9471505B2 (en) Efficient multi-threaded journal space reclamation
US10558395B2 (en) Memory system including a nonvolatile memory and a volatile memory, and processing method using the memory system
US9612758B1 (en) Performing a pre-warm-up procedure via intelligently forecasting as to when a host computer will access certain host data
CN102841854A (zh) 根据动态分级存储器缓存认知执行数据读取的方法和系统
CN106104502B (zh) 用于存储系统事务的系统、方法和介质
US20180107601A1 (en) Cache architecture and algorithms for hybrid object storage devices
CN102937882A (zh) 对具有使用位图的存储设备的有效访问
US10365845B1 (en) Mapped raid restripe for improved drive utilization
US10789170B2 (en) Storage management method, electronic device and computer readable medium
WO2020211679A1 (en) Resource allocation based on comprehensive i/o monitoring in a distributed storage system
CN111309245B (zh) 一种分层存储写入方法和装置、读取方法和装置及系统
Ma et al. Alleviating hot data write back effect for shingled magnetic recording storage systems
KR20230050477A (ko) 캐시 엔트리 전송을 위한 캐시 위치 정보를 저장하기 위한 시스템 및 방법
CN108664415B (zh) 共享替换策略计算机高速缓存系统和方法
CN105808451B (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
TR01 Transfer of patent right

Effective date of registration: 20190912

Address after: 610000 Sichuan city of Chengdu province Tianfu Tianfu Avenue South Huayang Street No. 846

Co-patentee after: Sugon Information Industry Co., Ltd.

Patentee after: CHINESE CORPORATION DAWNING INFORMATION INDUSTRY CHENGDU CO., LTD.

Address before: 300384 Tianjin city Xiqing District Huayuan Industrial Zone (outer ring) Haitai Huake Street No. 15 1-3

Patentee before: Sugon Information Industry Co., Ltd.