一种多控制器间的缓存管理系统技术方案

技术编号:8735028 阅读:181 留言:0更新日期:2013-05-26 11:42
本发明专利技术提供一种多控制器间的缓存管理系统,通过控制器id记录数据块的分布,在单个缓存更新时,同时更新其它控制器的缓存,有效地克服了多控制器节点故障导致缓存数据丢失的缺陷,保证了数据的一致性,当系统中存在N+1个控制器时,能容忍N个控制器同时出现故障,同一数据在缓存中存在多份,并维持一张全局目录表,记录数据块的分布。在单个缓存更新时,同时更新其它控制器的缓存,有效地克服了多控制器节点故障导致缓存数据丢失的缺点,保证了数据的一致性。

【技术实现步骤摘要】
一种多控制器间的缓存管理系统
本专利技术涉及计算机应用领域,具体地说是一种多控制器间的缓存管理系统。
技术介绍
存储设备出现故障,一直是IT人员头痛的事,因为没有有效的手段,让多个控制器间数据高速缓存保持一致。某个或某些控制器出现故障后,没有足够的缓存备份,导致数据丢失。这会严重影响到企业的正常营运。目前市面存储产品大多只支持一个或几个特定的控制器出故障后数据不丢失。采用此方案的系统,可以做到N+1个控制器的系统中,N个控制器出故障后缓存数据不丢失。多控器间的缓存管理系统如字义所言,就是对多个控制器间的缓存资源虚拟化全局共享,实现缓存的统一管理与冗余分配,解决多个控制器同时故障时缓存数据丢失问题。
技术实现思路
本专利技术的目的是提供一种多控制器间的缓存管理系统。本专利技术的目的是按以下方式实现的,同一数据在缓存中存在多份,通过控制器id记录数据块的分布,在单个缓存更新时,同时更新其它控制器的缓存,有效地克服了多控制器节点故障导致缓存数据丢失的缺陷,保证了数据的一致性,当系统中存在N+1个控制器时,能容忍N个控制器同时出现故障,该系统结构包括:缓存管理模块(1)、缓存同步模块(2)、故障处理模块(3),其中:缓存管理模块(1)提供如下功能:磁盘管理功能:所有加入到多控系统缓存管理模块的磁盘对于每台控制器来说都需要创建对应的红黑树用来缓存数据,所有红黑树用链表连接起来,并记录此磁盘所属控制器id,便于确定此磁盘属于哪个控制器,并通知所有控制器,使其他控制器也创建此磁盘的红黑树并记录所属控制器id,从系统中移除磁盘时,需要通知所有控制器释放此结构;缓存数据组织缓存功能:将所有从本控制器或其他控制器发送的数据按照一定规则有序组织并缓存到内存中,每台控制器用链表将所有分配的空闲页挂接在一个链表中,对于所有控制器的每个磁盘,写入的数据都缓存在每台控制器对应磁盘的红黑树上;刷写缓存数据功能:根据磁盘id判断所属本控制器磁盘,刷新本磁盘上的红黑树中缓存数据到磁盘中,并通知所有其他控制器释放此缓存数据,其他磁盘释放对应红黑树的缓存数据,所有释放的缓存移动到空余页链表中;预读功能:在读数据时,如果数据存在于内存中,直接从内存返回数据内容,避免在磁盘上查找的低效率;缓存同步模块(2)提供如下功能:从任意控制器写入数据时,将此缓存数据发送到其余控制器缓存中保存,其余控制器更新自己的缓存,从而保证所有控制器缓存数据一致;从任意控制器读取数据时,如果数据不存在于缓存中,需要根据磁盘所属控制器id来通知此控制器读取实际数据,此控制器将数据读到缓存中后,将此缓存数据发送到其余控制器缓存中保存,其余控制器更新自己的缓存,从而保证所有控制器缓存数据一致;故障处理模块(3)提供如下功能:故障处理:负责通过心跳包检测各个控制器的状态,当某个或某些控制器出现故障时,相邻控制器会接管这些故障控制器磁盘,并更新此磁盘的所属控制器id;新增控制器:向系统新增控制器时,从相邻控制器复制缓存数据,保证缓存数据一致性。在体系结构中,所有控制器保存一份相同的缓存数据。缓存管理模块(1),当加入磁盘时通知所有控制器,使其他控制器也创建此磁盘的数据结构用来缓存数据。缓存同步模块(2),从任意控制器写入数据时,将此缓存数据发送到其余控制器缓存中保存,其余控制器更新自己的缓存,从而保证所有控制器缓存数据一致,从任意控制器读取数据时,如果数据不存在于缓存中,需要根据磁盘所属控制器id来通知此控制器读取实际数据,此控制器将数据读到缓存中后,将此缓存数据发送到其余控制器缓存中保存,其余控制器更新自己的缓存,从而保证所有控制器缓存数据一致。故障处理模块(3),向系统新增控制器时,从相邻控制器复制缓存数据,保证缓存数据一致性。本专利技术的有益效果是:一种多控器间的缓存管理系统支持在N+1个节点的存储系统中,N个节点同时故障。因此采用这种“多控器间的缓存管理系统”技术可以增加系统可靠性,防止在多个控制器出现故障时,缓存数据丢失问题。附图说明图1是磁盘注册流程图;图2是缓存数据写入同步流程图;图3是缓存数据读取同步流程图;图4是单台控制器缓存数据组织形式图。具体实施方式参照说明书附图对本专利技术的方法作以下详细地说明。正如
技术实现思路
中所描述的,本专利技术体系结构主要包括:缓存管理模块(1)、缓存同步模块(2)、故障处理模块(3)。在一个典型的配置环境里,如果是写入数据,数据写入到缓存中,缓存同步模块(2)根据将写入数据同步到其他控制器缓存,其他控制器缓存管理模块(1)会记录此数据,同步完成后本地控制器缓存管理模块(1)也记录此数据并通知上层写入完成。如果是读取数据,首先查找是否在本控制器缓存中,如果不存在则根据磁盘所属控制器id,缓存备份模块(2)通知所在控制器读取磁盘数据到缓存中并同步缓存数据。同步完成后直接读取本地控制器的缓存,返回读成功。当系统中某台控制器出现故障时,相邻控制器的故障处理模块(3)接管出错控制器的磁盘,并修改这些磁盘的所属控制器id为本控制器id,然后通知其他控制器更新这些磁盘修改的所属控制器id。至此,已经完整实现了整个一种多控器间的缓存管理系统,这种技术与传统的缓存管理系统不一样之处在于实现了多个控制器的缓存同步功能,并且保障了N+1个控制器存储系统中,N个控制器同时故障系统不会丢失缓存数据。因此采用这种技术,使其应用在存储系统中,解决了多控制器间数据高速缓存的一致性问题,极大的提高了系统的可靠性。除说明书所述的技术特征外,均为本专业技术人员的已知技术。本文档来自技高网
...
一种多控制器间的缓存管理系统

