一种共享储存设备下自平衡数据访问压力的方法转让专利

申请号 : CN200810176492.4

文献号 : CN101739214B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 庄钦平陈玄同

申请人 : 英业达股份有限公司

摘要 :

本发明公开了一种共享储存设备下自平衡数据访问压力的方法,此方法包含以下步骤:设置各控制器的逻辑储存设备访问压力阀值;监视各控制器的数据访问流量;当第一控制器的数据访问流量超过第一控制器的逻辑储存设备访问压力阀值,并且数据访问对象为两个或两个以上逻辑储存设备时,则与第二控制器进行协商;如果第二控制器的数据访问流量超过第二控制器的逻辑储存设备访问压力阀值,则延迟此协商,否则,查询第一控制器中数据访问流量较小的逻辑储存设备;以及在第一控制器中禁止对此逻辑储存设备的操作,并在第二控制器中赋能对此逻辑储存设备的操作。

权利要求 :

1.一种共享储存设备下自平衡数据访问压力的方法,用以控制多个控制器对多个储存设备的直接访问,该等控制器之间通过一连接通道连接,于该等控制器中存在与该等储存设备相对应的多个逻辑储存设备,该方法包含以下步骤:设置该等控制器各自的一逻辑储存设备访问压力阀值;

监视该等控制器的数据访问流量;

当一第一控制器的数据访问流量超过该第一控制器的该逻辑储存设备访问压力阀值,并且数据访问对象为两个或两个以上逻辑储存设备时,则与一第二控制器进行一协商;

当该第二控制器的数据访问流量超过该第二控制器的该逻辑储存设备访问压力阀值时,则延迟该协商;

当该第二控制器的数据访问流量未超过该第二控制器的该逻辑储存设备访问压力阀值时,查询该第一控制器中数据访问流量较小的一逻辑储存设备;以及在该第一控制器中禁止对该逻辑储存设备的操作,并在该第二控制器中赋能对该逻辑储存设备的操作。

2.如权利要求1所述的共享储存设备下自平衡数据访问压力的方法,其特征在于,该连接通道为以太网络或者SAS连接。

3.如权利要求1所述的共享储存设备下自平衡数据访问压力的方法,其特征在于,该第一控制器及该第二控制器连接至外部网络。

4.如权利要求3所述的共享储存设备下自平衡数据访问压力的方法,其特征在于,该外部网络为以太网络或者光纤信道。

说明书 :

一种共享储存设备下自平衡数据访问压力的方法

技术领域

[0001] 本发明涉及一种访问储存设备的方法,尤其涉及一种共享储存设备下自平衡数据访问压力的方法。

背景技术

[0002] 目前,为了提高系统的可用性及平行处理能力,通常采用多个控制器共享多个实体储存设备的方式,使用者通过控制器对储存设备进行读取与写入的过程通常有如下两种方式:
[0003] 其一,如图1所示,第一控制器110与第二控制器120通过连接通道130相连。对于任一实体储存设备而言,在任一时刻只有一个控制器(如第一控制器110)对其进行读取或写入操作,当使用者通过其它控制器(如第二控制器120)对该实体储存设备进行读取或写入操作时,数据通过连接信道130在控制器之间传递,并且读取或写入操作通过与该实体储存设备连接的控制器(如第一控制器110)来完成。
[0004] 其二,如图2所示,针对实体储存设备,存在相应的逻辑储存设备,而多个控制器(第一控制器210、第二控制器220)均具有与一实体储存设备相对应的一逻辑储存设备。在使用者和多个控制器之间设置一平衡器200,此平衡器200决定使用者通过哪一个控制器对逻辑储存设备进行读取与写入操作。但在任一时刻只能对一个控制器上的逻辑储存设备进行读取与写入操作。
[0005] 然而上述现有技术仍然存有诸多缺陷,对于第一种方式而言,如果被访问的逻辑储存设备集中于一个控制器上,那么可能导致此控制器由于访问压力过大而变得缓慢,而另一控制器则闲置。对于第二种方式而言,则需要专门用来实现平衡器的设备,带来硬件及软件上的额外开销。

发明内容

[0006] 本发明的目的在于提供一种共享储存设备下自平衡数据访问压力的方法,用于当使用者访问储存设备时尽可能在各个控制器之间实现访问压力的均衡。
[0007] 本发明所提供了一种共享储存设备下自平衡数据访问压力的方法,用以控制多个控制器对多个储存设备的直接访问,该等控制器之间通过一连接通道连接,于该等控制器中存在与该等储存设备相对应的多个逻辑储存设备,该方法包含以下步骤:
[0008] 设置该等控制器的一逻辑储存设备访问压力阀值;
[0009] 监视该等控制器的数据访问流量;
[0010] 当一第一控制器的数据访问流量超过该第一控制器的该逻辑储存设备访问压力阀值,并且数据访问对象为两个或两个以上逻辑储存设备时,则与一第二控制器进行一协商;
[0011] 当该第二控制器的数据访问流量超过该第二控制器的该逻辑储存设备访问压力阀值时,则延迟该协商;
[0012] 当该第二控制器的数据访问流量未超过该第二控制器的该逻辑储存设备访问压力阀值时,查询该第一控制器中数据访问流量较小的一逻辑储存设备;以及[0013] 在该第一控制器中禁止对该逻辑储存设备的操作,并在该第二控制器中赋能对该逻辑储存设备的操作。
[0014] 该连接信道为以太网络或者SAS连接。
[0015] 该第一控制器及该第二控制器连接至外部网络。
[0016] 该外部网络为以太网络或者光纤信道。
[0017] 综上所述,本发明的优点在于:通过本发明所提供的共享储存设备下自平衡数据访问压力的方法,当使用者访问储存设备时,能够在各个控制器之间实现访问压力均衡。

