CN102257469A - 存储系统及用于控制存储系统的方法 - Google Patents

存储系统及用于控制存储系统的方法 Download PDF

Info

Publication number
CN102257469A
CN102257469A CN200980129939.5A CN200980129939A CN102257469A CN 102257469 A CN102257469 A CN 102257469A CN 200980129939 A CN200980129939 A CN 200980129939A CN 102257469 A CN102257469 A CN 102257469A
Authority
CN
China
Prior art keywords
nuclear
controller
entitlement
pattern
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
CN200980129939.5A
Other languages
English (en)
Other versions
CN102257469B (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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Publication of CN102257469A publication Critical patent/CN102257469A/zh
Application granted granted Critical
Publication of CN102257469B publication Critical patent/CN102257469B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0631Configuration or reconfiguration of storage systems by allocating resources to storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0658Controller construction arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

基于由用户考虑到由在多个非对称核中的负载分配造成的负载改变进行的设置,选择并执行最佳负载分配处理。具有多个核的控制器基于LU所要权管理信息对每一个LU提取指示具有LU所有权的核和作为LU所有权改变目的地的候补核之间的关系的模式;对每一个LU测量多个资源的使用情况;基于测量结果对每一个LU预测多个资源的使用情况的改变和要由转移处理本身产生的开销;基于各个预测结果选择与用户的设置信息匹配的模式;并将LU所有权转移到属于所选择的模式的核。

Description

存储系统及用于控制存储系统的方法
技术领域
本发明一般涉及存储系统。更具体地,本发明涉及用于提高由包括微处理器的多个资源构成的存储系统的性能的技术。
背景技术
存储系统由用于执行由主计算机发出的数据处理的存储控制单元以及用于存储数据的存储设备构成。已知通过提供上述多个存储控制单元并实现存储设备中的数据冗余来提高存储系统的可靠性的技术(日本专利申请公开(Kokai)公开No.2008-134775)。
日本专利申请公开(Kokai)公开No.2008-134775揭示了一种具有多个存储控制单元的存储系统,其中,通过使用将主计算机发出的输入/输出请求传递到应该处理该输入/输出请求的处理器的技术来分配负载,从而改善处理速度。
[相关技术文献]
[专利文献1]日本专利申请公开(Kokai)公开No.2008-134775
发明内容
上述公开文献揭示了在存储控制单元中具有多个核的系统。在该情况下,不同的资源用于在相同的存储控制单元中的核之间和在不同的存储控制单元中的核之间的数据处理。因此,作为负载分配的结果,可以对处理器核统一地进行装载,但是可以对其它资源非统一地进行装载。
此外,当为了负载分配而切换处理器核所负责的逻辑单元时产生开销。由此,仅为了负载分配的目的切换逻辑单元可能降低存储系统的性能。
本发明的目的是提供:能够基于由用户考虑到由在多个非对称核中的负载分配造成的负载改变进行的设置来选择并执行最佳负载分配处理的存储系统;及用于控制该种存储系统的方法。
为了达到上述目的,根据本发明的一个方面,提供多个非对称核作为接收处理对象中的LU所有权并从而负责该处理对象的处理的核;并且当对各个核分配负载时,对每一个处理对象提取指示在具有LU所有权的核和作为LU所有权的转移目的地的候补核之间的关系的模式;获取构成存储系统的各个资源的使用情况;基于所获取的各个资源的使用情况,预测在每一个核中与负载分配相关联发生的状态改变;基于预测结果选择与设置条件匹配的模式;并根据所选择的模式,确定LU所有权改变目的地。
发明效果
根据本发明,能够根据设置执行在多个非对称核中的最佳负载分配。
附图说明
图1是根据本发明实施例的存储系统的框图;
图2是根据本发明实施例的存储系统的存储器配置图;
图3是根据本发明实施例的存储系统的高速缓冲存储器配置图;
图4是说明根据本发明实施例的存储系统的配置信息的配置图;
图5是说明根据本发明实施例的存储系统的配置信息的配置图;
图6是说明根据本发明实施例的存储系统的资源使用情况管理信息的配置图;
图7是说明关于在根据本发明实施例的存储系统中在转移LU所有权之后资源使用情况的改变的预测结果的信息的配置图;
图8是说明关于要由根据本发明实施例的存储系统执行的LU所有权改变处理本身产生的开销的预测结果的信息的配置图;
图9是说明由根据本发明实施例的存储系统执行的平衡处理的流程图;
图10是说明由根据本发明实施例的存储系统执行的简化的平衡处理的流程图;
图11是说明由根据本发明实施例的存储系统执行的普通的平衡处理的流程图;
图12是用于说明根据本发明实施例的存储系统的用户怎样进行设置的管理屏幕配置图;
图13是示出根据本发明实施例的存储系统的资源使用情况的管理信息配置图的另一形式;
图14是说明由根据本发明实施例的存储系统执行的性能信息获取和分析处理的流程图;
图15是说明用于根据本发明实施例的存储系统的用户的性能信息显示屏幕的配置图;
图16是说明用于根据本发明实施例的存储系统的用户的LU所有权改变处理历史显示屏幕的配置图;
图17是说明用于根据本发明实施例的存储系统的用户的自动设置管理屏幕的配置图。
具体实施方式
下面将参考相关实施例说明本发明的实施例。图1是根据本发明实施例的存储系统的配置图。参考图1,该存储系统包括存储系统101、主计算机103、104及管理主机105。
各个主计算机103、104具有用于连接到存储系统101的通信端口(未示出),从而经由该通信端口和连接路径184、185将各个主计算机103、104连接到存储系统101。经由管理连接路径183将管理主机105连接到存储系统101。管理主机105被配置作为用户输入例如作为负载分配策略的设置信息等设置信息的输入单元。
图1示出主计算机103、104、管理主机105及存储系统101互相直接连接的配置。被称为“SAN(存储区域网)”的网络可以用于连接到主机,被称为“LAN(局域网)”的网络可以用于连接到管理主机,并且可以使用能够连接到许多主计算机和管理主机的配置。例如光纤通道和iSCSI(互联网小型计算机系统接口)等协议可以用作SAN。此外,与连接到主机相同的连接路径可以被用于连接到管理主机。
存储系统101包括控制器111、控制器151及磁盘181。对控制器111、151分别给予数字“0”和“1”作为“控制器号”。经由控制器间总线182连接控制器111和151。经由磁盘连接路径121、161连接控制器111、151和磁盘181。
参考图1,使用磁盘181作为普通存储设备。例如,用于FC(光纤通道)的HDD(硬盘驱动)、SAS(SAN附加存储)、ATA(AT附加设备)或SSD(固态驱动)可以用作磁盘181。此外,除了磁盘181,还可以使用例如磁带和闪速存储器等存储介质。另外,可以使用单个磁盘181和多个磁盘181配置RAID(廉价磁盘冗余阵列),并且具有RAID配置的磁盘181可以访问主计算机103、104的对象。
控制器111包括主机输入/输出控制器单元119、数据转移控制单元112、磁盘输入/输出控制单元118、高速缓冲存储器117、管理I/F 115、CPU(中央处理单元)114、桥113及存储器116。
经由内部总线136将管理I/F 115连接到桥。经由管理连接路径183还将管理I/F 115连接到管理主机105,并且管理I/F 115控制将数据发送到管理主机105或从管理主机105接收数据,以及控制与管理主机105的通信。
经由内部总线134将存储器116连接到桥113。经由内部总线135将CPU114连接到桥113,CPU 114存储多个核122。
图1示出作为单个部件的CPU 114,但是,可以对存储系统提供多个CPU114。关于如何使用多个核或处理器,存在被称为“SMP(对称多处理)”的对称处理方法和被称为“AMP(非对称多处理)”的非对称处理方法。
通过SMP方法,OS(操作系统)通常决定哪个核或处理器应该执行哪个处理。在该情况下,负载分配的效果根据哪个核或处理器执行该处理而发生极大的改变。因此,要求包括OS的控制程序能够选择用于执行处理的核或处理器。
通过AMP方法,控制程序可以清楚地指明用于执行处理的核或处理器。在SMP方法的情况下,OS具有能够选择用于执行处理的核或处理器的功能,并因此而使用该功能。容易发生地,在AMP方法的情况下,存在其中每一个核处理器负责特定处理并且不能仅由一个核处理器执行所有处理的执行方法。
如果进行设置以使得第0个核可以控制主机输入/输出控制单元119,则在不使用该核的情况下,不能执行用于对存储系统101进行输入的处理或用于从存储系统101进行输出的处理。
除非特别注明,下文使用的术语“核”表示能够处理所有对存储系统101的输入或从存储系统101的输出的处理系统。换句话说,核122根据在存储器116中存储的程序执行各种运算处理,并基于处理结果控制整个控制器111。
经由内部总线137将数据转移控制单元112连接到桥113。数据转移控制单元112控制器111中的数据转移。此外,经由控制器间总线182将数据转移控制单元112和数据转移控制单元152互相连接。作为结果,控制器111、151可以经由控制器间总线182互相通信。
经由内部总线133将高速缓冲存储器117连接到数据转移控制单元112,在转移数据时,高速缓冲存储器117临时存储要被转移的数据。
经由连接路径184将主机输入/输出控制器单元119连接到主计算机103,主机输入/输出控制器单元119控制对主计算机103的输入或从主计算机103的输出。
经由磁盘连接路径121将磁盘输入/输出控制单元118连接到磁盘181,磁盘输入/输出控制单元118控制对磁盘的数据输入或从磁盘的数据输出。
与控制器111相同,控制器151包括主机输入/输出控制器单元159、数据转移控制单元152、磁盘输入/输出控制单元158、高速缓冲存储器157、管理I/F 155、CPU 154、桥153及存储器156,并且CPU 154由多个核162构成。
在本实施例中示出的各个部件并非必需是基本要素。例如,存在其中可以使用集成了CPU 114和桥113的芯片的配置或其中可以使用集成了CPU 114、桥113及数据转移控制单元112的芯片的配置。另外,存在可以由相同存储器实现高速缓冲存储器117和存储器116的配置以及由上述多个处理器构成的配置。
如果如上所述改变了部件,则下面描述的资源使用情况管理信息501的内容将根据配置而发生改变。如果改变了配置从而存储器116包括高速缓冲存储器117,则不存在用于连接高速缓冲存储器117和数据转移控制单元112的总线133,并且代替地,与要在高速缓冲存储器117和数据转移控制单元112之间提供的数据对应的数据将被提供到内部总线134。
而且,存在在多处理器环境中的处理器之间使用物理上不同的存储器的配置。在该情况下,必需个体地测量和评价存储器和存储器总线的资源使用情况。当然,即使在多核配置中也可以实现与上述配置类似的配置。在该情况下,需要上面提到的个体评价。
如图2所示,存储器116存储用于控制器中的核的公共存储区201、用于控制器的公共存储区202及独占的核区203。下面将描述在这些区域中的每一个中存储的信息。然而,并非总是需要将所有这些信息项存储在图2所示的区域中。
如果在用于控制器中的核的公共存储区201中存储控制信息213,则将减小所使用的存储器大小。另一方面,如果在独占的核区203中存储控制信息213,则由于控制信息231的冗余和无用区域的增加将增大存储器大小,但是在独占的核区203中存储控制信息231具有通过例如消除当访问内部核信息时必须执行独占处理而提高性能的效果。
独占的核区203存储控制信息231。控制信息231是当CPU 114的核122处理对存储系统111发出的I/O时需要的信息。例如,控制信息231包括由核122管理的存储器信息以及主机输入/输出控制单元119和磁盘输入/输出控制单元118参考的信息表。独占的核区203仅基本地存储对核122、162负责的区域必需的信息。
作为核122、162负责的区域,下文中将作为核122、162的处理对象的LU(逻辑单元)当作核122、162负责的单元。逻辑单元LU是在磁盘181的物理存储区中配置的虚拟逻辑区。当然,与LU的范围不同的范围可以是核122、162负责的范围。
用于控制器的公共存储区202存储配置信息221和性能信息222。
用于控制器中的核的公共存储区201存储操作系统211、磁盘阵列控制程序212、数据转移控制单元控制程序213、输入/输出控制单元控制程序214、性能信息测量程序215、性能信息分析程序216及LU所有权改变程序217。由各个核122、162执行各个程序。下面给出关于该情况的说明。
LU所有权改变程序217是对每个核负责的LU执行操作以将一个核中的LU所有权转移到另一个核的程序。性能信息测量程序215是用于监视存储系统101中的各种资源的使用情况、测量各个资源被使用的程度并在性能信息222中存储测量结果的程序。性能信息分析程序216是用于分析由性能信息测量程序215测量的性能信息222并控制LU所有权改变处理的执行的程序。
数据转移控制单元控制程序213是用于控制数据转移控制单元112的程序,输入/输出控制单元控制程序214是用于控制主机输入/输出控制单元119和磁盘输入/输出控制单元118的程序。操作系统211是用于操作CPU 114的核的程序,磁盘阵列控制程序212是通过执行例如计算对磁盘181输入的输入地址或从磁盘181输出的输出地址来控制整个磁盘阵列的程序。
存储器156具有与存储器116类似的配置。LU所有权改变程序217是用于改变负责对从主计算机103、104接收的输入/输出请求进行处理的核但不限制接收输入/输出请求的物理端口的程序。换句话说,LU所有权改变处理将不禁止在LU所有权改变处理之前的从主计算机103、104接收的输入/输出请求的处理,并且在不停止输入/输出请求的情况下可以执行转移处理。
如图3所示,高速缓冲存储器117存储本地控制器区301和外部控制器区341。本地控制器区301表示由其中存在相关高速缓冲存储器的控制器的核使用的区域。例如,在具有控制器号“0”的控制器111的高速缓冲存储器117中,本地控制器区301是由用于控制器111的核122使用的区域。
外部控制器区341表示由除了其中存在相关高速缓冲存储器的控制器之外的控制器的核使用的区域。例如,在高速缓冲存储器117中,外部控制器区341是由用于控制器151的核157使用的区域。在用于控制器151的高速缓冲存储器157中,本地控制器区和外部控制器区与用于控制器111的高速缓冲存储器117的本地控制器区和外部控制器区相反。
本地控制器区301存储本地控制器管理信息311和本地控制器数据312。本地控制器管理信息311是由用于控制器111的核使用的管理信息,例如本地控制器数据212的存储状态。外部控制器区341存储外部控制器管理信息351和外部控制器数据352。
这样,通过在高速缓冲存储器117中存储由外部控制器使用的数据,对于该数据也提高了容错能力。
从上述信息项中,由核122、162镜像写控制器管理信息311、351,并主要由数据转移控制单元112、152镜像写控制器数据312、352。作为结果,在高速缓冲存储器117、157中既存储控制器管理信息311、351又存储控制器数据312、352。
当然,为了减少负载,存在仅需要被存储在本地控制器中的某些信息。因此,上述信息项不必完全二重化(dualized)。如果使用高速缓冲存储器117作为用于操作的临时区域,则只必需仅在本地控制器区301中临时存储数据,并且本地控制器区301可以不必完全对应于高速缓冲存储器157中的外部控制器区。
如图4所示,配置信息221由LU所有权管理信息401、平衡参数信息402及数据存储信息403构成。
LU所有权管理信息401存储LU所有权管理表T401,管理表T401管理指示出哪个核负责对各个区域的输入或负责从各个区域的输出的相应关系。由于LU是本实施例中的管理区域单元,因此图4示出当前负责关于各个LU的处理的那个核的管理。
平衡参数信息402存储平衡参数表T402。平衡参数表T402包括默认参数或由用户设置作为当执行负载平衡时使用的参数,并且平衡参数表T402提供用于当控制负载平衡时确定处理细节的指导。基于被设置为负载平衡优先级的数值和被设置为存储系统性能优先级的数值,确定负载平衡应该被执行到何种程度。
即使系统性能可能稍微降低,但如果负载平衡优先级高而存储系统性能优先级低,则仍控制负载平衡从而将分配和平衡各个资源上的负载。相反,即使负载可能稍微不平衡,但如果负载平衡优先级低而存储系统性能优先级高,则仍控制负载平衡从而将提高总体性能。
可接受的转移开销等级是指示出由前述LU所有权改变程序217的操作和LU所有权改变处理的执行产生的开销可接受到何种程度的参数。如果该数值低,即,如果可接受等级低,则仅允许具有小开销的转移。这表示,例如,在转移之前I/O已经停止了一段时间以及在高速缓冲存储器117、157中不存在或仅存在很少的数据的情况下,允许进行具有作为转移的结果的少量信息的转移。
性能信息参考范围是当转移LU所有权时进行参考的性能信息的范围。如果对该参数设置短的时间段,则可以跟踪在短的时间段中的负载改变,但是由于临时或突然负载改变因此可能增加执行在性能方面本质上非必需的或有害的LU所有权改变的可能性。相反,如果对该参数设置长的时间段,则将减小转移LU所有权的失败的概率,但是,在应该执行LU所有权改变的情况下,将增加不转移LU所有权或延迟转移时间的可能性。
当用户明确地指示出LU所有权并且不打算转移该LU所有权时,设置分配优先级。换句话说,为了在如下情况下确保性能的目的使用分配优先级:对特定核设置某个LU中的LU所有权并且允许从该核不转移该LU所有权,并且不允许将另一LU中的LU优先级转移到如上所述的特定核。
数据存储信息403由数据存储信息表T403构成。数据存储信息表T403是指示出在哪里存储对由存储系统101管理的LU发出的数据的信息,数据存储信息表T403存储对数据存储处理必需的信息。
如图5所示,性能信息222存储资源使用情况管理信息501、LU所有权改变后资源使用情况改变预测信息502及LU所有权改变处理开销预测信息503。
资源使用情况管理信息501存储如图6所示的资源使用情况管理信息表T601。资源使用情况管理信息表T601存储由性能信息测量程序215对作为LU所有权管理单元的各个LU测量的各个资源的使用情况以及过去的历史。可以基于资源使用情况管理信息表T601来判断负载在当前存储系统101中是否是不平衡的。而且,基于过去的历史,可以获取关于负载是否仍不平衡及已经出现的改变的程度的信息。
容易发生地,如资源使用情况管理信息表T601所示,关于某LU的负载不必需强加在负责该LU的核及其控制器上。这是因为,例如,当通过数据的镜像写来在用于外部控制器的高速缓冲存储器中存储数据时,使用用于将高速缓冲存储器117、157和数据转移控制单元112、152连接的控制器间总线182和总线133、173来利用这些资源。
此外,资源使用情况管理信息501示出与存储系统101的性能相关的、由性能信息测量程序215测量的资源的所有使用情况,并且资源使用情况管理信息501包括除了上述项目之外的许多信息项。
特定地,在图13中所示的资源使用情况管理信息1301和资源使用情况管理信息表T1301中存储的高速缓冲存储器117、157的使用情况对LU所有权改变处理的性能有极大的影响。存在于高速缓冲存储器117中的数据中的脏数据代表在磁盘181中还没有反映出来的数据,并且如果存在大量脏数据,则表示对于相关LU剩下了许多处理序列未完成。因此,存在具有大量脏数据的LU对已经被转移了LU所有权的处理器除了施加那时的I/O负载之外可能还临时施加大负载的可能性,作为结果,可以通过参考在该表格T1301中记录的脏数据来考虑/预测临时强加大负载的可能性。
除了脏数据之外,没有被镜像写入的数据的量也对LU所有权改变处理的性能有影响。一般,为例如电源中断等故障做准备,通常将脏数据镜像写入高速缓冲存储器117和157。
另一方面,为了减少控制器间总线182的使用率和高速缓冲存储器的使用,有时不镜像写低重要性的非脏数据和脏数据。关于被镜像写的数据,相同的数据已经存在于高速缓冲存储器117、157中,因此不特定地执行数据转移。
然而,关于没有被镜像写的数据,当在不同的控制器之间转移LU所有权时,并且如果为了利用相关数据复制或转移了相关数据然后丢弃相关数据,则需要用于丢弃源控制器中的数据的处理。控制器中的核共享高速缓冲存储器117以执行上述处理,并且当在不同控制器之间不转移LU所有权时不需要上述处理。因此,是否在不同处理器之间转移LU所有权产生负载的极大的不同。作为结果,高速缓冲存储器中的数据的类型和数量是决定要执行哪种LU所有权改变的重要因素。
LU所有权改变后资源使用情况改变预测信息502存储如图7所示的LU所有权改变后资源使用情况改变预测信息表T701。由性能信息分析程序216产生LU所有权改变后资源使用情况改变预测信息表T701,LU所有权改变后资源使用情况改变预测信息表T701存储关于如果某个LU中的LU所有权被转移到某个核则在转移该LU所有权之后对各个资源会出现的负载的何种改变的预测信息。
例如,图7示出如果将LU0的LU所有权转移到每一个不同的核则每一个核上的负载将改变到何种程度。如果将当前属于控制器0的核0(图7中的目的地核“0-0”)的LU所有权被转移到控制器1的核0(图7中的目的地核“1-0”),则图7示出原来具有LU所有权的控制器0的核0上的负载变为-7,已经接管了该LU所有权的控制器1的核0上的负载变为+10。
如在上述情况中,可能存在通过LU所有权的转移而增加整个系统上的负载的情况。这是由于,如果从控制器111的主机输入/输出控制单元119发送主机I/O,则控制器111的核需要曾接收命令,然后将该信息传递到负责该命令的核,并且稍微地消耗用于两个核的处理器资源。
如果将LU所有权转移到控制器0的核1(图7中的目的地核“0-1”),则改变的总量是负数,这表示整个系统上的负载将减少。该预测的原因也是考虑了由核之间的信息通信造成的负载的结果。当整个主机输入/输出控制单元119或当前主要接收命令的端口是主机输入/输出控制单元或控制器0的核1负责和控制的端口时出现以上现象。
如果如上所述由主机输入/输出控制单元或控制器0的核1负责的端口接收命令,则信息在两种状态下在相关核之间进行通信,该两种状态即,LU所有权属于控制器0的核0的转移前状态和LU所有权属于控制器1的核0的转移后状态。然而,由于对于上述信息通信需要不同的资源,因此在如上所述控制器0的核0具有LU所有权的状态下的系统负载小于在控制器1的核0具有LU所有权的状态下的系统负载。控制器0的核0和1之间的交换信息是在由这些核共享的存储器116内完成的处理。
另一方面,如果要从控制器0的核1将信息传递到控制器1的核0,则该信息需要经过数据转移控制单元112、控制器间总线182及数据转移控制单元152。因此,在处理过程中不仅核而且信息所经过的总线都消耗资源。
在可能花费长时间的写数据的情况下,例如将数据从核122写到用于外部控制器的存储器156,一般选择通过后写(post writing)来减少核的资源消耗的方法。然而,考虑到后写缓冲器已经在使用中的情况,该处理可能比用于本地控制器的存储器116消耗更多的资源。
如果将在相同控制器中的核之间的交换数据与在不同控制器中的核之间的交换数据相比较,则在前一种情况下可以减少资源消耗。
LU所有权改变后资源使用情况改变预测信息表T701存储考虑了由于如上所述状态改变可能出现的负载改变的信息。因此,可以理解由于LU所有权的转移可能出现的系统性能中的改变。
LU所有权改变处理开销预测信息503存储如图8所示的LU所有权改变处理开销预测信息表T801。LU所有权改变处理开销预测信息表T801预测要由用于将某个LU的LU所有权转移到某个控制器的核的转移处理本身产生的开销。与其它性能信息不同,LU所有权改变处理开销预测信息表T801是关于当执行转移处理时要产生的负载的信息。因此,在该表T801中使用的单位是例如处理所需要的时间。
关于LU所有权改变处理,负载,即处理时间,根据所转移的数据的数量而改变。如果将LU所有权从控制器0的核0(图8中的目的地核“0-0”)转移到控制器1的核0(图8中的目的地核“1-0”),并且如果在高速缓冲存储器117中没有存储数据,则将该数据传到转移目的地的处理是非必需的。
另一方面,如果在高速缓冲存储器117中存在数据,则将数据传到转移目的地的处理是必需的。在该情况下,管理信息和数据存在于本地控制器区301。关于该管理信息和数据,从仅属于本地高速缓冲存储器的(例如在磁盘181中存在的原始数据)并且不需要在高速缓冲存储器中被二重化的上述管理信息和数据中,必需执行丢弃该种管理信息和数据的处理。
如果管理信息和数据存在于本地高速缓冲存储器和外部高速缓冲存储器,则在本地控制器区301中存在的信息需要被物理地并逻辑地移送到外部控制器区341。与控制器151侧类似,存在于高速缓冲存储器157中的外部控制器区的管理信息和数据需要被物理地并逻辑地移送到本地控制器区341。
下面,将参考图9中的流程图说明用于负载分配处理的处理时序。由核122或162根据相关程序执行下面的处理。首先,根据性能信息分析程序216使用平衡参数信息表T402中的信息确定评价函数(S901)。作为结果,确定关于例如负载平衡和系统性能哪个项目应该优先。
然后,由性能信息测量程序215获得性能信息222,并由性能信息分析程序216分析该信息(S902)。将性能信息采集结果写入资源使用情况管理信息表T601,并将性能信息分析结果写入LU所有权改变后资源使用情况改变预测信息表T701和LU所有权改变处理开销预测信息表T801。
随后,判断简化的平衡处理是否是可能的(S903)。简化的平衡处理是用于确定LU所有权改变处理的细节和用于执行后面所描述的转移的相对简单的处理。在该处理中,首先执行用于确定转移源和转移目的地的处理。因此,作为在该情况下可应用的条件,在平衡参数信息表T402中进行设置,从而使负载平衡优先而系统性能不那么优先。
如果S903返回肯定的判断(可以进行简化的平衡处理),则执行简化的平衡处理(S904)。如果S903返回否定的判断,则执行普通的平衡处理(S905)。
下面,将参考图14说明性能信息采集和分析处理(S902)。由核122或162根据相关程序执行下面的处理。首先,由性能信息测量程序215测量各个资源的使用情况(S1401)。由于在该步骤中获取的性能信息被用于判断LU所有权改变处理,因此不仅需要简单的资源使用率,而且需要具体地信息。例如,关于某个核的CPU使用率,测量各个管理单元的使用率,而不是测量整个核的简单使用率。由于在本实施例中管理单元是“LU”,因此测量用于每一个核的每一个LU的使用率。同样应用于其它资源。
用于判断LU所有权改变之后的状态的信息也是必需的。除了表示哪个LU被用到何种程度的上述信息,关于控制器间总线182的使用率的信息包括:表示由于从主机镜像写写数据所以控制器间总线182已经改变使用率的信息;表示由于将读数据从磁盘181转移到其它控制器所以控制器间总线182已经改变使用率的信息;或表示前一情况的使用率和后一情况的使用率的信息。
在将写数据镜像写的情况下,即使在不同的控制器之间转移LU所有权,在转移LU所有权之前和之后都将不发生负载改变。然而,在例如读数据转移的情况下,根据当从磁盘181读取数据时所使用的磁盘输入/输出控制单元118或158和主机输入/输出控制单元119或159是否位于相同的控制器中,改变是否必需使用控制器间总线182。由于与上述相同的原因,因此对各个类型的数据转移还测量例如总线132等内部总线的使用情况。
然后,将所测量的资源使用情况输出到资源使用情况管理信息表T601(S1402)。虽然资源使用情况管理信息表T601仅存储代表性信息,但是将例如不同类型的数据转移的使用率等前述信息也输出到资源使用情况管理信息表T601。
随后,提取LU所有权改变模式(S1411)。在该步骤中,对各个管理单元提取所有可能的LU所有权改变模式。例如,如在LU所有权管理信息表T401中所示,将LU0的LU所有权分配给具有控制器号“0”和核号“0”的CPU核,并且在对每一个控制器具有两个CPU核的系统中,LU0的LU所有权改变目的地候补是(0-1)、(1-0)和(1-1)。
顺便提及,圆括号中的数字表示“控制器号-核号”。根据下文具体描述的LU所有权改变设置,可以进一步减少上述候补。此外,可能存在由于硬件或软件中出现故障而不能转移LU所有权的情况,同样在该情况下,除了由管理员进行设置外,将减少上述LU所有权改变目的地候补。
随后,判断是否完成了所有LU所有权改变模式的分析(S1412)。在该步骤中,判断是否对于在S1411中提取的所有的LU所有权改变模式完成了下文描述的分析处理(S1422和S1423),如果S1412返回肯定判断(完成了所有LU所有权改变模式的分析),则执行输出处理(S1431),如果S1412返回否定判断(未完成所有LU所有权改变模式的分析),则执行LU所有权改变模式选择(S1421)。
在LU所有权模式选择处理S1421中,在S1411中提取的LU所有权改变模式中搜索还没有执行S1422和S1423的LU所有权改变模式,并选择该种LU所有权改变模式作为下面的处理的对象。
然后,对于在S1421中选择的LU所有权改变模式预测在LU所有权改变之后资源使用情况将怎样改变(S1422)。在下面的描述中,在例如将分配给控制器0的核0的LU0的LU所有权分别转移到控制器0的核1和控制器1的核1的情况下,将参考LU所有权改变后资源使用情况改变预测信息表T701描述怎样预测由于LU所有权改变可能发生的改变。
首先,在S1411中将关于LU0当前使用的资源的信息输出到资源使用情况管理信息表T601。对于资源使用情况管理信息表T601中的各个资源的使用率可以使用任意单位,例如,使用“%”作为单位。
在资源使用情况管理信息表T601中示出的示例中,LU0使用控制器0的核0的10%的CPU核资源和控制器0的核1的2%的CPU核资源。LU0使用其中LU0不具有LU所有权的控制器0的核1的2%的CPU核资源的原因是由于假设控制器0的核1控制磁盘输入/输出控制单元118的配置。
当然,如果将上述假设应用到控制器0的核0和控制器0的核1能够分别自由使用磁盘输入/输出控制单元118的所有资源的配置,则将提高核之间的通信和核间关联处理。
然而,如果在磁盘输入/输出控制单元118的功能中仅能够使用单个核,或如果磁盘输入/输出控制单元118具有两个或多个独立的资源,并且每一个核占用并使用这些资源以减少开销,例如为了独占控制的目的,则如上所述各个核占用磁盘输入/输出控制单元118中的部分资源的配置也是可以的。
控制器间总线的使用率是0%,即,没有使用控制器间总线。这表示关于LU0没有交换需要被镜像写的数据。
作为将LU0的LU所有权转移到控制器0的核1之后的改变,资源使用情况改变预测信息表T701对于控制器0的核0示出-8%并且对于控制器0的核1示出+6%。换句话说,控制器0的核0的转移后使用率是2%。
这是由于在本实施例中当接收到从主计算机103发出的输入/输出请求时,控制器0的核0执行用于分析曾经接收到的请求的处理,并假设对该分析处理使用处理器资源。不必说,在主机输入/输出控制单元119中接收到该请求的物理端口将该分析分派给核的配置,以及当接收到该请求时通过主机输入/输出控制单元119的功能将所接收到的请求分析处理分派给合适的核(即,那时具有LU所有权的核或具有低的资源使用率的核)的配置也是可能的。特定地,在后一种配置中,可以存在控制器0的核0的CPU使用率变为“0”的情况。
在本实施例中,以与如上所述用于将核分派给磁盘输入/输出控制单元118的处理中的方式相同的方式假设由各个核占用主机输入/输出控制单元119的部分资源的配置。由于控制器0的核1新近负责由以前具有LU所有权的控制器0的核0已经执行的处理,因此控制器0的核1的CPU使用率增加,这造成6%的增加。当注意力集中在CPU使用率的总数上时,转移之前的总使用率是12%,转移之后的总使用率是10%,从而转移之前和之后的总使用率是不相同的。
这表示,基于控制器0的核1使用磁盘输入/输出控制单元118的上述假设,当对磁盘181发出输入/输出请求时控制器0的核0具有LU所有权时可能发生的、用于在控制器0的核0和控制器0的核1之间进行通信的处理变得不再是必需的,因此,两个核的总使用率降低。另一方面,由于不在不同的控制器之间转移LU所有权并因此不必需转移数据,因此控制器总线的使用率保持为“0”。
对于在将LU0的LU所有权转移到控制器1的核1之后的改变,控制器0的核0的使用率是-7%,控制器1的核0的使用率是+10%。由于与在将LU所有权转移到控制器0的核1的前述情况中的相同的原因,控制器0的核0的资源使用率没有变为0%。此外,转移处理是用于在不同的控制器之间转移LU所有权的处理,并且控制器间总线的资源使用率也被预测为增加+5%。
这是由于在本实施例中假设了具有LU所有权的核使用本地控制器的磁盘输入/输出控制单元和本地控制器的高速缓冲存储器的配置。因此,必需使用控制器间总线182以使用从主计算机103实际接收输入/输出请求的控制器111的主机输入/输出控制单元119来交换数据,这造成资源使用率的增加。
也可以不使用前述配置,并选择仅使用外部控制器的资源而不使用控制器间总线182的配置。具体地说,这是控制器1的核0控制用于控制器111的磁盘输入/输出控制单元118并使用高速缓冲存储器117交换数据的配置。在该情况下,预测在控制器间总线182的使用中不发生改变。
如上所述,预测在LU所有权改变之后处理器使用率和控制器间总线182的使用率的改变。以相同的方式也对其它资源预测在LU所有权改变之后的改变。
然后,预测当执行对在S1421中选择的LU所有权改变模式的LU所有权改变处理时要由转移处理本身产生的开销。
存在两种类型的LU所有权改变处理:管理信息转移和数据转移。管理信息转移是用于在LU所有权改变目的地候补(上述示例中的控制器0的核1或控制器1的核0)的控制下从要被替代的某个CPU核(上述示例中的控制器0的核0)转移用于执行与某个管理单元(S1422中使用的示例中的LU0)相关的处理的信息的处理。在以上转移处理中是否进行将数据从存储器116复制到存储器116或存储器156依赖于具体实现。
对于管理信息处于高速缓冲存储器的情况是相同的。数据转移中的“数据”表示存在于高速缓冲存储器并与计算机103或104进行交换的数据。从磁盘171读取该数据或需要写该数据。关于所读取的数据,必需时通过从磁盘181再次进行读取可以对其进行恢复,从而可以丢弃该数据,即,当如上所述转移管理信息时丢弃该数据的管理信息。同样关于该数据转移,是否进行从高速缓冲存储器117将数据复制到高速缓冲存储器157依赖于如在管理信息的情况下的具体实现。
在LU所有权改变处理开销预测信息表T801中,基于假设控制器间总线182用于数据转移,预测控制器间总线的使用率增加。
顺便提及,与资源使用情况管理信息501或LU所有权改变后资源使用情况改变预测信息502不同,LU所有权改变处理开销预测信息503示出当执行某处理(LU所有权改变处理)时要产生的开销,并因此使用数值的不同单位。例如,假如在一秒中执行LU所有权改变处理,则将数值表示为各个资源的使用率。当以该方式表达数值时,并且如果使用率超过100%,则可以确定在一秒中进行转移是不可能的。
在S1423完成之后,处理返回到用于判断是否完成了所有LU所有权改变模式的分析的处理(S1412)。
如果在S1412中确定完成了用于分析在S1411(S1421、S1422、S1423)中提取的所有LU所有权改变模式的处理,则输出LU所有权改变后资源使用情况改变预测信息502和LU所有权改变处理开销预测信息503(S1431)。
下面,将参考图10中的流程图说明简化的平衡处理(S904)。由核122或162根据相关程序执行下面的处理。首先,将存储系统101中的所有核注册为转移源核候补核(S1001)。然后,将存储系统101中的所有核注册为转移目的地核候补(S1002)。随后,从转移源候补中选择具有最高负载的核作为的转移源核(S1003)。然后,从转移目的地候补中选择具有最低负载的核作为的转移目的地核(S1004)。
为了将一个或多个LU从所选择的转移源核转移到所选择的转移目的地核,判断是否存在负载平衡方面的任意合适的LU(S1005)。作为不存在合适的LU的情况的示例,可能存在具有高负载的核仅负责一个LU的情况。
在该情况下,该LU上的负载非常高,并且可以预测对于被转移了LU所有权的任意核将出现负载不平衡。因此,上述情况对于转移是不理想的。作为不存在合适的LU的情况的另一示例,可能出现仅存在平衡参数信息表T402中禁止LU的转移的LU或在平衡参数信息表T402中对LU进行准禁止(quasiprohibition)设置的LU的情况。
如果在S1005中存在适于转移的一个或多个LU,则将相关LU的LU所有权从当前选择的转移源核转移到转移目的地核(S1006),从而完成简化的平衡处理。
如果S1005返回否定判断(不存在适于转移的LU),则判断是否存在任意其它转移目的地核候补(S1011)。如果其它转移目的地核候补存在,则首先从转移目的地候补中除去当前选择作为转移目的地核的核(S1012),并且处理从S1004继续。如果在S1011中不存在其它转移目的地核候补,则判断是否存在任意其它转移源候补核(S1013)。
如果S1013返回肯定判断(存在另一个转移源候补核),则从转移源候补中除去当前选择作为转移源核的核(S1014),然后处理返回到S1002。如果S1013返回否定判断(除了当前选择的核之外不存在转移源候补),则这表示关于转移源核和转移目的地核的所有组合不存在适于转移的LU,因此,简化的平衡处理终止。
顺便提及,替代从S1001到S1004的处理,存在更简化的判断方法:选择具有最大负载的核作为转移源核且选择具有最小负载的核作为转移目的地核,并在不存在其它候补核的状态下开始处理。由于总是选择具有最大负载的核和具有最小负载的核作为用于LU所有权改变的候补,因此可以容易地并在低负载下判断执行负载平衡的必要性。
下面,将参考图11的流程图说明普通的平衡处理。由核122或162根据相关程序执行下面的处理。首先,从还没有被选择的模式中分别选择转移源核、转移目的地核和转移对象LU(S1101)。然后,使用评价函数评价所选择的情况(S1102)。
评价函数是在S901中设置的函数,根据由用户进行的设置在评价函数中反映哪个条目应该优先。随后,判断是否存在还没有被选择的任意模式(S1103)。如果存在还没有被选择的任意模式,则处理返回到S1101。
换句话说,对所有模式执行S1102。如果在S1103中不再存在没有被选择的模式,则基于在所获得的评价结果中具有最好的评价结果的模式执行LU所有权改变处理(S1104)。
通过上述方法,可以根据用户的设置和目标实现最佳转移处理,用户的设置和目标包括在转移之后发生改变的资源使用情况、由不同控制器之间的LU所有权改变造成的负载改变及要由转移处理本身产生的开销。
下面,将参考图12说明管理屏幕,对该管理屏幕输入关于负载平衡的用户指令。管理屏幕1201是在管理主机105上显示的、用于设置当平衡负载时应该以什么优先级评价各个项目的屏幕,管理屏幕1201由自动转移设置部分1202、基于LU的自动转移设置部分1203、“OK”按钮1204及“取消”按钮1205。
自动转移设置部分1202具有自动转移设置参数表T1212。自动转移设置参数表T1212用于设置自动转移处理本身是否可能、性能平衡及用于整个存储系统的性能的各个优先级。此外,还设置以指定当转移LU所有权时应该将转移开销优先到什么程度,以及关于对过去的性能历史应该进行什么程度的参考的信息作为当判断LU所有权的转移时要使用的性能信息的参考范围。
基于LU的自动转移设置部分1203具有基于LU的自动转移设置表T1203。对于在本实施例中作为用于管理LU所有权的单元的各个LU,基于LU的自动转移设置表T1203由下列构成:关于哪个控制器和核当前负责相关LU的信息;由用户进行设置以指定应该将相关LU分派给哪个核;以及用于指定相关LU是否应该是自动转移的对象,及如果相关LU是自动转移的对象则应该将优先级设置到什么程度的设置。
“OK”按钮1204和“取消”按钮1205是用于确定是要确认还是丢弃管理屏幕1201中的设置的按钮。
下面,将参考示出管理屏幕的图17来说明输入关于负载平衡的用户指令的另一方法。管理屏幕1701是用于通过某个等级的自动设置来设置负载平衡处理的优先级的屏幕。管理屏幕1701由自动设置部分1702、“OK”按钮1703及“取消”按钮1704构成。
在自动设置部分1702中,存在用于确认自动设置的单选按钮1711和用于无效自动设置的单选按钮1712,并且只可以设置这些按钮1711或1712中的一个。字符串1731、1732分别说明单选按钮1711、1712的意思。如果单选按钮1712被确认,即,如果无效了自动设置,则用户如管理屏幕1201所示以某个等级的自由度并具体地设置用于负载平衡处理的参数。
另一方面,如果单选按钮1711被确认,即,如果确认了自动设置,则进一步从单选按钮1721、1722、1723等中选择设置方法。字符串1741、1742和1743分别说明单选按钮1721、1722和1723的意思。
如果单选按钮1721被确认,即,如果完全自动设置被确认,则完全自动地设置由用于负载平衡处理的参数构成的平衡参数信息402。当发生这种情况时,如设置了随后的单选按钮1722或1723的情况,自动选择参数设置,从而对于难以跟随使用的动态负载改变参数将是有效的,以及对于具有周期特性的负载改变参数将是有效的。
如果设置了单选按钮1722,即,如果选择了根据I/O负载改变参数的设置,则考虑到对存储系统101发出的整个I/O负载而设置平衡参数信息402。
这表示如果对存储系统101发出的I/O负载高,则存在存储系统101成为性能瓶颈的可能性,因此,设置平衡参数信息402从而尽可能多地增加总的性能而不是性能平衡。另一方面,如果对存储系统101发出的I/O负载低,则设置平衡参数信息402从而为了防止使用存储系统101的应用之间的性能差异的出现并对I/O负载的突然增加做准备,将使性能平衡优先。换句话说,根据存储系统101的I/O负载状态进行设置以动态改变平衡参数信息402。
如果设置了单选按钮1723,即,如果选择了用于响应以每日为基础的周期性负载改变的设置,则假设将以每日为基础对存储系统101发出周期性负载,并记录和利用周期性改变。换句话说,记录例如在夜晚执行的备份和批处理等高负荷处理的特性,并且然后动态地改变平衡参数信息402,从而可以迅速地跟随所记录的特性。
“OK”按钮1703和“取消”按钮1704是用于确定是要确认还是丢弃管理屏幕1701中的设置的按钮。
下面,将参考图15说明用于通知用户关于存储系统101的内部性能信息的屏幕。内部性能信息由管理屏幕1501上的资源使用情况1511、资源使用情况改变预测1521、LU所有权改变处理开销预测1531、“OK”按钮1541和“更新”按钮1542构成。
资源使用情况1511以资源使用情况表T1512的形式显示目前资源使用情况和过去资源使用情况。在该表中显示的信息与在资源使用情况管理信息表T601中示出的信息相同。不用说,例如图形表现等其它表现方法也是可以的,从而用户能容易地并在视觉上理解状态。
资源使用情况改变预测1521由资源使用情况改变预测表T1522构成。该表中显示的信息与在LU所有权改变后资源使用情况改变预测信息表T701中所示的信息相同。如在T1512的情况下,该表可以使用与资源使用情况1511相同的表现方式以表示在LU所有权改变之后的使用情况,从而用户能容易地理解状态。此外,其中额外显示过去的资源使用情况改变预测历史的形式也是可以的。
LU所有权改变处理开销预测1531由LU所有权改变处理开销预测表T1532构成。在该表中显示的信息与在LU所有权改变处理开销预测信息表T801中所示的信息相同。如在T1512的情况下,可以改变该表中的表现方式以表示例如使用所有资源转移处理的时间,从而用户能容易地理解状态。
“OK”按钮1541是用于终止显示处理的按钮。“更新”按钮1542是用于更新已显示的信息的按钮。
下面,将参考图16说明用于通知用户LU所有权改变处理历史的屏幕。LU所有权改变处理历史信息由管理屏幕1601上的LU所有权改变处理执行历史1611、“OK”按钮1621及“更新”按钮1622构成。
LU所有权改变处理执行历史1611由LU所有权改变处理执行历史表T1612构成。LU所有权改变处理执行历史表T1612由过去执行LU所有权改变处理的时间、对象LU、转移前的CPU核及转移后的CPU核构成。LU所有权改变处理执行历史表T1612可以通知用户LU所有权改变处理已经被执行的如何,并且如果已经恰当地进行了转移则用户可以检查在图12的设置中原来是怎样计划的。
“OK”按钮1621是用于终止显示处理的按钮。“更新”按钮1622是用于更新已显示的信息的按钮。
当根据本实施例对接收到LU的LU所有权并负责该LU的处理的各个非对称核122、162分配负载时,具有LU所有权的核:基于LU所有权管理信息T401对每一个LU提取指示在具有LU所有权的核和转移目的地候选核之间的关系的模式;对每一个LU测量构成存储系统101的多个资源的使用情况;基于测量结果对每一个LU预测在转移LU所有权之后可能出现的多个资源的使用情况的改变;基于测量结果对每一个LU还预测要由LU所有权改变处理本身产生的开销;基于各个预测结果从各个所提取的模式中选择与设置信息(平衡参数信息402)匹配的模式;以及将LU所有权转移到属于所选择的模式的核。
工业应用性
根据本实施例,可以根据设置对多个非对称核执行最佳的负载分配。

Claims (10)

1.一种存储系统,包括:
输入单元,用于输入设置信息;
一个或多个控制器,用于处理从输入单元发送的设置信息;及
多个磁盘,用于在由多个逻辑单元构成的存储区域中存储数据;
其中,每一个控制器包括多个核,所述多个核接收所述逻辑单元中的即多个处理对象中的LU所有权并负责处理对象的处理,并且所述控制器将数据发送到作为访问对象的所述多个磁盘并从所述多个磁盘接收数据;并且
其中,所述控制器:基于LU所有权管理信息对每一个处理对象提取指示在具有LU所有权的核和作为转移LU所有权的目的地的候补核之间的关系的模式;对每一个处理对象测量构成控制器的多个资源的使用情况;基于测量结果对每一个处理单元预测在转移LU所有权之后可能出现的状态改变;从基于各个预测结果提取的各个模式中选择与输入单元的设置信息匹配的模式;并将LU所有权转移到属于所选择的模式的核。
2.根据权利要求1所述的存储系统,其中,经由总线将控制器互相连接,每一个控制器包括用于存储程序的存储器、用于根据在存储器中存储的程序来处理数据的多个核以及用于临时存储与每一个核的处理相关联的数据的闪速存储器;
其中每一个核接收所述多个处理对象中的LU所有权并负责处理对象的处理;并且
其中,所述多个核中的具有LU所有权的核:基于LU所有权管理信息对每一个处理对象提取指示在具有LU所有权的核和作为转移LU所有权的目的地的候补核之间的关系的模式;对每一个处理对象测量构成控制器的多个资源的使用情况;基于测量结果对每一个处理单元预测在转移LU所有权之后可能出现的所述多个资源中的状态改变;基于测量结果对每一个处理单元预测用于转移LU所有权的、由处理自身所产生的开销;从基于各个预测结果提取的各个模式中选择与输入单元的设置信息匹配的模式;并将LU所有权转移到属于所选择的模式的核。
3.根据权利要求1所述的存储系统,其中,所述控制器基于测量结果对每一个处理单元预测所述多个资源的使用情况的改变作为在转移LU所有权之后可能出现的状态改变;并基于测量结果对每一个处理单元还预测用于转移LU所有权的、由处理自身所产生的开销;然后,从基于各个预测结果提取的各个模式中选择与输入单元的设置信息匹配的模式。
4.根据权利要求1所述的存储系统,其中,LU所有权管理信息是指示在负责处理对象的核和所述核所属的控制器之间的对应关系的信息。
5.根据权利要求1所述的存储系统,其中,所述多个资源的使用情况是包括所述多个资源的使用率和控制器间总线的使用率的信息。
6.根据权利要求1所述的存储系统,其中,设置信息包括负载均衡优先级、系统性能优先级和可接受的转移开销等级,作为用于对各个核分配负载的参数。
7.根据权利要求1所述的存储系统,其中,设置信息由作为用于对各个核分配负载的参数的负载均衡优先级和系统性能优先级构成,
其中如果负载均衡优先级高于系统性能优先级,则控制器选择用于对各个资源分配负载的模式作为与设置信息匹配的模式;如果负载均衡优先级低于系统性能优先级,则即使所选择的模式可能使各个资源上的负载不均衡,控制器也选择用于提高系统性能的模式作为与设置信息匹配的模式。
8.根据权利要求1所述的存储系统,其中,设置信息由作为用于对各个核分配负载的参数的可接受的转移开销等级构成,并且
其中,控制器选择使状态改变低于可接受的转移开销等级的模式作为与设置信息匹配的模式。
9.一种存储系统控制方法,所述存储系统包括:
输入单元,用于输入设置信息;
一个或多个控制器,用于处理从输入单元发送的设置信息;及
多个磁盘,用于在由多个逻辑单元构成的存储区域中存储数据;
每一个控制器包括多个核,所述多个核接收多个处理对象、所述逻辑单元中的LU所有权并负责处理对象的处理;并且
所述存储系统控制方法包括在控制器的控制下执行的以下步骤:
将数据发送到作为访问对象的所述多个磁盘并从所述多个磁盘接收数据;
基于LU所有权管理信息对每一个处理对象提取指示在具有LU所有权的核和作为转移LU所有权的目的地的候补核之间的关系的模式;
对每一个处理对象测量构成控制器的多个资源的使用情况;
基于测量结果对每一个处理单元预测在转移LU所有权之后可能出现的状态改变;
从基于各个预测结果提取的各个模式中选择与输入单元的设置信息匹配的模式;及
将LU所有权转移到属于所选择的模式的核。
10.根据权利要求9所述的存储系统控制方法,其中,经由总线将控制器互相连接,每一个控制器包括用于存储程序的存储器、用于根据在存储器中存储的程序来处理数据的多个核以及用于临时存储与每一个核的处理相关联的数据的闪速存储器;
其中每一个核接收所述多个处理对象中的LU所有权,并执行负责处理对象的处理的步骤;并且
其中所述多个核中的具有LU所有权的核执行以下步骤:
基于LU所有权管理信息对每一个处理对象提取指示在具有LU所有权的核和作为转移LU所有权的目的地的候补核之间的关系的模式;
对每一个处理对象测量构成控制器的多个资源的使用情况;
基于测量结果对每一个处理单元预测在转移LU所有权之后可能出现的所述多个资源中的状态改变;
基于测量结果对每一个处理单元预测用于转移LU所有权的、由处理自身所产生的开销;及
从基于各个预测结果提取的各个模式中选择与输入单元的设置信息匹配的模式;
将LU所有权转移到属于所选择的模式的核。
CN200980129939.5A 2008-10-10 2009-03-02 存储系统及用于控制存储系统的方法 Active CN102257469B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2008263396 2008-10-10
JP2008-263396 2008-10-10
PCT/JP2009/054354 WO2010041481A1 (en) 2008-10-10 2009-03-02 Storage system and method for controlling the same

Publications (2)

Publication Number Publication Date
CN102257469A true CN102257469A (zh) 2011-11-23
CN102257469B CN102257469B (zh) 2014-12-10

Family

ID=40668436

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200980129939.5A Active CN102257469B (zh) 2008-10-10 2009-03-02 存储系统及用于控制存储系统的方法

Country Status (5)

Country Link
US (3) US8146092B2 (zh)
EP (1) EP2350805A1 (zh)
JP (1) JP5490093B2 (zh)
CN (1) CN102257469B (zh)
WO (1) WO2010041481A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106462447A (zh) * 2014-04-11 2017-02-22 Netapp股份有限公司 连通认知存储控制器负载平衡
CN108200151A (zh) * 2017-12-29 2018-06-22 创新科存储技术(深圳)有限公司 一种分布式存储系统中ISCSI Target负载均衡方法和装置
CN111936961A (zh) * 2018-04-02 2020-11-13 美光科技公司 基于性能目标对存储器系统的优化
CN113994647A (zh) * 2019-06-07 2022-01-28 大金工业株式会社 设备控制系统、设备的控制方法

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5490093B2 (ja) * 2008-10-10 2014-05-14 株式会社日立製作所 ストレージシステムおよびその制御方法
WO2011132222A1 (en) * 2010-04-21 2011-10-27 Hitachi,Ltd. Storage system and ownership control method for storage system
JP5193327B2 (ja) * 2011-02-28 2013-05-08 シャープ株式会社 画像形成装置
US9477597B2 (en) 2011-03-25 2016-10-25 Nvidia Corporation Techniques for different memory depths on different partitions
US8701057B2 (en) 2011-04-11 2014-04-15 Nvidia Corporation Design, layout, and manufacturing techniques for multivariant integrated circuits
US20120278550A1 (en) * 2011-04-26 2012-11-01 Byungcheol Cho System architecture based on raid controller collaboration
US20120278527A1 (en) * 2011-04-26 2012-11-01 Byungcheol Cho System architecture based on hybrid raid storage
US9176670B2 (en) * 2011-04-26 2015-11-03 Taejin Info Tech Co., Ltd. System architecture based on asymmetric raid storage
WO2012164625A1 (en) * 2011-06-01 2012-12-06 Hitachi, Ltd. Load distribution storage system and method therefor
US8650576B2 (en) * 2011-06-03 2014-02-11 Hitachi, Ltd. Storage apparatus and storage apparatus management method
US8713577B2 (en) 2011-06-03 2014-04-29 Hitachi, Ltd. Storage apparatus and storage apparatus management method performing data I/O processing using a plurality of microprocessors
WO2013014699A1 (en) * 2011-07-22 2013-01-31 Hitachi, Ltd. Storage system and its logical unit management method
US9529712B2 (en) * 2011-07-26 2016-12-27 Nvidia Corporation Techniques for balancing accesses to memory having different memory types
US8868711B2 (en) 2012-02-03 2014-10-21 Microsoft Corporation Dynamic load balancing in a scalable environment
US9852010B2 (en) * 2012-02-03 2017-12-26 Microsoft Technology Licensing, Llc Decoupling partitioning for scalability
US10860384B2 (en) 2012-02-03 2020-12-08 Microsoft Technology Licensing, Llc Managing partitions in a scalable environment
WO2013118243A1 (ja) * 2012-02-06 2013-08-15 株式会社日立製作所 計算機システムおよびデータ入出力方法
US9152640B2 (en) * 2012-05-10 2015-10-06 Hewlett-Packard Development Company, L.P. Determining file allocation based on file operations
US8918448B2 (en) * 2012-05-11 2014-12-23 International Business Machines Corporation Application component decomposition and deployment
US9271229B2 (en) * 2012-07-20 2016-02-23 The Trustees Of Columbia University In The City Of New York Methods, systems, and media for partial downloading in wireless distributed networks
WO2014106871A1 (en) * 2013-01-07 2014-07-10 Hitachi, Ltd. Storage system which realizes asynchronous remote copy using cache memory composed of flash memory, and control method thereof
US9063667B2 (en) * 2013-08-13 2015-06-23 Utah State University Dynamic memory relocation
US9547552B2 (en) * 2014-12-11 2017-01-17 Netapp, Inc. Data tracking for efficient recovery of a storage array
US10282302B2 (en) * 2016-06-30 2019-05-07 Hewlett Packard Enterprise Development Lp Programmable memory-side cache management for different applications
JP6836536B2 (ja) * 2018-03-19 2021-03-03 株式会社日立製作所 ストレージシステム及びio処理の制御方法
JP7348056B2 (ja) * 2019-12-20 2023-09-20 株式会社日立製作所 ストレージシステム
JP7252931B2 (ja) * 2020-11-05 2023-04-05 株式会社日立製作所 ストレージ装置およびストレージ装置の制御方法

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3528094B2 (ja) 1994-02-09 2004-05-17 株式会社日立製作所 バス利用方法および記憶制御装置
US6594698B1 (en) * 1998-09-25 2003-07-15 Ncr Corporation Protocol for dynamic binding of shared resources
US6434637B1 (en) 1998-12-31 2002-08-13 Emc Corporation Method and apparatus for balancing workloads among paths in a multi-path computer system based on the state of previous I/O operations
JP3966459B2 (ja) 2002-05-23 2007-08-29 株式会社日立製作所 ストレージ機器管理方法、システム、およびプログラム
US20040210724A1 (en) * 2003-01-21 2004-10-21 Equallogic Inc. Block data migration
EP1612672B1 (en) * 2004-07-01 2008-02-13 Sap Ag A data processing system for assigning objects to processing units
US7523286B2 (en) * 2004-11-19 2009-04-21 Network Appliance, Inc. System and method for real-time balancing of user workload across multiple storage systems with shared back end storage
JP4671353B2 (ja) * 2005-12-14 2011-04-13 株式会社日立製作所 ストレージ装置及びその制御方法
US7802073B1 (en) * 2006-03-29 2010-09-21 Oracle America, Inc. Virtual core management
JP2007328461A (ja) * 2006-06-06 2007-12-20 Matsushita Electric Ind Co Ltd 非対称マルチプロセッサ
JP2008134775A (ja) 2006-11-28 2008-06-12 Hitachi Ltd 記憶サブシステム及びこれを利用したリモートコピーシステム
US8181168B1 (en) * 2007-02-07 2012-05-15 Tilera Corporation Memory access assignment for parallel processing architectures
US7796128B2 (en) * 2007-02-14 2010-09-14 International Business Machines Corporation Dynamically load balancing game physics using real-time object scaling
US8365184B2 (en) * 2007-08-31 2013-01-29 Apple Inc. Multi-core resource utilization planning
US8302098B2 (en) * 2007-12-06 2012-10-30 Oracle America, Inc. Hardware utilization-aware thread management in multithreaded computer systems
JP5490093B2 (ja) * 2008-10-10 2014-05-14 株式会社日立製作所 ストレージシステムおよびその制御方法
JP2010141821A (ja) * 2008-12-15 2010-06-24 Toshiba Corp ストリーミングプロセッサおよびプロセッサシステム

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106462447A (zh) * 2014-04-11 2017-02-22 Netapp股份有限公司 连通认知存储控制器负载平衡
CN108200151A (zh) * 2017-12-29 2018-06-22 创新科存储技术(深圳)有限公司 一种分布式存储系统中ISCSI Target负载均衡方法和装置
CN108200151B (zh) * 2017-12-29 2021-09-10 深圳创新科技术有限公司 一种分布式存储系统中ISCSI Target负载均衡方法和装置
CN111936961A (zh) * 2018-04-02 2020-11-13 美光科技公司 基于性能目标对存储器系统的优化
CN113994647A (zh) * 2019-06-07 2022-01-28 大金工业株式会社 设备控制系统、设备的控制方法
CN113994647B (zh) * 2019-06-07 2023-11-17 大金工业株式会社 设备控制系统、设备的控制方法

Also Published As

Publication number Publication date
US20100325339A1 (en) 2010-12-23
US20130232302A1 (en) 2013-09-05
US8429667B2 (en) 2013-04-23
US20120210329A1 (en) 2012-08-16
WO2010041481A1 (en) 2010-04-15
JP2011530728A (ja) 2011-12-22
EP2350805A1 (en) 2011-08-03
US8146092B2 (en) 2012-03-27
CN102257469B (zh) 2014-12-10
JP5490093B2 (ja) 2014-05-14

Similar Documents

Publication Publication Date Title
CN102257469B (zh) 存储系统及用于控制存储系统的方法
CN101446885B (zh) 存储系统以及存储系统的访问控制方法
CN101601014B (zh) 利用存储负载信息来平衡集群虚拟机的方法和系统
US7937615B2 (en) Method for improving reliability of multi-core processor computer
CN100530079C (zh) 用于在非均衡存储器存取计算机系统中调度任务的方法和设备
CN101887380B (zh) 优化在多平台系统中执行的应用的分布
US9542429B2 (en) Workload balancing in a distributed database
CN104484158B (zh) 微处理器以及微处理器操作方法
CN104049712B (zh) 用于计算机系统的功率管理方法和系统
CN104781753A (zh) 功率选通高速缓存存储器的一部分
CN103080903A (zh) 调度器、多核处理器系统以及调度方法
CN101911018A (zh) 计算机配置虚拟拓扑发现
CN101652760B (zh) 共享缓存控制装置、共享缓存控制方法及集成电路
CN105393212A (zh) 使用锁定机制的高效任务调度
JP2005242574A (ja) 情報処理システム、および情報処理方法
US8108662B2 (en) Checkpointing a hybrid architecture computing system
CN101013378B (zh) 动态地迁移通道
CN103377090A (zh) 多处理器系统中共享不同数据集的多个编目的方法和系统
CN100583064C (zh) 用于从别名地址池中移除别名地址的方法和设备
CN107636563A (zh) 通过腾空cpu和存储器的子集来降低功率
CN105930202B (zh) 一种三阈值的虚拟机迁移方法
CN101847128A (zh) 管理tlb的方法和装置
CN101176067A (zh) 基于专用处理单元的使用动态修改系统参数
CN101110059B (zh) 数据记录设备以及数据记录方法
CN108733484B (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
C14 Grant of patent or utility model
GR01 Patent grant