【技术保护点】
一种多控制器间的缓存管理系统,?其特征在于同一数据在缓存中存在多份,通过控制器id记录数据块的分布,在单个缓存更新时,同时更新其它控制器的缓存,有效地克服了多控制器节点故障导致缓存数据丢失的缺陷,保证了数据的一致性,当系统中存在N+1个控制器时,能容忍N个控制器同时出现故障,该系统结构包括:缓存管理模块(1)、缓存同步模块(2)、故障处理模块(3),其中:缓存管理模块(1)提供如下功能:磁盘管理功能:所有加入到多控系统缓存管理模块的磁盘对于每台控制器来说都需要创建对应的红黑树用来缓存数据,所有红黑树用链表连接起来,并记录此磁盘所属控制器id,便于确定此磁盘属于哪个控制器,并通知所有控制器,使其他控制器也创建此磁盘的红黑树并记录所属控制器id,从系统中移除磁盘时,需要通知所有控制器释放此结构;缓存数据组织缓存功能:将所有从本控制器或其他控制器发送的数据按照一定规则有序组织并缓存到内存中,每台控制器用链表将所有分配的空闲页挂接在一个链表中,对于所有控制器的每个磁盘,写入的数据都缓存在每台控制器对应磁盘的红黑树上;刷写缓存数据功能:根据磁盘id判断所属本控制器磁盘,刷新本磁盘上的红黑树中缓存数据到磁盘中,并通知所有其他控制器释放此缓存数据,其他磁盘释放对应红黑树的缓存数据,所有释放的缓存移动到空余页链表中;预读功能:在读数据时,如果数据存在于内存中,直接从内存返回数据内容,避免在磁盘上查找的低效率;缓存同步模块(2)提供如下功能:从任意控制器写入数据时,将此缓存数据发送到其余控制器缓存中保存,其余控制器更新自己的缓存,从而保证所有控制器缓存数据一致;从任意控制器读取数据时,如果数据不存在于缓存中,需要根据磁盘所属控制器id来通知此控制器读取实际数据,此控制器将数据读到缓存中后,将此缓存数据发送到其余控制器缓存中保存,其余控制器更新自己的缓存,从而保证所有控制器缓存数据一致;故障处理模块(3)提供如下功能:故障处理:负责通过心跳包检测各个控制器的状态,当某个或某些控制器出现故障时,相邻控制器会接管这些故障控制器磁盘,并更新此磁盘的所属控制器id;新增控制器:向系统新增控制器时,从相邻控制器复制缓存数据,保证缓存数据一致性。...

【技术特征摘要】
1.一种多控制器间的缓存管理系统,其特征在于同一数据在缓存中存在多份,通过控制器id记录数据块的分布,在单个缓存更新时,同时更新其它控制器的缓存,有效地克服了多控制器节点故障导致缓存数据丢失的缺陷,保证了数据的一致性,当系统中存在N+1个控制器时,能容忍N个控制器同时出现故障,该系统结构包括:缓存管理模块、缓存同步模块、故障处理模块,其中:缓存管理模块提供如下功能:磁盘管理功能:所有加入到多控系统缓存管理模块的磁盘对于每台控制器来说都需要创建对应的红黑树用来缓存数据,所有红黑树用链表连接起来,并记录此磁盘所属控制器id,便于确定此磁盘属于哪个控制器,并通知所有控制器,使其他控制器也创建此磁盘的红黑树并记录所属控制器id,从系统中移除磁盘时,需要通知所有控制器释放此结构;缓存数据组织缓存功能:将所有从本控制器或其他控制器发送的数据按照一定规则有序组织并缓存到内存中,每台控制器用链表将所有分配的空闲页挂接在一个链表中,对于所有控制器的每个磁盘,写入的数据都缓存在每台控制器对应磁盘的红黑树上;刷写缓存数据功能:根据磁盘id判断所属本控制器磁盘,刷新本磁盘上的红黑树中缓存数据到磁盘中,并通知所有其他控制器释放此缓存数据,其他磁盘释...

【专利技术属性】
技术研发人员:杨帆
申请(专利权)人:浪潮电子信息产业股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1