本发明专利技术实施例公开了一种缓存分配方法及装置,用于避免系统因两端控制产生的两端控制器间的协商过程。本发明专利技术实施例方法包括:将缓存资源池被预先划分为与逻辑单元数量相等的虚拟子资源池,每个虚拟子资源池对应一个不同的逻辑单元,且每个虚拟子资源池所包括的缓存资源存储对应逻辑单元的业务数据。本发明专利技术实施例能够避免控制两端控制器之间复杂的通信协商过程,保障数据的安全。
【技术实现步骤摘要】
本专利技术涉及通信领域,特别涉及一种缓存分配方法及装置。
技术介绍
固态硬盘(SSD,Solid State Disk或Solid State Drive),也称作电子硬盘或者 固态电子盘,由于固态硬盘没有普通硬盘的旋转介质,因而抗震性极佳,且其芯片的工作温 度范围很宽(-40°C 85°C),目前广泛应用于军事、车载、工控、视频监控、网络监控、网络 终端、电力、医疗、航空等、导航设备等领域,SSD Cache是将SSD运用到存储系统中一种新 型应用,属于二级缓存,它主要利用SSD读写响应较短,尤其是读响应时间很短,将热点数 据存储在SSD中,当访问这些数据时,可以从SSD中而不是从传统磁盘中读取,这样可以大 大提高系统的性能,1-4个SSD盘片组成SSD Cache资源池,SSD盘片一般只能供存储系统 的一端控制器使用,当存储系统的一端控制器失效后,存储在其中的热点数据丢失,从而影 响系统的整体性能。现有技术中,SSD盘片组成的SSD Cache资源池可以供存储系统的两端控制器使 用,即使系统的一端控制器失效,另一个控制器也会接管其业务,不会影响系统的整体性 能。但是在上述现有技术中,如果出现分属于两端控制器的两个或两个以上的逻辑单 元(LUN,Logical Unit Number)需要同时访问一处缓存资源中数据的问题,那么两端控制 器之间便需要对因存储数据及读取数据产生的冲突进行通信协商,协商过程比较复杂,可 能会出现异常造成数据丢失等严重后果。
技术实现思路
本专利技术实施例提供了一种缓存分配方法及装置,可以避免两个及两个以上LUN同 时访问缓存资源池中的数据,从而避免控制两端控制器之间复杂的通信协商过程,保障数 据的安全。本专利技术实施例提供的一种缓存分配方法包括确定获取到的业务数据需要存储的逻辑单元;查找与所述逻辑单元对应的虚拟 子资源池;将所述业务数据存储于查找到的虚拟子资源池所包括的缓存资源中;其中,缓 存资源池被预先划分为与所述逻辑单元数量相等的虚拟子资源池,每个虚拟子资源池对应 一个不同的逻辑单元,且每个虚拟子资源池所包括的缓存资源存储对应逻辑单元的业务数 据。本专利技术实施例提供的一种缓存分配装置包括确定单元,用于确定获取到的业务数据需要存储的逻辑单元;查找单元,用于查找 与所述逻辑单元对应的虚拟子资源池;存储单元,用于将所述业务数据存储于查找到的虚 拟子资源池所包括的缓存资源中;划分单元,用于缓存资源池被预先划分为与所述逻辑单 元数量相等的虚拟子资源池。从以上技术方案可以看出,本专利技术实施例具有以下优点根据LUN的数量将缓存 资源池划分为数量相等的虚拟子资源池,每个虚拟子资源池与不同的逻辑单元LUN—一对 应,每个虚拟子资源池只供各自对应的LUN访问缓存数据,因此避免分别来自两端控制器 的两个及两个以上LUN同时访问同一缓存数据,从而避免控制两端控制器之间为访问同一 缓存资源数据而进行复杂的通信协商过程,保障数据的安全。附图说明图1为本专利技术实施例中缓存分配方法的一个实施例示意图;图2为本专利技术实施例缓存分配过程中的缓存系统结构示意图;图3为本专利技术实施例中缓存分配方法的另一个实施例示意图;图4为本专利技术实施例中缓存分配装置的一个实施例示意图。具体实施方式 本专利技术实施例提供了一种缓存分配方法及装置,可以将缓存资源池供存储系统的 两端控制器均衡使用,即使系统的一端控制器失效,另一个控制器也会接管其业务,因实现 双控而提高系统整体性能,下面分别进行详细说明。请参阅图1,本专利技术实施例中缓存分配方法的一个实施例包括101、确定获取到的业务数据需要存储的逻辑单元;各类型业务数据均需要存储到系统的逻辑单元LUN中,LUN是唯一的,不同LUN的 业务数据类型可能会是相同的。本专利技术实施例中,首先要确定获取得到的业务数据对应的LUN。102、查找与逻辑单元对应的虚拟子资源池;本专利技术实施例中,SSD Cache缓存资源被预先划分为与逻辑单元数量相等的虚拟 子资源池,每个虚拟子资源池与一个不同的逻辑单元对应,即每个虚拟子资源池的数据仅 供一个LUN访问,而且每个虚拟子资源池所包括的缓存资源存储对应逻辑单元的业务数 据,每个LUN在其对应的虚拟子资源池中对数据的访问均独立于其他LUN进行,但每个虚拟 子资源池的数据有机会供任意LUN访问。需要说明的是,各SSD Cache虚拟子资源池的初始容量可以相同,也可以不同,但 各虚拟子资源池只能使用划分的容量。103、将业务数据存储于查找到的虚拟子资源池所包括的缓存资源中。根据在步骤102中查找到与LUN对应的虚拟子资源池后,将业务数据也对应的存 储于分属不同LUN的不同虚拟子资源池所包括的缓存资源中。本专利技术实施例中,确定业务数据所要存储的逻辑单元,查找逻辑单元对应的虚拟 子资源池并将该业务数据存储其中,由于SSD Cache缓存资源被预先划分为与逻辑单元数 量相等的虚拟子资源池,每个虚拟子资源池与一个不同的逻辑单元对应,因此避免分别来 自两端控制器的多个LUN同时访问同一缓存数据,从而避免控制两端控制器之间为访问同 一缓存资源数据而进行复杂的通信协商过程。本专利技术实施例中,缓存分配过程中的缓存系统结构示意图请参阅图2,缓存系统有 两端控制器,201为第一控制器,202为第二控制器,203是缓存系统的业务层,LUNO, LUNl及LUN2均为业务层的业务,其中LUNO与LUNl由第一控制器201控制,LUN2由第二控制器 202控制,204是缓存系统的资源层,其中,208为固态硬盘缓存资源层,由固态硬盘组成,根 据不同的LUN业务的数量,将SSD Cache资源池划分成不同数量的SSD Cache虚拟子资源 池,具体划分为第一虚拟子资源池205,第二虚拟子资源池206,第三虚拟子资源池207,该 各虚拟子资源池对应各自的LUN业务,如图所示,第一虚拟子资源池205对应LUN0,第二虚 拟子资源池206对应LUN1,第三虚拟子资源池207对应LUN2。为了便于理解,下面以另一实施例对本专利技术实施例中的缓存分配方法进行详细描 述,请参阅图3,本专利技术实施例中的缓存分配方法的另一实施例包括301 303、本专利技术实施中步骤301至303的内容,请参见前述图1所述实施例中 步骤101至103所描述的内容,此处不再赘述。304、当到达预置时长时,获取所划分的虚拟子资源池中所存储数据的访问热度 值;在SSD Cache资源池系统内,可设置调整线程,预先设置一定的时长,每到达该预 置的时长则获取步骤101中所划分的虚拟子资源池中存储的数据的访问热度值,该时长的 设定与实际应用过程相关,时长的具体数值此处不作限定。需要说明的是,访问热度值包括虚拟子资源池中存储的数据的访问频率及虚拟子 资源池中存储的热点数据数量,访问频率越高,热点数据数量越多,表示访问热度值越高。需要进一步说明的是,虚拟子资源池中存储数据的访问频率及虚拟子资源池中存 储的热点数据数量均可由系统内部的计数器进行计数,具体为本领域技术人员公知技术, 此处不再赘述。305、将虚拟子资源池的容量调整至与当前存储数据访问热度值相匹配的容量;根据预置的访问热度值与虚拟子资源池容量的匹配关系,将虚拟子资源池的容量 调整至与当前存储数据访问热度本文档来自技高网...
【技术保护点】
一种缓存分配方法,其特征在于,包括:确定获取到的业务数据需要存储的逻辑单元;查找与所述逻辑单元对应的虚拟子资源池;将所述业务数据存储于查找到的虚拟子资源池所包括的缓存资源中;其中,缓存资源池被预先划分为与所述逻辑单元数量相等的虚拟子资源池,每个虚拟子资源池对应一个不同的逻辑单元,且每个虚拟子资源池所包括的缓存资源存储对应逻辑单元的业务数据。
【技术特征摘要】
【专利技术属性】
技术研发人员:肖飞,林宇,
申请(专利权)人:成都市华为赛门铁克科技有限公司,
类型:发明
国别省市:90[中国|成都]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。