附图说明

[0018] 图1为现有技术的一结构方块图;
[0019] 图2为现有技术的另一结构方块图;
[0020] 图3为本发明所运行的系统的结构方块图;以及
[0021] 图4为本发明的方法流程图。
[0022] 其中,附图标记:
[0023] 110 第一控制器 120 第二控制器
[0024] 130 连接通道 200 平衡器
[0025] 210 第一控制器 220 第二控制器
[0026] 310 第一控制器 311 第一通量监视模块[0027] 320 第二控制器 321 第二通量监视模块[0028] 330 连接通道 340 外部网络
[0029] HD1、HD2、HD3 实体储存设备
[0030] DG1、DG2、DG3、DG1’、DG2’、DG3’逻辑储存设备

具体实施方式

[0031] 以下,将结合附图对本发明的较佳实施方式作详细说明。
[0032] 请参考图3和图4,图3表示了本发明所运行的系统的结构方块图,图4为本发明的方法流程图。
[0033] 如图3所示,本发明的多个控制器(第一控制器310、第二控制器320)分别连接至外部网络340,外部网络340可以为以太网络、光纤信道或者其它网络。第一控制器310通过连接通道330与第二控制器320相连。其中,连接信道330可以为以太网络、SAS连接或者其它连接方式。
[0034] 第一控制器310和第二控制器320共享三个实体储存设备HD1、HD2以及HD3。对应于三个实体储存设备HD1、HD2以及HD3,在第一控制器310存在三个逻辑储存设备DG1、DG2以及DG3,在第二控制器320存在三个逻辑储存设备DG1’、DG2’以及DG3’。使用者通过逻辑储存设备对实体储存设备进行读取与写入操作。在此,假定第一控制器310的逻辑储存设备DG1及DG2是赋能的,DG3是禁止的,而第二控制器320的逻辑储存设备DG1’及DG2’是禁止的,DG3’是赋能的。那么,使用者对实体储存设备HD1、HD2及HD3的访问须通过逻辑储存设备DG1、DG2以及DG3’来进行。
[0035] 现在请参考图4,本发明的共享储存设备下自平衡数据访问压力的方法用于在多个控制器(第一控制器310、第二控制器320)之间平衡数据访问压力。为实现本发明的目的,于第一控制器310设置一第一通量监视模块311,于第二控制器320设置一第二通量监视模块321。
[0036] 如图4所示,本发明的共享储存设备下自平衡数据访问压力的方法包含如下步骤:通过第一通量监视模块311设置第一控制器310的逻辑储存设备访问压力阀值,通过第二通量监视模块321设置第二控制器320的逻辑储存设备访问压力阀值(步骤400),其中逻辑储存设备访问压力阀值可依据相应控制器的处理能力来确定。接着,通过第一通量监视模块311监视第一控制器310的逻辑储存设备DG1及DG2的数据访问流量,即数据访问压力情况,通过第二通量监视模块321监视第二控制器320的逻辑储存设备DG3’的数据访问压力情况(步骤410)。
[0037] 当第一通量监视模块311检测到对逻辑储存设备DG1及DG2的访问压力持续大于针对第一控制器310而设置的逻辑储存设备访问压力阀值时,第一通量监视模块311通过连接通道330与第二通量监视模块321进行协商(步骤420)。此时,判断第二控制器320的数据访问压力是否大于针对第二控制器320设置的逻辑储存设备访问压力阀值(步骤430),当第二通量监视模块321检测到对逻辑储存设备DG3’的访问压力亦大于针对第二控制器320设置的逻辑储存设备访问压力阀值时,则延迟第一通量监视模块311与第二通量监视模块321的协商(步骤440),然后,返回步骤420。
[0038] 当第一通量监视模块311仍检测到对逻辑储存设备DG1及DG2的访问压力持续大于针对第一控制器310而设置的逻辑储存设备访问压力阀值时,第一通量监视模块311通过连接通道330再次与第二通量监视模块321进行协商。如果此时第二通量监视模块321检测到对逻辑储存设备DG3’的访问压力未大于针对第二控制器320设置的逻辑储存设备访问压力阀值时,第一控制器310查询逻辑储存设备DG1和DG2中访问压力较小者(步骤450)。在此,假定逻辑储存设备DG2的数据访问流量较小。因而,在第一控制器310中禁止对逻辑储存设备DG2的操作,并在第二控制器320中赋能对逻辑储存设备DG2’的操作(步骤460)。此后,对实体储存设备HD2的操作均通过第二控制器320的逻辑储存设备DG2’来进行。
[0039] 此后,即使第一通量监视模块311检测到逻辑储存设备DG1的访问压力持续大于针对第一控制器310而设置的逻辑储存设备访问压力阀值,但由于第一控制器310上仅存在一个逻辑储存设备DG1,没有两个或两个以上逻辑储存设备被访问,因而第一通量监视模块311不与第二控制器320的第二通量监视模块321进行协商。