CN102640120B - 计算增设/减设的存储容量的管理系统 - Google Patents

计算增设/减设的存储容量的管理系统 Download PDF

Info

Publication number
CN102640120B
CN102640120B CN201080054277.2A CN201080054277A CN102640120B CN 102640120 B CN102640120 B CN 102640120B CN 201080054277 A CN201080054277 A CN 201080054277A CN 102640120 B CN102640120 B CN 102640120B
Authority
CN
China
Prior art keywords
actual area
pond
capacity
section
program
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.)
Active
Application number
CN201080054277.2A
Other languages
English (en)
Other versions
CN102640120A (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 CN102640120A publication Critical patent/CN102640120A/zh
Application granted granted Critical
Publication of CN102640120B publication Critical patent/CN102640120B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • G06F3/0665Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
    • 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/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • 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
    • G06F3/0611Improving I/O performance in relation to response time
    • 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/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0685Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
    • 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

Landscapes

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

Abstract

与主机装置连接的存储装置具有作为由多个虚拟区域构成的虚拟的逻辑卷的虚拟卷;由性能不同的多个实际区域组构成的池。控制器管理表示对哪个虚拟区域分配了哪个实际区域和与虚拟区域有关的访问负荷的信息即池状况信息。存储装置的管理系统根据从当前到过去的多个时刻的所述池状况信息和一个以上的访问负荷阈值,预测将来时刻的每个实际区域组的使用容量,针对每个实际区域组计算预测的使用容量与当前的存储容量的差分即增设/减设量,根据该计算结果执行处理。

Description

计算增设/减设的存储容量的管理系统
技术领域
本发明涉及存储装置的管理。
背景技术
已知具有多个物理存储设备的存储装置。作为物理存储设备,有硬盘驱动器、闪速存储器设备等。存储装置一般来讲具有按照RAID(Redundant Array ofIndependent(or Inexpensive)Disks独立(廉价)磁盘冗余阵列)的技术的RAID组。RAID组由多个物理存储设备构成,在RAID组中按照预定的RAID等级存储数据。根据RAID组的存储空间,生成一个或多个逻辑存储设备(逻辑卷)。把逻辑卷提供给与存储装置连接的主计算机。主计算机向存储装置发送指定了所提供的逻辑卷的访问命令(例如写命令或者读命令)。由此,对该逻辑卷进行数据的存取。
作为存储装置,已知有应用了自动精简配置(Thin Provisioning)的存储装置(例如专利文献1)。根据自动精简配置(也称为动态精简装置,代替存储容量固定的逻辑卷,向主计算机提供虚拟的逻辑卷即虚拟卷(以下称为VVOL)。VVOL是多个虚拟区域(虚拟的存储区域)的集合。在产生从主计算机对VVOL的写入时,从池对虚拟区域分配段。因此,根据自动精简装置能够动态地扩张向主计算机提供的存储容量。此外,池是由多个段构成的存储区域。段是实际区域(实体的存储区域),具体来说,例如是通过LBA(LogicalBlock Address逻辑块地址)等来分割构成池的逻辑卷(以下称为PVOL)而得的存储区域。在此,所谓“LBA”是在主计算机和存储装置之间读写数据时,为了指定逻辑卷上的位置而使用的地址。
此外,公知性能不同的多个段组混合的池(专利文献2)。以下将一个段组称为“介质”。例如,高性能的介质由高性能的PVOL构成,低性能的介质由低性能的PVOL构成。PVOL的性能依存于成为该PVOL的基础的物理存储设备的性能(及/或RAID组的RAID等级)。能够进行从某介质内的某段向别的介质内的段的数据迁移(以下称为段迁移)。
在运用池的方面,在还未分配给VVOL的段不足的情况下,需要增加池的存储容量。例如在专利文献3中公开了决定要追加的存储容量的方法。根据专利文献3,根据对虚拟卷分配的段的增加率,预测将来不足的存储容量,根据预测的结果,决定要追加的存储容量。
现有技术文献
专利文献
专利文献1:日本特开2003-015915号公报
专利文献2:日本特开2007-066259号公报
专利文献3:日本特开2008-097502号公报
发明内容
发明要解决的课题
在性能不同的多个介质混合的池中,在进行存储容量(例如PVOL)的追加(在以下的说明中称为“增设”)时,需要决定要增设的存储容量(以下称为“增设量”)。根据专利文献3,能够决定整个池的增设量,但是无法适当地决定对哪个介质增设多大的存储容量。因此,有可能导致进行了不必要的性能提高的增设,或者,使性能大幅降低的增设。
以上的问题,对于存储容量的去除(以下称为减设)也可能发生。
因此,本发明的目的在于对于由性能不同的多个实际区域组构成的池,针对每个实际区域组求出适当的增设/减设量。
用于解决课题的手段
与主机装置连接的存储装置具有:作为由多个虚拟区域构成的虚拟的逻辑卷的虚拟卷;由性能不同的多个实际区域组构成的池;以及对来自所述主机装置的访问指令进行应答,对根据该访问指令确定的虚拟区域被分配的实际区域进行访问的控制器。所述控制器管理池状况信息,该池状况信息是表示对哪个虚拟区域分配了哪个实际区域和与虚拟区域有关的访问负荷的信息。存储装置的管理系统具有存储资源;以及与所述存储资源连接的处理器。所述存储资源存储容量管理信息,该容量管理信息是表示各实际区域组的目前的存储容量的信息。所述处理器根据从目前到过去的多个时刻的所述池状况信息和一个以上的访问负荷阈值来预测将来时刻的每个实际区域组的使用容量。所述处理器针对每个实际区域组计算作为所预测的使用容量和所述容量管理信息表示的目前的存储容量的差分的增设量/减设量,基于该计算结果执行处理。
例如,所述控制器将第一实际区域组中的第一实际区域内的数据迁移到适合所述第一实际区域的访问负荷的种类的第二实际区域组中的第二数据区域,能够代替所述第一实际区域,对被分配了所述第一实际区域的虚拟区域分配所述第二实际区域。
主机装置可以是计算机,也可以是与所述存储装置不同的别的存储装置。此外,作为实际区域组的性能,例如具有与访问有关的性能。作为与访问有关的性能,例如有响应时间,该响应时间是从输入了用于数据存取的命令到输出针对该命令的应答的时间长,或者在每单位时间输入输出的数据的量。此外,访问负荷是与访问有关的负荷,例如访问频度(每单位时间进行的访问的次数),或者数据传输速度(每单位时间传输的数据量)。此外,“与虚拟区域有关的访问负荷”可以是虚拟区域的访问负荷(虚拟区域内的数据的访问负荷),还可以是分配给虚拟区域的实际区域的访问负荷。此外,访问例如是读及/或写。
所述管理系统可以是在所述存储装置外存在的一个以上的计算机,也可以与所述控制器一体,还可以与所述主机装置一体,还可以通过所述存储装置与存在于所述存储装置外的装置的组合来实现。
发明的效果
对于由性能不同的多个实际区域组构成的池,针对每个实际区域组求出适当的增设/减设量。
附图说明
图1表示本发明实施例1的存储系统的结构。
图2表示实施例1的存储装置1000内的存储器1500中存储的程序以及信息。
图3表示物理资源表1550的例子。
图4表示段管理表1560的例子。
图5表示虚拟卷管理表1570的例子。
图6表示迁移策略表1580的例子。
图7表示实施例1的管理计算机2000内的存储器2500中存储的程序以及表。
图8表示池容量管理表2560的例子。
图9表示IOPS性能评价表2570的例子。
图10表示容量推移履历表2580的例子。
图11表示实施例1的主计算机3000的存储器3500内存在的程序。
图12是段IO评价程序2530的处理的流程图。
图13是容量预测(1)程序2540的处理的流程图。
图14是图13的步骤4040的处理的流程图。
图15表示实施例1的增设量的估计例的图表。
图16表示图13的步骤4010显示的GUI5100的例子。
图17表示图14的步骤4047显示的GUI5200的例子。
图18表示实施例2的管理计算机2000内的存储器2500中存储的程序以及信息。
图19表示段IOPS分布履历表2640的例子。
图20表示增设模式保存表2650的例子。
图21表示说明实施例2的参数的意义的图。
图22表示段IOPS预测程序2610的处理的流程图。
图23表示容量预测(2)程序2620的处理的流程图。
图24表示图23的步骤4340的处理的一部的流程图。
图25表示图23的步骤4340的处理的剩余的流程图。
图26表示图23的步骤4310所显示的GUI5300的例子。
图27表示图25的步骤4358所显示的GUI5400的例子。
图28表示实施例3的容量预测(2)程序2620的处理的一部分的流程图。
图29表示图28的步骤4373所显示的GUI5500的例子。
图30表示实施例4的管理计算机2000的存储器2500中存储的程序以及信息。
图31表示池性能监视程序2700的处理的流程图。
图32表示图31的步骤4550所显示的GUI5700的例子。
图33表示实施例5的存储装置2000内的存储器2500中存储的程序以及信息。
图34表示实施例5的存储装置1000内的存储器1500中存储的程序以及信息。
图35表示本发明的实施例6的存储系统。
图36表示实施例6的池管理的概念。
图37表示实施例6的主计算机3000内的存储器3500中存储的程序以及信息。
图38表示资源管理表3610的例子。
图39表示实施例6的进行了容量预测程序3570的预测结果的GUI的例子。
具体实施方式
说明本发明的若干实施例。此外,本发明的技术的范围并不限于各实施例。
此外,在以后的说明中,有通过“×××表”的表现来说明各种信息的情况,但是,也可以通过表以外的数据结构来表现各种信息。为了表示不依存于数据结构,可以将“×××表”称为“×××信息”。
此外,在以后的说明中,有时将“程序”作为主语来说明处理的情况,但是通过处理器(例如CPU(Central Processing Unit)来执行,适当地使用存储资源(例如存储器)以及通信控制装置(例如通信端口)来进行所决定的处理,因此,可以将处理的主语设为处理器。此外,将程序作为主语来说明的处理可以是管理系统进行的处理。此外,可以通过专用硬件来实现程序的一部分或全部。因此,将程序作为主语说明的处理可以是控制器进行的处理。控制器可以包含处理器和存储处理器执行的计算机程序的存储资源,可以包含上述的专用硬件。此外,计算机程序可以从程序源安装到各计算机中。程序源例如可以是程序分发服务器或存储介质。
此外,管理系统可以是一个以上的计算机,例如是管理计算机或者管理计算机和显示用计算机的组合。具体来说,例如在管理计算机显示显示用信息的情况下,管理计算机是管理系统。此外为了处理的高速化或高可靠性,可以通过多个计算机来实现与管理计算机同等的功能,此时,在该多个计算机(显示用计算机进行显示的情况下可以包含显示用计算机)是管理系统。
实施例1
<概要>
首先,说明本发明的实施例1。
在实施例1中,具有应用了自动精简装置技术以及段迁移技术的存储装置和用于管理该存储装置的计算机(以下称为管理计算机)。存储装置测量各段的访问频度。存储装置根据各段的访问频度和预先准备的与多个介质对应的多个容许访问频度范围,决定转移源的段和转移目的地的段。然后,存储装置进行从转移源的段向转移目的地的段的数据迁移。由此,数据被配置在与该数据的访问频度对应的介质中。此外,管理计算机从存储装置取得表示各段的访问频度的信息,根据各段的访问频度和与多个介质对应的多个容许访问频度,来决定转移源和转移目的地的段。然后,管理计算机将具有表示所决定的转移源的信息和表示转移目的地的段的信息的段迁移指示发送到存储装置,由此,可以进行从转移源的段到转移目的地的段的数据的迁移。
管理计算机以一定间隔,从存储装置取得表示该时刻的池的使用状况的信息(以下称为池状况信息),例如包含下述的(A)~(C)的信息。
(A)分配给VVOL的段的识别信息。
(B)表示分配给VVOL的段的访问频度的信息。
(C)分配给VVOL的段所属地介质的识别信息。
管理计算机根据在多个时刻取得的池的状况信息求出各时刻的访问频度和段数的分布。管理计算机根据访问频度和段数的分布的推移、与多个介质对应的多个容许访问频度,针对每个介质预测从当前到预定期间后分配给VVOL的段的数量(以下称为将来的段数)。从介质的将来的段数Nfuture中减去构成该介质的当前的段的数量(以下称为当前的段数)Ncuent而得的值(Nfuture-Ncurrent)是针对该介质的增设量。例如,对于介质A,如果增设量为正值,则在预定期间之后段不足的可能性高,因此希望在当前时刻给介质A增设增设量的段。另一方面,对于介质A,如果增设量为零或者负的值,则即使经过预定期间,段也不会不足的可能性高,因此,在当前时刻不需要给介质A增设段(可以从介质A中减去增设量的段)。
如上所述,管理计算机可以根据各时刻的池状况信息针对每个介质计算增设量。因此,能够避免不必要的性能的提高,导致成本无用地增加的增设,或者能够避免导致性能大幅降低的增设。另外,在本实施例中所谓的“成本”是指负荷。负荷可以是费用方面的负荷,可以是消耗电力方面的负荷。
以下,参照附图,详细说明实施例1。
<结构说明>
图1表示本发明的实施例1的存储系统的结构。
实施例1的存储系统具有存储装置1000、与存储装置1000连接对其进行管理的管理计算机2000、利用存储装置1000提供的存储区域的主计算机3000。此外,主计算机3000可以存在多个。
存储装置1000的管理IF(在图中为M-IF)1010以及主计算机3000的管理IF3400通过SAN(Storage Area Network)或LAN(Local Area Network)等数据网络100与管理计算机2000的管理IF2400连接。存储装置1000的通信IF1020通过SAN或LAN等数据网络200与主计算机的通信IF3300连接。各管理IF以及通信IF在数据网络是SAN的情况下,计算机是HBA(Host BusAdapter)等,存储装置是端口等,数据网络是LAN的情况下,计算机或存储装置都是NIC(Network Interface Card)等。即,管理IF以及通信IF是怎样的通信接口设备,由于与该IF连接的网络的种类或具有该IF的装置的种类不同。此外,数据网络100和数据网络200可以是同一网络。此外,各IF间可以通过一个电缆直接连接,也可以经由开关等连接。
然后,说明存储装置1000的硬件结构。
存储装置1000具备多个物理资源1400。物理资源1400是物理的存储区域。根据物理资源1400设置有作为逻辑的存储设备的逻辑卷。在此,所谓“物理的存储区域”可以是一个物理的存储设备,也可以是由多个物理的存储设备构成的RAID组。此外,物理的存储设备是SSD(Solid State Disk)、SAS(SerialAttachedSCSI)-HDD(Hard Disk Drive)、SATA(Serial Advanced TechnologyAttachment)-HDD等。如此,在存储装置1000中混合了性能不同的多个物理资源1400。
此外,存储装置1000具备用于控制数据的输入输出的控制装置即控制器1100。控制器1100除了所述的管理IF1010以及通信IF1020外,还具有用于与物理资源1400通信的盘IF1300、存储器1500和与它们连接的CPU1200。存储器1500可以包含用于临时存储对来自主计算机3000的访问命令进行应答对物理资源1400进行访问得到的数据的高速缓冲存储器。
图2表示在存储器1500中存储的程序以及信息。
作为程序,具有构成信息通信程序1510、物理资源管理程序11520、池管理程序1530以及段迁移程序1540。程序1510、1520、1530以及1540进行的处理实际上通过执行这些程序的CPU1200来进行。作为信息具有物理资源表1550、段管理表1560、虚拟卷管理表1570以及迁移策略表1580。
构成信息通信程序1510进行根据经由管理IF1010的信息取得请求向外部发送后述的表的处理和根据设定处理请求使各程序进行处理。
物理资源管理程序1520进行逻辑卷的构成的管理。具体来说,该程序1520管理物理资源表1550。
图3表示物理资源表1550的例子。
物理资源表1550具有与基于物理资源的逻辑卷有关的信息。具体来说,物理资源表1550针对存储装置1000管理的每个逻辑卷具有下述的信息:
*用于识别逻辑卷的ID即VOL ID1551、
*表示成为逻辑卷的基础的物理资源1400的类别的资源类别1552、
*表示逻辑卷的存储容量的容量1553、
*逻辑卷所属的阶层的ID即阶层ID1554。
在此,阶层是相同性能以及运用成本的多个逻辑卷的集合,相当于上述的“介质”。例如,作为基于SSD的逻辑卷的集合的阶层(介质),由于估计高性能,因此被分配了表示高位的阶层的ID“阶层0”。作为基于SAS-HDD的逻辑卷的集合的阶层(介质),由于估计比基于SSD的阶层性能低,因此被分配了表示比基于SSD的阶层低的阶层的ID“阶层1”。作为基于SATA-HDD的逻辑卷的集合的阶层(介质),由于估计比基于SAS-HDD的阶层性能低,因此被分配了表示比基于SAS-HDD的阶层低的阶层的ID“阶层2”。阶层ID1554可以在生成逻辑卷时通过物理资源管理程序1520自动地进行分配,还可以由管理存储装置1000的管理者手动地进行分配。此外,表1550可以包含表示RAID的冗余程度的RAID等级等,此时,除了资源类别1552外,可以分配考虑了按照RAID等级的性能或运用成本的阶层ID1554。以下,有时把阶层称为“介质”。此外,阶层(介质)可以是三种以上。
再次参照图2。
池管理程序1530管理用于实现自动精简装置技术的池以及虚拟卷。具体来说,例如该程序1530管理段管理表1560和虚拟卷管理表1570。
图4表示段管理表1560的例子。
段管理表1560具有与段有关的信息。具体来说,段管理表1560针对构成池的每个段,具有下述的信息:
*用于唯一识别段的ID即段ID1561、
*表示段所在的逻辑卷(池卷)的ID即VOL ID1562、
*表示在该逻辑卷的开始位置(段的开始位置)的LBA即开始LBA1563、
*表示段的大小的段大小1564、
*作为段的分配目的地的虚拟卷(VVOL)的ID即分配目的地VVOLID1565。
根据该表1560,例如,段ID:0000,在逻辑卷:DEV1中,从LBA:0开始占据段大小:1000量(从LBA:0到LBA:999),被分配给虚拟卷:VVOL1。此外,成为分配目的地VVOL ID:NULL的段表示还未分配给VVOL。为了容易理解以下的说明,将全部的段的大小设为100MB(Mega Bytes)。但是,各段的大小可以不是100MB,可以不是固定的大小可以是可变的大小,全部的段的大小也可以不同。
在本实施例中,假设池的数量为一个。但是也可以存在多个池。
此外,所谓“段”是构成池的实际区域(实体的存储区域)。池具有性能不同的多个段。各段组由性能相同的多个逻辑卷构成。作为池的构成要素的逻辑卷有时也称为“池卷”。池卷可以是基于物理资源1400的实体的逻辑卷,也可以是基于未图示的外部的存储装置的存储资源(逻辑卷或者物理资源)的逻辑卷。即,段是可分配给VVOL的存储区域即可。
VVOL是由多个虚拟区域(虚拟的存储区域)构成的虚拟的逻辑卷(按照自动精简装置技术的卷)。VVOL被提供给主计算机3000。
图5表示虚拟卷管理表1570的例子。
虚拟卷管理表1570具有与VVOL有关的信息。具体来说,虚拟卷管理表1570针对每个虚拟区域具有下述的信息:
*具有虚拟区域的VVOL的ID即VVOL ID1571、
*表示该VVOL的存储容量(主计算机3000识别的存储容量)的容量1572、
*表示虚拟区域的VVOL的开始位置的LBA即开始LBA1573、
*表示分配给虚拟区域的段的大小的段大小1574、
*分配给虚拟区域的段的ID即段ID1575、
*向分配给虚拟区域的段的访问频度即IOPS(Input Output Per Second)1576。
根据该表1570,例如,VVOL:VVOL1被主计算机3000识别为10TB(太拉字节(terabyte))的卷。对VVOL:VVOL1的LBA:0~1000的虚拟区域分配段了ID:0000的段。该段的访问频度为10000。
此外,未被分配段的虚拟区域可以通过下面的(a)或者(b)的方法来判别。
(a)与该虚拟区域对应的段ID1575是“空”。
(b)在表1570中不存在与该虚拟区域对应的记录。
此外,访问频度可以是各恒定期间的访问次数,并不限于IOPS。IOPS可以是在后述的段迁移的间隔内发生的IO(Input Output)单位等。此外,根据迁移表1580,虚拟卷管理表1570除了上述信息外,还可以保存成为用于判断数据的转移源的基准的信息(例如,向各段的最终访问日期时间)。
IOPS是段的IOPS,因此在对段进行访问时被更新。换言之,即使发生了针对虚拟区域的访问,在不对段访问而结束的情况下(例如,在高速缓冲存储器中存在读取对象的数据,因此,将高速缓冲存储器内的数据提供给主计算机3000,由此,在读取处理结束的情况下),不更新分配给该虚拟区域的段的IOPS。在发生了对虚拟区域的访问的情况下,可以与是否访问了分配给该虚拟区域的段无关地更新与虚拟区域对应的IOPS1576。此外,在对于虚拟区域的访问是特定种类的访问的情况下(例如,在访问为读取的情况下),可以不更新与虚拟区域对应的IOPS1576。
再参照图2。池管理程序1530使用段管理表1560和虚拟卷管理表1570,由此管理虚拟区域和段的对应关系,并且在具有对未分配段的虚拟区域的访问时,将未使用的段分配给该虚拟区域。
存储装置2000从主计算机3000接收到具有访问目的地信息(例如VVOL以及LBA)的写命令的情况下,进行包含以下处理的写处理。
(S001)池管理程序1503将按照写命令的数据存储到高速缓冲存储器中。在该时刻,程序1503可以将写的完成应答返回给主计算机3000。
(S002)池管理程序1530根据访问目的地信息,确定成为写目的地的VVOL以及虚拟区域。
(S003)程序1530根据表1570来判断是否对写目的地虚拟区域分配了段。
(S004)如果S003的判断为否,则程序1530根据表1560来确定空闲的段(没被分配给任何虚拟区域的段)。程序1530将所确定的段分配给写目的地虚拟区域。具体来说,程序1530在与写目的地虚拟区域对应的记录(表1570中的记录)中登录所确定的段的ID、大小以及IOPS。
(S005)如果S003的判断为是,或者,在S004之后,程序1530向被分配给写目的地虚拟区域的段写入高速缓冲存储器内的数据。在该时刻,程序1530可以将写的完成应答返回给主计算机3000。此外,在该时刻,该段的IOPS1576通过段迁移程序1540被更新。
存储装置2000从主计算机3000接收到具有访问目的地信息(例如,VVOL的ID以及LBA)的读命令的情况下,进行包含以下处理的读处理。
(S011)池管理程序1530根据访问目的地信息,确定成为读取源的VVOL以及虚拟区域。
(S012)程序1530判断读取对象的数据是否残留在高速缓冲存储器中。
(S013)在S012的判断为是的情况下,程序1530将高速缓冲存储器内的读取对象数据发送给主计算机3000。此时,不更新分配给读取源虚拟区域的段的IOPS1576。
(S014)在S012的判断为否的情况下,程序1530根据表1570来判断分配给读取源虚拟区域的段。
(S015)程序1530从所确定的段中读取读取对象数据,存储在高速缓冲存储器中。在该时刻,该段的IOPS1576通过段迁移程序1540被更新。
(S016)程序1530把在S015中存储在高速缓冲存储器中的读取对象数据发送到主计算机3000。
说明段迁移程序1540和迁移策略表1580。
段迁移程序1540监视向各段的访问,更新虚拟卷管理表1570的IOPS1576。并且,段迁移程序1540以系统或管理者指定的间隔,根据迁移策略表1580进行按照表1580的介质间(阶层间)的段迁移。然后,程序1540更新虚拟区域和段的关系(段管理表1560和虚拟卷管理表1570)。具体来说,程序1540代替转移源的段,而向被分配了该转移源的段的虚拟区域分配转移目的地的段。
图6表示迁移策略表1580的例子。
迁移策略表1580针对每个策略,具有下述的信息:
*用于识别策略的ID1581、
*迁移实施契机1582、
*记载了应该执行的处理的策略1583。
契机1582以及策略1583可以在存储装置初始出厂时设定,也可以之后由管理者手动设定。例如,在按照图6所示的ID:0和ID:1的策略的情况下,段迁移程序1540从IOPS大的段开始按顺序,将段内的数据迁移到阶层:阶层0(SSD介质)内的段。当在SSD介质中没有空闲的段的情况下,将数据迁移到下一阶层:阶层1(SAS介质)内的空闲的段。由此,能够进行与段的访问频度对应的介质利用。
接下来,参照图1说明管理计算机2000内的硬件结构。
管理计算机2000除了管理IF2400,还具备存储器1500、作为辅助存储装置的盘2200、与它们连接的CPU2100。
图7表示存储装置2500存储的程序以及信息。
作为程序,具有构成管理程序2510、构成信息取得程序2520、段IO评价程序2530、容量预测(1)程序2540、显示(1)程序2550。这些程序通过CPU2100执行。作为信息,有池容量管理表2560、IPOS性能评价表2570、容量推移履历表2580。
构成管理程序2510接受来自存储装置管理者的设定指示,向存储装置1000进行设定指示。例如,管理者可以使用构成管理程序2510,进行存储装置1000具有的迁移策略表1580的设定等。作为构成管理程序2510管理的信息之一,具有池容量管理表2560。
图8表示池容量管理表2560的例子。
池容量管理表2560具有与池容量有关的信息。具体来说,表2560针对每个介质具有下述的信息:
*表示介质的种类的分类2561、
*表示构成介质的全部的段的总存储容量的容量2562。
作为分类2561,可以是“整个池”,此时,作为容量2562记录构成池的全部的介质的总存储容量。根据图8的表2560,池是阶层:阶层0为30TB、阶层:阶层1为110TB、阶层:基层2为500TB,池的容量是这些的总和即640TB。表2560实质上始终与存储装置100的池的状态一致。因为在于构成管理程序2510使用构成信息取得程序2520,始终监视存储装置1000具有的池的状态等。
构成信息取得程序2520经由存储装置1000具有的管理IF1010,与构成信息通信程序1510通信,取得存储装置1000具有的信息。
段IO评价程序2530使用IOPS评价表2570,根据段的访问频度计算出希望配置该段内的数据的介质,将计算结果记录在容量推移履历表2580中。
容量预测(1)程序2540使用容量推移履历表2580对每个介质预测今后需要的容量。
使用后述的流程图详细说明这些程序进行的处理。
图9表示IOPS性能评价表2570的例子。
IOPS性能评价表2570具有表示属于哪个IOPS范围的IOPS的段内的数据应该配置在哪个种类的介质内的信息。具体来说,表2570针对每个介质具有下述的信息:
*用于识别介质(阶层)的ID即阶层ID2571、
*表示介质的类别(成为构成介质的逻辑卷的基础的物理资源的类别)的资源类别2572、
*具有期望配置在介质中的数据的段的期望的IOPS范围即容许IOPS范围2573、
*在介质中的全部的使用段(被分配给虚拟区域的段)的IOPS收容在容许IOPS范围2573内时所期待的性能(响应时间),即假想响应时间2574。
在此所说的“响应时间”是存储装置1000内的响应时间,具体来说,是从控制器1100发行用于访问段的命令开始到对该段的访问结束为止的时间长度。“假想响应时间”是假想的响应时间(期待的响应时间)。
本表2570与上述的迁移策略表1580不同,是用于根据段内的IOPS计算期待配置该段内的数据的阶层的表。
作为容许IOPS范围2573以及假想响应时间2574的导出的一例,有如下的例子。
一般来说,物理资源1400如果IOPS在特定的IOPS(以下称为边界IOPS)以下则能够始终期待相同程度的响应时间(假想响应时间),但是,当IOPS超过了该边界IOPS时,响应时间急速变大(超过了假想响应时间)。越是高性能的介质,则边界IOPS越大。据此,通过组合每个介质的边界IOPS,能够导出图9所示的容许IOPS范围2573。并且,可以通过管理者直接输入,来决定IOPS性能评价表2570。此外,在实施例1中,可以没有假想响应时间2574。
图10表示容量推移履历表2580的例子。
容量推移履历表2580具有表示在各时刻根据从存储装置1000取得的信息计算出的每个介质的使用容量(使用段的总存储容量)的信息。具体来说,表2580针对每个时刻具有下述的信息:
*表示时刻的日期时间的时刻2581、
*表示在该时刻的阶层0(SSD介质)的使用容量的信息2582、
*表示在该时刻的阶层1(SAS介质)的使用容量的信息2583、
*表示该时刻的阶层2(SATA介质)的使用容量的信息2584。
在各时刻的各介质的使用容量通过段IO评价程序2530来计算。在阶层为4个以上时,列数增加该量。
根据本表2580,例如,在(x-1)年4月,鉴于各段的IOPS,能够判断期望基层0为10TB,阶层1为40TB,阶层2为200TB。此外,在说明后述的段IO评价程序2530的处理时,一并说明关于容量推移履历表2580的更新的详细内容。
图7所示的显示(1)程序2550,在显示器装置等输出装置中显示GUI(Graphical User Interface)等,请求管理者输入各设定值,或者输出程序的执行结果。具体的显示例在后述的说明中进行说明。
接着,使用图1说明主计算机3000内的硬件结构。
主计算机3000除了所述的通信IF3300和管理IF3400之外,还具备存储器3500、作为辅助存储装置的盘3200、与它们连接的CPU3100。
如图11所示,在存储器3500中,作为CPU3100执行的计算机程序,例如存储业务程序3510。业务程序3510例如是管理数据库的程序等,把在数据库等中存储的数据通过VVOL存储在池中。
管理计算机2000以及主计算机3000例如是个人计算机或工作站等。在各计算机的存储器(2500以及存储器3500)中可以包含用于临时存储OS(Operating System)和数据的高速缓冲存储器。并且,各计算机除了上述的硬件结构之外,还可以具备键盘等输入装置或显示器装置等输出装置。此外,在各计算机中,在将全部数据存储在存储装置1000中等情况下,也可以没有盘(2000以及3000)。
<处理说明:段IO评价程序2530>
图12是段IO评价程序2530的处理的流程图。
例如,在按照预先设定的调度的定时,或者在管理者指定的定时,开始处理。
在步骤4110中,段IO评价程序2530以一定间隔,重复步骤4120至步骤4170的处理。所谓“一定间隔”例如是存储装置1000的段迁移程序1540进行的段迁移的开始时间间隔,还可以是管理者指定的任意的时间间隔。
在步骤4120中,程序2530经由构成信息取得程序2520,从存储装置1000取得虚拟卷管理表1570。
在步骤4130中,程序2530根据在步骤4120中取得的虚拟卷管理表1570,对各使用段A(已分配给VVOL的段),进行步骤4140至步骤4160的处理。以下,以一个使用段A为例(在图12的说明中称为“对象段A”),说明步骤4140至步骤4160。
首先,程序2530对于在IOPS性能评价表2570中的各阶层X(X=0、1、...)(步骤4140),判断对象段A的IOPS是否在阶层X的容许IOPS范围2573内(步骤4150)。
如果步骤4150的判断结果为是,则程序2530将阶层X的段计数值增加1(步骤4160)。
如果步骤4150的判断结果为否,则返回步骤4140,针对阶层(X+1)执行步骤4150。段计数值是指假设成为按照IOPS性能评价表2570的理想的数据配置时的使用段的数量。
举具体例子进行说明。例如,程序2530判断段ID:2001(参照图5)的IOPS是否在阶层0的容许IOPS范围2573(参照图9)内。因为阶层0的容许IOPS范围为501以上,所以该判断结果为否。因此,程序2530进行段ID:2001的IOPS是否在阶层1的容许IOPS范围内的判断。因为该判断的结果为是,所以程序2530将阶层1的段计数值增加1。
对全部的使用段实施从步骤4140到步骤4160的处理。
然后,在步骤4170中,程序2530将各阶层的段计数值(阶层中的理想的使用段数)变换为容量,追加到容量推移履历表2580的当前的时刻部分。例如,当设X年4月阶层0的段计数值为220000时,在本实施例中,因为1段为100MB,所以计算出22TB是阶层0的理想的使用容量(分配给虚拟区域的段的总存储容量)。以下,同样地对于阶层1和阶层2计算X年4月的理想的使用容量,把该结果追加到容量推移履历表2580的X年4月的记录中。
通过管理者的中止指示、段迁移程序1540的停止、或者容量预测(1)程序2540的停止等(即在任意的定时),可以结束图12所示的处理。
<处理说明:容量预测(1)概要>
图13是容量预测(1)程序2540的处理的流程图。
例如,在按照预先设定的调度的定时,或者管理者指定的定时开始本处理。
首先,在步骤4010中,容量预测(1)程序2540从管理者接受容量阈值Th1、目标性能Th2以及预测期间T的输入。容量阈值Th1是与池的使用容量(使用段的总存储容量)比较的值。目标性能Th2是与池的性能(例如平均响应时间)比较的值。预测期间T是表示是否计算从当前到将来的哪个时刻的增设量的值。预测期间T为1个月,如果当前是2009年4月,则计算2009年5月的增设量。此外,容量阈值Th1、目标性能Th2以及预测期间T中的至少一个可以通过在出厂时等进行初始设定来省略步骤4010。此外,在后面说明用于输入这些初始值的GUI的显示例。
然后,如步骤4020所示,例如定期地执行步骤4030以及步骤4040的处理。
在步骤4030中,程序2540根据使用构成信息取得程序2520取得的池状况信息(例如,虚拟卷管理表1570)和IOPS性能评价表2570,来计算池的使用容量以及性能(例如平均响应时间)。程序2540判断池的使用容量是否超过了容量阈值Th1,以及池的性能是否超过了目标性能Th2。
当步骤4030的判断的结果为是时,具体来说,在池的使用容量超过了容量阈值Th1或者池的性能低于目标性能Th2的情况下(例如,在平均响应时间成为超过了目标性能Th2的长的时间的情况下),执行步骤4040。即,程序2540进行增设量的预测以及结果的显示处理。后面使用图14说明该处理。
在步骤4020所示的循环中,可以在任意的定时通过管理者的中止指示,或者段迁移程序1540的停止,来结束容量预测(1)程序2540的处理。
图14是图13的步骤4040的处理的流程图。
在步骤4042中,程序2540根据容量推移履历表2580来计算各介质的使用容量的增加率。程序2540根据各介质的使用容量的增加率,来预测从当前在预测期间T之后的时刻的各介质的使用容量。后面说明预测方法的例子。
如步骤4043所示,对于各介质(阶层X(X=0、1、...),进行步骤4044~步骤4046。以下,以一个介质为例(以下,在图14的说明中,称为“对象介质”),说明步骤4044~步骤4046。
在步骤4044中,程序2540判断对象介质的当前的容量Y是否在预测期间T后也不足。具体来说,程序2540根据池容量管理表2560,判断对象介质的容量Y(对象介质的容量2560表示的容量)是否为在步骤4042中预测的使用容量Z(对象介质的使用容量)以上。
如果步骤4044的判断结果为是,则程序2540判断为不需要向对象介质追加容量(对象介质的增设量=0)(步骤4045)。此外,在步骤4045中,程序2540可以判断为对象介质的增设量=(Z-Y)。(Z-Y)的值为负值,因此,具体来说,程序2540可以判断为能够从对象介质中去除(Y-Z)的容量。
另一方面,如果步骤4044的判断结果为否,则程序2540判断为对象介质的增设量=(Z-Y)(步骤4046)。
针对各介质进行以上的从步骤4044到步骤4046的处理。
在步骤4047中,程序2540使显示(1)程序2550显示各介质的被判断的增设量。在后面说明所显示的GUI的例子。此外,在步骤4047中,代替或者除了显示各介质的被判断的增设量,程序2540还可以进行在存储装置1000中把未使用的逻辑卷(或者未使用的逻辑卷中的相当于增设量的部分)自动地向与该逻辑卷的种类对应的介质进行追加的处理。
使用图15说明步骤4022~步骤4047的具体例。
图15的各图表9110~9140表示横轴9111是时刻,纵轴9112是整个池或者各阶层的容量。图表9110是整个池的容量的图表,图表9120是阶层0的容量的图表、图表9130是阶层1的容量的图表、图表9140是阶层2的容量的图表。此外,当前是X年4月,设预测期间T=1个月。在池的使用容量超过了容量阈值Th1的情况下(或者池的性能低于目标性能Th2的情况下),进行以下的处理。
即,容量预测(1)程序2540能够根据容量推移履历表2580(参照图10),预测一个月后的使用容量。例如,在使用一次函数来预测一个月后所需要的容量时,阶层0的使用容量(严密说是理想的存储容量)每月增加1TB,因此,一个月后的X年5月,预测为增加了1TB的23TB。关于阶层1以及阶层2,也能够用同样的方法预测X年5月的使用容量。此外,在预测中使用的一次函数的推定中,使用最小二乘法等数学方法,能够计算出误差小的增加率(使用容量的增加率)。此外,在预测中,通过使用多元函数等,能够提高精度。如此,如果能够得到各时刻的每个介质的使用容量(理想的存储容量),则能够用任意的方法来预测将来的使用容量(即,预测方法并不限于一次函数或者多元函数等)。
存在在根据容量推移履历表2580(参照图10)确定的使用容量(理想的存储容量)的增加率中具有周期的特性的情况。例如,根据图10阶层2的使用容量基本上每次增加20TB,但是,存在发现从(X-1)年4月开始仅5月急剧增加的案例。在这种情况下,在X年5月的预测中,不使用最近的增加率,使用一年前的增加率能实现更高的精度的预测。例如,包含了保存有一般的企业的员工管理数据库的信息的VVOL的池,在一年中的新员工入职的4~5月容量急剧地扩大,在其以外的期间估计不进行大的增加。因此,容量预测(1)程序2540可以向管理者请求是否考虑周期的特性,或者请求指定在预测中使用的履历数据的期间。
根据图15,对于X年5月,阶层0的预测使用容量(预测的使用容量)Z没有超过阶层0的容量Y(30TB),此外,阶层1的预测使用容量Z没有超过阶层1的容量Y(110TB)。因此,对于阶层0以及阶层1的任何一个,通过所述的步骤4045,判断为在X年5月的时刻,不需要增设(增设量=0)。
但是,对于阶层2,与预测使用容量Z为520TB无关,阶层2的当前的容量Y仅500TB,因此,在所述的步骤4046中,增设量被判断为(Z-Y)=20TB。
根据上述,在步骤4047中,显示阶层0以及阶层1不需要增设,在阶层2中需要增设20TB的结果。此外,对于阶层0以及阶层1,可以显示能够消减(Y-Z)的容量的结果。另外,可以仅在(Y-Z)的值为预定值以上的情况下做出可以进行容量消减的判断(例如,该预定值是比零大的值)。
<显示例>
图16表示在图13的步骤4010中通过显示(1)程序2550显示的GUI1500的例子。
GUI1500是请求管理者输入各设定值的GUI。在GUI1500中具备用于输入容量阈值Th1的文本框5112、用于选择作为目标性能Th2要监视的目标性能的种类的组合框5122、和用于输入目标性能Th2的文本框5123。此外,还可以具备用于选择是否监视容量和性能的复选框5111以及5121。在此,作为目标性能5122的选择分支,有池的平均响应时间或百分比值等。平均响应时间是每一个IO(从控制器1110针对端的一个访问)的响应时间的平均值。此外,例如,响应时间的80%的值P是表示整个80%的响应时间(每一个IO的响应时间)为P以下的值。并且,GUI5100为了输入预测期间T,具备文本框5132和用于选择期间的单位的组合框5133。此外,还可以具备用于选择用户直接输入,还是使用系统具体的适当的期间的值,例如用于选择是否使用段迁移的间隔的单选按钮5131。此外,还可以具备是否选择在预测中输入周期的预测的复选框5141,或者用于指定期间的文本框。此外,还可以具备用于确定输入的按钮5151或用于取消的按钮5152等。
在指定了K百分值为响应时间为Vms(毫秒)时,在假想响应时间为Vms以下的全部的介质的全部的使用段的IOPS的总和低于全部池的使用段的IOPS的总和的K%时,在图13的步骤4030中成为是。即,在假想响应时间为Vms以下的段增加(即,使用了高性能的介质的段的比例增加)的情况下,全体性能提高。另一方面,在假想响应时间在Vms以下的段的比例低于K%,即假想响应时间为Vms以上的段增加的情况下,全体性能变差。此外,存储器监视在C IF上从读取要求到实际返回数据为止生成的实测的响应时间,当在任意的恒定期间响应时间为Vms以下的读取请求次数超过了K%的情况下,在步骤4030中可以成为是。此外,响应时间可以是实测值。
图17表示图14的步骤4047中显示的GUI5200的例子。
GUI5200是用于向管理者通知每个阶层需要的增设量的GUI。在GUI5200中显示表示预测期间T后的预测的文本5201,具备用于显示各增设量的表5211。在表5211中表示各阶层以及对应的每个资源类别所需的增设量。此外,可以代替表5211,显示在存储装置内能够使用的、并且满足增设量的逻辑卷的一览。此外,还可以具备管理者为了了解上述内容,用于关闭GUI5200而使用的按钮5231。
并且,GUI5200在信息区域5221中,可以显示用于说明需要表5211所示的增设量的理由的文本。例如,可以将是否在高位的阶层中增设存储容量(逻辑卷)作为判断基准,如下那样决定在信息区域5221中显示的文本。首先,判断最高位阶层的阶层0的增设量是否为0,在阶层0的增设量为0的情况下,可以显示表示高性能的阶层足够,在此次增设中仅增加低性能的阶层,性能足以满足需求的文本。另一方面,在需要增设阶层0的情况下,即增设量不是0的情况下,可以显示表示高频度被访问的区域被扩大,为了维持性能需要增设高性能的阶层的文本。在池中存在三种以上的阶层的情况下,可以从是否为最高位阶层或者增设费用的观点出发对阶层进行分类,应用上述的处理。由此,能够决定在信息区域5221中显示的文本(语句)。
实施例2
以下,说明本发明的实施例2。此时,主要说明与实施例1的不同点,对于与实施例1的共同点省略或简略说明。
<概要>
在实施例1中,使用预先准备的IOPS评价表2560,对每个介质计算使用容量的增加率,根据每个介质的使用容量的增加率,针对每个介质计算增设量。
在本发明的实施例2中,根据目标性能和增设介质的容量时的成本(以下称为增设成本),决定在能够达到目标性能以上的性能的范围内增设成本最小的增设量。
<结构说明>
实施例2的存储系统的物理的结构可以与图1所示的结构相同。管理计算机2000内的存储器2500中存储程序与实施例1的程序不同。
图18表示实施例2的存储器2500存储的程序以及信息。
构成管理程序2510、构成信息取得程序2520、IOPS性能评价表2570、池容量管理表2560与实施例1相同。但是,在IOPS性能评价表2570中,可以不包含容许IOPS范围2573,但是,需要包含假想响应时间2574。
除了上述程序以及信息,实施例2的存储器2500还存储:预测每个IOPS的段数的推移的段IOPS预测程序2610;预测将来需要的每个阶层的增设量的容量预测(2)程序2620;显示用于通知用于输入初始设定值的GUI或增设量的GUI的显示(2)程序2630;段IOPS分布履历表2640以及增设模式保存表2650。但是,增设模式保存表2650是为了方便而使用代表,可临时存储。
图19表示段IOPS分布履历表2640的例子。
段IOPS分布履历表2640表示基于使用段数的IOPS的分布。具体来说,例如,表2640的横轴表示IOPS2643,纵轴表示时刻2641,在作为行和列的交点的各区2644中存储表示段数的信息。例如,在X年4月,IOPS为100的段的数可知是6200。此外,为了方便,把将来的时刻2642的按IOPS区分的段预测数(所预测的段的数)2645写成n[IOPS数]。此外,IOPS数2643除了一个刻度外,还可以是特定的范围单位(例如,10IOPS单位)。此外,关于段IOPS分布履历表2640的生成以及更新方法,在后述的段IOPS预测程序的处理的流程中进行说明。
图20表示增设模式保存表2650的例子。
增设模式保存表2650基于与容量的增设模式有关的信息。具体来说,表2650针对每个增设模式,具有下述的信息:
*表示与各介质的比例相关联的参数的参数2651、
*表示为了实现参数2651增设了池的容量时生成的增设成本的增设成本2652、
*表示当时期待的性能的假想性能2653。
关于参数、增设成本、具体的计算方法以及利用方法,在后述的容量预测(2)程序2620的处理的流程中进行说明。
在此,关于参数的含义,使用图21进行说明。
在图21所示的图表9200中,横轴9202是IOPS、纵轴9201是段数。并且曲线9203表示每个IOPS9202的段数。
作为参数,有A和B(A<B)。两个参数A和B是定义应该将哪个IOPS的段内的数据配置在哪个介质中的参数。
具体来说,IOPS为A以下的段内的数据被配置在阶层2内,IOPS为B以上的段内的数据被配置在阶层0内,IOPS比A大比B小的IOPS的段内的数据被配置在阶层1内。此时,应该分配给阶层0的段数通过区域9204的面积来表示,应该分配给阶层1的段数通过区域9205的面积来表示,应该分配给阶层2的段数通过区域9206的面积来表示。此外,在阶层为4个以上的情况下,可以通过将参数的数量增加为3个以上来应对。
此外,在本实施例2中,图20所示的增设成本2652表示增设容量所需的金额。但是,增设成本并不限于金额,也可以是通过增设而增加的消耗电力量等。假想性能2653是根据IOPS性能评价表2570的假想响应时间2574和应该分配给各阶层的段的IOPS导出的、假想的平均响应时间。即,假想性能2653能够通过下式来计算。
(假想性能2653={(1ms(毫秒)×(图20中成为阶层0的段的IOPS的总和)+10ms×(图20中的成为阶层1的段的IOPS的总和)+100ms×(图20中的成为阶层2的段的IOPS的总和))÷(全部段的总IOPS)。
此外,假想性能可以是响应时间的百分值。此外,假想响应时间在阶层为三种以上的情况下,可以通过与上述同样的方法来计算。
<处理说明:段IOPS预测>
图22表示段IOPS预测程序2610的处理的流程图。
例如,在按照预先设定的调度的定时,或者在管理者指定的定时,开始处理。
如步骤4410所示,段IOPS预测程序2610按照恒定间隔重复从步骤4420到步骤4460的处理。此外,在此所说的“恒定间隔”,例如是存储装置1000的段迁移程序1540进行的段迁移的开始间隔,也可以是管理者指定的任意的间隔等。
在步骤4420中,程序2610使用构成信息取得程序2520,从存储装置1000取得虚拟卷管理表1570。
接着,在步骤4430中,程序2610根据取得的虚拟卷管理表1570的IOPS1576,针对每个IOPS对段数进行计数。然后,在步骤4440中,程序2610使用在步骤4430中进行计数而得的每个IOPS的段数,更新段IOPS分布履历表2640。此外,如上所述,可以针对每个IOPS的范围,对段数进行计数。
在步骤4450中,程序2610使用在步骤4440中更新的段IOPS分布履历表2640,预测由后述的容量预测(2)程序指定的预测期间T后的每个IOPS的段数。在步骤4460中,程序2610将其预测结果追加到段IOPS分布履历表2640中。
例如,根据图19所示的段IOPS分布履历表2640,在当前为X年4月的情况下,IOPS为100的段数每个月增加100。与图14的步骤4042相同,在进行基于一次函数的预测的情况下,将1个月后的X年5月的段数的预测值n[100]预测为6300。关于预测方法,与实施例1相同,不限于一次函数考虑使用多元函数等各种方法。如此,能够求出作为将来的段数的预测值2645的n[IOPS数]。
可以根据管理者的中止指示、段迁移程序1540的停止、或者段IOPS预测程序2610的停止等(在任意的时刻),结束图22所示的处理。
<处理说明:容量预测(2)程序>
图23表示容量预测(2)程序2620的处理的流程图。
例如,在按照预先设定的调度的定时、或者管理者指定的定时,开始处理。
首先,在步骤4310中,容量预测(2)程序2620请求管理者输入容量阈值Th1、目标性能Tn2、以及在增设各阶层的介质时发生的每单位容量的增设成本C。并且,程序2620还请求输入预测期间T。然后,程序2620向段IOPS预测程序2610通知所输入的预测期间T。此外,可以通过在出厂时等初始设定容量阈值Th1、目标性能Tn2、增设成本C以及预测期间T而省略步骤4310。此外,增设成本C是指增设每单位容量的介质时发生的费用或者消耗电力。
如步骤4320所示,例如定期地进行步骤4330以及步骤4340的处理。
在步骤4330中,程序2620根据使用构成信息取得程序2520取得的池状况信息(例如虚拟卷管理表1570)和增设模式保存表2650,计算池的使用容量以及性能(例如平均响应时间)。程序2540判断池的使用容量是否超过了容量阈值Th1,以及池的性能是否超过了目标性能Th2。
在步骤4330的判断结果为是的情况下,具体来说,在池的使用容量超过了容量阈值Th1,或者池的性能低于目标性能Th2的情况下(例如,在平均响应时间超过了目标性能的长时间时),执行步骤4340。即,程序2620进行增设量的预测以及结果的显示处理。关于该处理,后面使用图24进行说明。
在步骤4320所示的循环中,可以在任意时刻根据管理者的中止指示、或者段迁移程序1540的停止,结束容量预测(2)程序2620的处理。
图24以及25是图23的步骤4340的处理的流程图。在此,说明阶层为三种的例子。另外,即使阶层为四种以上,也能够通过增加所述的参数的数量,同样地进行计算。
在步骤4342中,容量预测(2)程序2620对增设模式保存表2650进行初始化(使其成为空)。并且,程序2620使用参数A和B,对应该分配给各阶层的段数进行分类。
步骤4343以及步骤4344表示在A小于B(A<B)条件成立的全部的(A、B)中,执行步骤4345~步骤4347。以下,关于以一个(A、B)为例(在图24的说明中称为“对象(A、B)”),说明步骤4135~步骤4347。
在步骤4345中,程序2620根据IOPOS性能评价表2560和段IOPS分布履历表2640中的各IOPS的段预测数2645,来计算基于对象(A、B)的池的假想性能K。例如,在假想性能为池的平均响应时间时,参照图21说明的假想性能K能够通过下式求出。
假想性能={(1ms×(图20中成为阶层0的段的IOPS的总和)+10ms×(图20中成为阶层1的段的IOPS的总和)+100ms×(图20中成为阶层2的段的IOPS的总和)}÷(全部段的总IOPS)。
然后,在步骤4346中,程序2620判断在步骤4345中计算出的假想性能K是否优于目标性能Th2(即K<Th2)。
在步骤4346的判断结果为否的情况下,程序2620针对下一个(A、B)进行步骤4345以后的处理。
另一方面,在4346的判断结果为是的情况下,程序2620将对象(A、B)和假想性能K以及根据对象(A、B)求出的增设成本J追加到增设模式保存表2650中。然后,针对下一个(A、B)进行步骤4345以后的处理。
在此,增设成本J可以通过使用在步骤4310中设定的各介质的增设成本C来计算。具体来说,能够通过下式来计算。
增设成本J=(阶层0的增设成本)×(阶层0的增设量)+(阶层1的增设成本)×(阶层1的增设量)+(阶层2的增设成本)×(阶层2的增设量)。
在此,例如阶层0的增设量可以通过下式来计算。
阶层0的增设量=((图21的区域9204的面积)×100MB)-(池容量管理表2560的阶层0的容量)。
阶层1以及阶层2的增设量也可以同样地计算。此外,在仅考虑了增设量是否为正值的情况下,对于增设量为负值的阶层,可以从增设成本J的计算式中除去。
关于全部的(A、B),在进行了步骤4343以及4344所示的循环后,进行图25所示的处理。
在步骤4350中,程序2620判断增设模式保存表2650是否为空。
在步骤4350的判断的结果为是的情况下,不存在实现目标性能的增设模式。因此,如步骤4351所示,程序2620使用显示(2)程序2630,显示用于求出目标性能等的再设定的GUI。或者,可以再次从步骤4341执行处理。
另一方面,在步骤4350的判断结果为否的情况下,在步骤4353中,程序2620根据增设模式保存表2650求出增设成本最小的(A、B)(即参数的组合)。
然后,在步骤4354中,程序2620使用在步骤4353中求出的(A、B),根据段预测数2645求出预测期间T后的时刻的各阶层的使用容量。然后,程序2620根据各阶层的使用容量(预测值)和各阶层的当前的使用容量,计算参照了图21的说明的各阶层的增设量。
然后,在步骤4355以及步骤4356中,程序2620判断全部的阶层的增设量是否为正值。
在步骤4356的判断的结果为否的情况下(即,某一个的增设量为0以下时),在步骤4357中,程序2620不采用该(A、B),从增设模式保存表2650中去除具有该(A、B)的记录,返回步骤4353。
另一方面,在步骤4356的判断的结果为是的情况下,进行步骤4358。此外,在步骤4358中,在除去增设量为负的情况生成增设模式保存表2650的情况下,不需要步骤4355以及步骤4346的处理。
然后,在步骤4358中,程序2620使显示(2)程序2630显示通过图24以及图25所示的处理求出的、具有每个阶层的增设量的GUI。此外,步骤4358可以代替或者除了显示每个阶层的增设量,通过程序2620进行自动地将存储装置1000中未使用的逻辑卷追加到与该逻辑卷的种类对应的介质的处理。
<显示例>
图26表示在图23的步骤4310中通过显示(2)程序2630显示的GUI5300的例子。
在GUI5300中具备用于输入容量阈值Th1的文本框5311和选择作为目标性能Th2要监视的目标性能的种类的组合框5322和输入其值的文本框5323。此外,还可以具备用于选择直接指定目标性能还是将维持现状的性能设为目标性能的单选按钮5321。在此,作为目标性能5122的选择分支,具有整个池的平均响应时间或百分值等。此外,GUI5300为了输入预测期间T,具备文本框5322和用于选择期间的单位的组合框5333。还可以具备用于选择使用用户直接输入,还是使用系统具有的适当的期间的值,例如选择使用段迁移间隔的单选按钮5331。此外,还可以具备用于选择在预测中输入周期的预测的复选框5341或用于指定预测期间的文本框。并且,具有用于指定各阶层的增设成本C的文本框5351。输入单位除了增设的费用之外,还可以是消耗电力等。此外,还可以具备用于确定输入的按钮5361或用于取消的按钮5362等。
图27表示在图25的步骤4358中显示的GUI5400的例子。
除了图17所示的GUI5200的显示之外,在实施例2中还可以显示表5221,该5221显示假想性能以及由于增设而产生的增设成本。此外,在表5221中显示的值,可以通过参照增设模式保存表2650来显示。此外,作为别的显示,增设模式保存表2650中的全部的增设方法可以将表5211和表5211显示的要素、至少每个阶层的增设量和增设成本或者假想性能作为一个表,按照增设成本顺序或者假想性能顺序进行显示。
<实施例2的变化量的例子>
实施例2的步骤4340根据目标性能以及增设成本来计算增设量。这可以在管理者希望的任意的定时来实施,由此可以支持以下要说明的用户情况。
第一,可以通过管理者指定池的目标性能,将满足该目标性能的各介质的增设量与增设成本一起显示。管理者能够通过重复目标性能的指定和计算出的增设成本的显示,得到兼顾目标性能和增设成本的每个介质(阶层)的增设量。
第二,通过管理者指定增设而需要的增设成本,由此估计满足指定的增设成本的各介质的增设量和此时的假想性能。由此,管理者能够在希望的增设成本的范围内得到能够实现的各介质的增设量和此时的性能。
在实施例2的步骤4340中,可以看做是根据满足被赋予的目标性能的制约,决定增设成本为最小的各阶层的增设量的最佳化问题(optimizationproblem)。即,能够重写为以下那样的问题。将n[x]设为IOPS为x时的段数,将参数A设为成为阶层1和阶层2的边界的IOPS,将参数B设为成为阶层0和阶层1的边界的IOPS。此外,将常数值C0、C1、C2分别设为增设了阶层0、阶层1、阶层2的单位容量时的增设成本,将常数值r0、r1、r2分别设为阶层0、阶层1、阶层2的假想响应时间,将变量J0、J1、J2分别设为增设前的阶层0、阶层1、阶层2的容量,将变量r设为用户设定的目标性能。目标函数(成本)按照下面的式1,制约按照下面的式2以及式3。
(式1)
(式2)
r 0 &times; &Sigma; x > &beta; ( x &times; n [ x ] ) + r 1 &times; &Sigma; &alpha; &le; x &le; &beta; ( x &times; n [ x ] ) + C 2 &times; ( &Sigma; x < &alpha; x &times; n [ x ] ) &le; r
(式3)
( &Sigma; x > &beta; n [ x ] - &Delta; 0 ) &GreaterEqual; 0 and ( &Sigma; &alpha; &le; x &le; &beta; n [ x ] - &Delta; 1 ) &GreaterEqual; 0 and ( &Sigma; x < &alpha; n [ x ] - &Delta; 2 ) &GreaterEqual;0
上述的问题,看做将参数A、B作为变量的最佳化问题。在阶层增加的情况下,参数数量也增加。上述的问题可以看做非线性凸规划问题(non-linearconvex programming problem),因此除了参照图24以及图25说明的方法以外,例如还可以使用如下的方法。在n[x]能够近似为可微分函数(differentiablefunction)的情况下,可以通过补偿法(penalty method)或序列二次规划法(sequential quadratic programming method)来计算。此外,在无法将n[x]近似为可微分函数的情况下,通过使用在离散规划问题(Discreate ProgrammingProblem)中研究的各种方法,高效地进行计算。此外,上述的问题的解决并不限制本发明的技术的范围。
此外,在实施例1和实施例2中,处理了单一池,但是,当在池内存在多个子池的情况下,也可以对这些每个子池应用实施例1以及实施例2的技术。在此,“子池”是将池内的池卷进行分组而得到的。例如在限制特定的VVOL使用的池卷时,将VVOL与子池对应起来,从子池向该特定的VVOL分配段。
实施例3
说明本发明的实施例3。此时,主要说明与实施例1及/或实施例2的不同点,对于与实施例1及/或实施例2的共同点,省略或者简略说明。
<概要>
在实施例1以及实施例2中,考虑段的访问频度(IOPS),说明各阶层的适当的增设方法。在实施例3中,当在实施例2中所说明的假想性能高于目标性能的情况下(例如,在高性能的阶层过剩的情况下),在达到目标性能的同时,从池中去除高性能的介质的容量,在其他用途中使用该容量。由此,作为整个存储装置能够有效地使用存储区域。此外,实施例3的硬件结构与实施例2相同。
<处理说明>
在实施例3中进行的处理只是与实施例2中执行的处理中的图25所示的步骤4356以后不同。因此,参照图28说明步骤4356以后。
程序2620在通过步骤4356求出的阶层X(X=0、1、...)的增设量为正的情况下,判断为阶层X需要增设(步骤4371)。另一方面,在阶层X的增设量为0以下的情况下,在步骤4372中,程序2620判断为阶层X可减设,将阶层X的减设量设为阶层X的增设量的绝对值。关于各阶层,在进行了上述处理后,在步骤4373中,程序2620使显示(2)程序2630显示具有其结果的GUI。此外,在步骤4373中,代替或者除了显示具有结果的GUI外,还可以自动地进行逻辑卷增减设。
图29表示在图28的步骤4373中显示的GUI5500的例子。
在GUI5500中,除了显示增设量的表5511,还显示用于显示减设量的表5521。此外,还显示用于显示此时的假想性能的表5531。此外,与实施例2相同,可以将增设成本与假想性能一同记载。
实施例4
<概要>
在实施例1~3中,计算增设量。该增设量是基于预测的使用容量的值,因此,即使进行了实施例1~3中计算出的增设量那样的容量增设,也不存在性能低下或者容量不足的可能性。因此,在实施例4中,进行在进行了在实施例1~3计算出的增设量那样的容量增设后产生性能降低或者容量不足时的原因分析。
<结构说明>
硬件的结构与实施例1或实施例2没有变化。在管理计算机2000内的存储器2500内包含的程序不同。具体来说,如图30所示,在实施例4中,在存储器2500中存在池性能监视程序2700。此外,池性能监视程序2700也可以不存在于实施例1或实施例3的存储器2500内。
<处理说明>
图31表示池性能监视程序2700的处理的流程图。
在图31中,列举了性能监视的例子。通过将“性能”该读为“容量”,还能够在容量监视中应用。此外,在实施例4中,如前所述,在实施例1~3中所示的方法中,以进行容量的增设为前提。在所述容量预测程序的开始或在管理者指定的时刻(即任意的时刻),开始处理。
在步骤4510中,池性能监视程序2700使用构成信息取得程序2520,取得存储装置1000的池的实测性能值。在此的“实测性能值”是与后述的目标性能值相同的指标,可以使用针对池内的各段的IO的实测响应时间值或针对提供给主计算机的VVOL的IO的实测响应时间值来进行计算。
在步骤4520中,程序2700把在步骤4510中取得的所述的实测性能值与在步骤4310等中指定的目标性能进行比较,在实测性能值比目标性能差时(例如,在响应时间长于目标响应时间时),前进到步骤4530。在实测性能值与目标性能相同或者更好时,返回步骤4510,继续监视。
在步骤4530中,程序2700使用构成信息取得程序2520,从虚拟卷管理表1570取得当前的池的每段的IOPS。然后,程序2700比较存储了预测结果的段IOPS分布履历表2640和根据上述取得的当前的池计算出的每个IOPS的段数。作为比较的结果,在从当前的池取得的每个IOPS的段数大于段IOPS分布履历表2640的每个IOPS的段预测数2645的情况下,进行步骤4550。反之,判断为收容在预测的范围内,进行步骤4540。
所谓进行步骤4540是段数的增加在预测的范围内,但是性能降低。因此,在步骤4540中,程序2700表示用于表示假想在池和主计算机3000之间存在原因的信息(向管理者通知该信息)。或者,在管理计算机2000具备解析池和主计算机3000的状态的程序(未图示)的情况下,程序2700启动该解析程序,使解析程序继续进行原因分析处理。
另一方面,所谓进行步骤4550是具有高于预测值的IOPS或者段数的增加。因此,程序2700显示具有该结果的GUI。
图32表示在图31的步骤4550中显示的GUI5700的例子。
在GUI5700中具备表示在步骤4550中所述的分析结果的文本5710、表示预测值的线5723和实测值的线5724的差异的图表5720。图表5720的横轴5722是时间,纵轴5721是容量。此外,横轴5721的容量可以是段数。此外,图表5720不表示每个IOPS的段数,在步骤4530中,能够针对被判断为范围外的IOPS部分、或者IOPS性能评价表2570的容许IOPS范围2573的每个范围进行表示。此外,还可以具备管理者在确认时按下的按钮5730。
实施例5
<概要>
在实施例1~4中,池的各阶层的容量预测可以在管理计算机2000内进行,但是,在本发明的实施例5中,容量预测处理在存储装置1000内实施。
<结构说明>
实施例5的硬件结构与图1所示的结构相同。
图33表示管理计算机2000内的存储器2500中存储的程序以及信息。
在实施例5中,通过存储装置1000执行各处理,因此,在存储器2500内作为程序,具有所述的构成管理程序2510即可。此外,还可以包含实施例1或实施例2中所述的显示(1)程序2550或、显示(2)程序2630。此外,在存储装置1000具有实施例1~4中的至少一个的管理计算机2000具有的功能的情况下,可以没有管理计算机2000。
图34表示存储装置1000内的存储器1500中存储的程序以及信息。
在实施例5中,在存储器1500中存储段IOPS解析程序1610、容量预测程序1620、IOPS性能评价表1630、段IOPS履历表1640、池容量管理表1650。其中,段IOPS性能评价表1630与在实施例1或者实施例2所述的IOPS性能评价表2570相同。此外,池容量管理表1650能够根据段管理表1560计算,因此不是必需的表。
存储装置1000为了进行与在实施例1中管理计算机2000进行的处理相同的容量预测处理,例如段IOPS解析程序1610是与段IO评价程序2530相同的程序,容量预测程序1620是与容量预测(1)程序2540相同的程序,段IOPS履历表1640是与容量推移履历表2580相同的程序即可。
此外,存储装置1000在进行与在实施例2中管理计算机2000进行的处理相同的容量预测处理的情况下,段IOPS解析程序1610是与段IOPS预测程序2610相同的程序,容量预测程序1620是与容量预测(2)程序2620相同的程序,段IOPS履历表1640是与IOPS分布履历表2640相同的程序即可。
但是,关于容量预测程序1620,在容量预测(1)程序或者容量预测(2)程序的流程图中,请求管理者输入的处理的输入方法被变更为存储装置具备的输入方法,或者,通过保存初始值而可以不需要输入初始值。此外,计算出的容量增设结果的通知也可以变更为存储装置具备的输出方法。
实施例6
<概要>
作为本发明的实施例6,说明具备主计算机上的池的情况下的增设时的容量预测方法。
<结构说明>
图35表示本发明的实施例6的存储系统。
存储装置1以及存储装置2的管理IF1010经由数据网络100与主计算机3000的管理IF3400连接。此外,存储装置1以及存储装置2的端口1020经由数据网络200与主计算机3000的管理IF3300连接。在此,与主计算机3000连接的存储装置1以及存储装置2仅将各自具有的存储区域提供给主计算机,存储装置的数量可以是0以上的任意的数量。此外,在主计算机3000自身内不具有后述的池的管理功能的情况下,可以存在用于管理池或者存储区域的管理计算机。
图36表示实施例6的池管理的概念。
主计算机3000将存储装置1提供的存储区域1400(图中LU1)或存储装置2提供的存储区域1400(图中LU2)识别为主计算机3000的卷3210(图中DEV1以及DEV2)。此外,也可以将主计算机3000具有的盘3200识别为卷3220(图中DEV3)。主计算机3000管理由这样的卷3210、卷3220构成的池3230,将与池3230对应的VVOL3240提供给业务程序3510。此外,在池3230中除了卷之外,还可以包含存储器3500的空闲区域等。在这样的池3230中也能够应用本发明。
图37表示实施例6的主计算机3000内的存储器3500中存储的程序以及信息。
构成管理程序3520与在实施例1中管理计算机2000具有的构成管理程序2510相同,构成信息取得程序3530与在实施例1中管理计算机2000具有的构成信息取得程序2520相同。
此外,段迁移程序3540与实施例中的存储装置1000具有的段迁移程序1540相同,池管理程序3550与实施例1中的存储装置1000具有的池管理程序相同。
段IOPS解析程序3560与实施例5所述的存储装置1000具有的段IOPS解析程序1610相同,容量预测程序3570与在实施例5中所述的存储装置1000具有的容量预测程序1620相同,是能够进行实施例1或者实施例2中所述的任意一个预测方法的程序。
资源管理表3610是用于管理主计算机3000识别的卷的表。
图38表示资源管理表3610的例子。
资源管理表3610具有与主计算机3000识别的卷有关的信息。具体来说,表3610针对主计算机3000识别的每个卷,具有下述的信息:
*作为卷的ID的VOL ID3611、
*表示卷的类别的资源类别3612、
*表示卷的实体存在的场所的实际状态VOL ID 3613、
*卷所属的阶层的ID即阶层ID3614、
*表示卷的存储容量的容量3615。
资源类别3612、阶层ID3614、容量3615与实施例1等的含义相同。例如,作为主机识别的卷,能够判断主机识别VOL ID:DEV1为本地即在主计算机3000内存在的卷。此外,能够判别主识别VOLID:DEV2为实体是在存储装置1内存在的LU1。此外,阶层ID3612除了资源类别3612,还可以包含设定通过是否存在于主计算机内而发生的延长时间等,期待能够进一步提高预测精度。具体来说,例如,即使基于卷的物理存储设备是SAS,也可根据延迟时间长或短,来划分为两个以上的阶层。
段管理表3620与实施例1中存储装置1000具有的段管理表1560相同,虚拟卷管理表3630与虚拟卷管理表1570相同,迁移策略表3640与迁移策略表1580相同,IOPS性能评价表3650与IOPS性能评价表1630相同。此外,段IOPS履历表3660与实施例5中所述的存储装置1000具有的段IOPS履历表1640相同,池容量管理表3670与池容量管理表1650相同。
<处理说明>
实施例6的各程序的处理的流程与到实施例5为止所述的各处理的流程相同。但是,表示容量预测程序3570进行的预测的结果的GUI与至此的GUI不同。图39表示该GUI的例子。
在图39中,关于GUI5800,表5610与至此为止的GUI5200等不同。除了增设量的显示,在本实施例中,还需要显示增设目的地5611。例如,在需要增设高性能的卷的情况下,作为增设目的地5611,可以显示“本地”。这表示在主计算机3000中需要增设。另一方面,在即使增设低性能的卷也无妨的情况下等,作为增设目的地5611,可以显示“任意”。在进行增设目的地5611的判断时,可以使用一下的方法来决定:将针对每个增设目的地候补考虑通信延迟的假想响应时间2574保存在IOPS性能评价表3650中的方法、进行在阶层ID中考虑通信延迟的设定的方法。
<变化>
将与存储装置1000不同的别的存储装置具备的卷取入到存储装置1000内,存储装置1000能够将别的存储装置的卷作为自己的卷来处理(以下称为外部连接功能)。在图35的存储装置1中,通过使存储装置1具有外部连接功能,能够将存储装置2具有的卷作为存储装置1的卷来处理。实施例6的主计算机进行的池管理技术以及容量预测技术方法可以应用到具备所述外部连接功能的存储装置1中。由此,在存储装置1中,能够对由多个存储装置的卷构成的存储装置1的池提供容量预测技术。此外,存储装置1识别的卷,不仅包含别的存储装置,还可以包含主计算机保存的盘3200或者高速缓冲存储器区域。
至此,说明了本发明的若干的实施例,但是,本发明并不限于这些实施例,在不脱离其宗旨的范围内可以进行各种变更。
例如,存储装置1000、管理计算机2000以及主计算机3000的结构可以不是图1所示的结构。
此外,关于用于输入初始值的GUI或用于通知所预测的增设量的GUI,输入工具不限于图示的输入工具,可以采用其它种类的工具。
符号说明
1000存储装置;2000管理计算机;3000主计算机

Claims (14)

1.一种管理系统,其是与主机装置连接的存储装置的管理系统,该管理系统的特征在于,
所述存储装置具有:
作为由多个虚拟区域构成的虚拟的逻辑卷的虚拟卷;
由性能不同的多个实际区域组构成的池;以及
对来自所述主机装置的访问指令进行应答,对根据该访问指令确定的虚拟区域被分配的实际区域进行访问的控制器,
所述控制器管理池状况信息,该池状况信息是表示对哪个虚拟区域分配了哪个实际区域和与虚拟区域有关的访问负荷的信息,
所述管理系统具有:
存储资源;以及
与所述存储资源连接的处理器,
所述存储资源存储容量管理信息,该容量管理信息是表示各实际区域组的目前的存储容量的信息,
所述处理器
(A)根据从目前到过去的多个时刻的所述池状况信息和一个以上的访问负荷阈值来预测将来时刻的每个所述实际区域组的使用容量,
(B)针对每个所述实际区域组计算作为所预测的使用容量和所述容量管理信息表示的目前的存储容量的差分的增设量/减设量,
(C)基于所述(B)的计算结果执行处理。
2.根据权利要求1所述的管理系统,其特征在于,
所述多个实际区域组与把所述一个以上的访问负荷阈值中的各访问负荷阈值作为上限或下限的多个访问负荷范围对应,
所述处理器,在所述(A)中,
(a01)根据所述多个时刻的所述池状况信息来预测将来时刻的访问负荷和实际区域数的分布,
(a02)确定根据所述多个访问负荷范围设想的、与所述池有关的第一种值满足预定条件的一个以上的访问负荷阈值的一个以上的组合,
(a03)确定所述一个以上的组合中与所述池有关的第二种值为最优的值的组合,
(a04)根据从所述(a03)中确定的组合中唯一决定的所述多个访问负荷范围和在所述(a01)中确定的分布来预测所述将来时刻的每个实际区域组的使用容量;
所述第一种值是所述池的性能和作为在所述池中增设存储容量时的成本的增设成本中的一方,
所述第二种值是所述池的性能和所述池的增设成本中的另一方。
3.根据权利要求2所述的管理系统,其特征在于,
所述处理器,在所述(C)中,显示下述的(c01)或(c02),
(c01)在所述(B)中计算出的每个实际区域组的增设量/减设量,
(c02)所述池的性能及/或所述池的增设成本。
4.根据权利要求3所述的管理系统,其特征在于,
在所述(C)的显示中,按照所述池的性能或所述池的增设成本的顺序排列每个实际区域组的增设量/减设量的组合。
5.根据权利要求2所述的管理系统,其特征在于,
所述池的设想的性能根据与所述多个实际区域组对应的多个访问期待时间和所述分布来计算,
所述访问期待时间是所期待的对实际区域进行访问所花费的时间长。
6.根据权利要求2所述的管理系统,其特征在于,
所述成本是费用或消耗电力。
7.根据权利要求1所述的管理系统,其特征在于,
所述处理器,在所述(A)中,
(a11)在各时刻,根据所述池状况信息和一个以上的访问负荷阈值,针对各实际区域组计算作为虚拟区域被分配的实际区域的总存储容量的使用容量,将表示时刻的信息和表示每个实际区域组的使用容量的信息写入所述存储资源,由此,将表示所述多个时刻的每个实际区域组的使用容量的履历信息积蓄在所述存储资源中,
(a12)根据所述履历信息来预测将来时刻的每个实际区域组的使用容量。
8.根据权利要求7所述的管理系统,其特征在于,
所述一个以上的访问负荷阈值是与所述多个实际区域组对应的多个访问负荷范围中的至少一个访问负荷范围的上限以及/或者下限,
所述多个访问负荷范围中的一个访问负荷范围与各实际区域组对应,
所述控制器将第一实际区域组中的第一实际区域内的数据迁移到与所述第一实际区域的访问负荷所属的访问负荷范围对应的第二实际区域组中的第二实际区域,对被分配了所述第一实际区域的虚拟区域,分配所述第二实际区域来代替所述第一实际区域。
9.根据权利要求1所述的管理系统,其特征在于,
所述处理器仅在发生了预定的事件时,进行所述将来时刻的每个实际区域组的使用容量的预测。
10.根据权利要求9所述的管理系统,其特征在于,
所述预定的事件是所述池的使用容量超过了预定的阈值。
11.根据权利要求9所述的管理系统,其特征在于,
所述预定的事件是所述池的性能低于目标性能。
12.根据权利要求1所述的管理系统,其特征在于,
所述(C)的处理对所述池实施存储容量的增设及/或减设,
所述处理器在所述(C)的处理后,
(D)判断基于所述池状况信息计算出的所述池的性能是否低于目标性能,
(E)在所述(D)的判断结果为是的情况下,根据所述池的性能和所述目标性能的差分的大小来显示用于表示所述池的性能低于所述目标性能的原因的信息。
13.根据权利要求1所述的管理系统,其特征在于,
所述处理器在所述(C)中,进行以下的(c11)或(c12),
(c11)在对于某个实际区域组计算出增设量的情况下,自动地增设总存储容量为所述增设量以上的、性能与所述某个实际区域组相同的一个以上的实际区域,
(c12)在对于某个实际区域组计算出减设量的情况下,自动地从所述某个实际区域组减设总存储容量为所述减设量以下的一个以上的实际区域。
14.一种与主机装置连接的存储装置的管理方法,其特征在于,
所述存储装置具有:
作为由多个虚拟区域构成的虚拟的逻辑卷的虚拟卷;
由性能不同的多个实际区域组构成的池;以及
对来自所述主机装置的访问指令进行应答,对根据该访问指令确定的虚拟区域被分配的实际区域进行访问的控制器,
所述控制器管理池状况信息,该池状况信息是表示对哪个虚拟区域分配了哪个实际区域和与虚拟区域有关的访问负荷的信息,
所述管理方法:
(A)根据从目前到过去的多个时刻的所述池状况信息和一个以上的访问负荷阈值来预测将来时刻的每个实际区域组的使用容量,
(B)针对每个实际区域组计算作为所预测的使用容量和目前的存储容量的差分的增设量/减设量,
(C)基于所述(B)的计算结果执行处理。
CN201080054277.2A 2010-01-28 2010-01-28 计算增设/减设的存储容量的管理系统 Active CN102640120B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2010/000516 WO2011092739A1 (ja) 2010-01-28 2010-01-28 増設/減設する記憶容量を計算する管理システム

Publications (2)

Publication Number Publication Date
CN102640120A CN102640120A (zh) 2012-08-15
CN102640120B true CN102640120B (zh) 2014-12-10

Family

ID=44318759

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201080054277.2A Active CN102640120B (zh) 2010-01-28 2010-01-28 计算增设/减设的存储容量的管理系统

Country Status (6)

Country Link
US (2) US8918585B2 (zh)
EP (1) EP2378427B1 (zh)
JP (1) JP5236086B2 (zh)
CN (1) CN102640120B (zh)
IN (1) IN2012DN03826A (zh)
WO (1) WO2011092739A1 (zh)

Families Citing this family (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8768883B2 (en) * 2010-03-25 2014-07-01 Hitachi, Ltd. Storage apparatus and control method of the same
JP5303066B2 (ja) * 2010-04-27 2013-10-02 株式会社日立製作所 プールに関連付けられる仮想ボリュームの総容量を制限する方法及びストレージ装置
WO2012004827A1 (en) * 2010-07-05 2012-01-12 Hitachi, Ltd. Storage subsystem and its control method
US20120131196A1 (en) * 2010-11-18 2012-05-24 Hitachi, Ltd. Computer system management apparatus and management method
US8782340B2 (en) 2010-12-06 2014-07-15 Xiotech Corporation Hot sheet upgrade facility
US9870296B1 (en) * 2011-06-17 2018-01-16 Mark A. Parenti Evaluating system performance
US20120331410A1 (en) * 2011-06-27 2012-12-27 Fujitsu Technology Solutions Intellectual Property Gmbh Methods and systems for designing it services
WO2013019152A1 (en) * 2011-08-01 2013-02-07 Telefonaktiebolaget L M Ericsson (Publ) Retained data handling at differentiated response times
JP5793196B2 (ja) 2011-09-13 2015-10-14 株式会社日立製作所 仮想ボリュームに割り当てられた要求性能に基づく制御を行うストレージシステムの管理システム及び管理方法
WO2013042174A1 (en) * 2011-09-22 2013-03-28 Hitachi, Ltd. Computer system and storage management method
US8661431B2 (en) * 2012-01-03 2014-02-25 International Business Machines Corporation Accurately estimating install time
JP5668151B2 (ja) * 2012-01-05 2015-02-12 株式会社日立製作所 計算機システムの管理装置及び管理方法
JP5849794B2 (ja) * 2012-03-16 2016-02-03 富士通株式会社 ストレージ制御装置、ストレージ制御方法、及びストレージ制御プログラム
US8904144B1 (en) * 2012-05-24 2014-12-02 Netapp, Inc. Methods and systems for determining at risk index for storage capacity
WO2014002162A1 (ja) * 2012-06-25 2014-01-03 富士通株式会社 ストレージ制御装置、情報処理装置、ストレージ制御プログラム、及びストレージ制御方法
CN102841931A (zh) * 2012-08-03 2012-12-26 中兴通讯股份有限公司 分布式文件系统的存储方法及装置
CN103678139B (zh) * 2012-08-31 2017-09-29 国际商业机器公司 进行瘦供给的方法和装置
CN102915275A (zh) * 2012-09-13 2013-02-06 曙光信息产业(北京)有限公司 一种自动精简配置系统
US9760294B2 (en) 2012-11-07 2017-09-12 Hitachi, Ltd. Computer system, storage management computer, and storage management method
CN103091707B (zh) * 2012-12-31 2016-06-22 中国石油集团川庆钻探工程有限公司地球物理勘探公司 地震数据分级存储装置及方法
US9608933B2 (en) * 2013-01-24 2017-03-28 Hitachi, Ltd. Method and system for managing cloud computing environment
WO2014115320A1 (ja) 2013-01-25 2014-07-31 株式会社日立製作所 ストレージシステム及びデータ管理方法
WO2014128910A1 (ja) * 2013-02-22 2014-08-28 株式会社日立製作所 ストレージシステム、管理計算機、及び仮想論理ボリューム管理方法
US9003087B2 (en) * 2013-03-18 2015-04-07 Hitachi, Ltd. Compound storage system and storage control method
US9984000B2 (en) 2013-09-06 2018-05-29 Lyve Minds, Inc. Electronic device data distribution
CN104750538B (zh) * 2013-12-27 2020-03-03 伊姆西Ip控股有限责任公司 用于为目标应用提供虚拟存储池的方法和系统
US9584599B2 (en) * 2014-01-14 2017-02-28 Netapp, Inc. Method and system for presenting storage in a cloud computing environment
US9740436B2 (en) * 2014-11-14 2017-08-22 International Business Machines Corporation Elastic file system management in storage cloud environments
EP3021251A1 (en) * 2014-11-14 2016-05-18 Hewlett-Packard Development Company, L.P. Dynamically adjusting a model for a security operations center
JP6394313B2 (ja) 2014-11-19 2018-09-26 富士通株式会社 ストレージ管理装置、ストレージ管理方法及びストレージ管理プログラム
JP6578694B2 (ja) * 2015-03-25 2019-09-25 日本電気株式会社 情報処理装置、方法及びプログラム
JP6558090B2 (ja) 2015-06-15 2019-08-14 富士通株式会社 ストレージ管理装置、ストレージ管理方法及びストレージ管理プログラム
JP6554990B2 (ja) * 2015-08-11 2019-08-07 富士通株式会社 ストレージ制御装置およびストレージ制御プログラム
CN105094708B (zh) * 2015-08-25 2018-06-12 北京百度网讯科技有限公司 一种磁盘容量的预测方法及装置
WO2017046902A1 (ja) * 2015-09-16 2017-03-23 株式会社日立製作所 管理システム、管理計算機、及び、ストレージ装置の管理方法
US10628088B2 (en) * 2015-12-25 2020-04-21 Hitachi, Ltd. Computer system
CN108701002B (zh) * 2016-02-29 2021-10-29 株式会社日立制作所 虚拟存储系统
US10552076B2 (en) 2016-12-13 2020-02-04 International Business Machines Corporation Identification of volumes for thin provisioning
US10324765B2 (en) 2017-01-20 2019-06-18 Microsoft Technology Licensing, Llc Predicting capacity of shared virtual machine resources
CN107122131B (zh) * 2017-04-18 2020-08-14 杭州宏杉科技股份有限公司 自动精简配置的方法及装置
JP6684850B2 (ja) * 2018-05-16 2020-04-22 株式会社日立製作所 分散台帳システム、分散台帳サブシステム、および、分散台帳ノード
KR101932523B1 (ko) 2018-07-16 2018-12-26 서강대학교 산학협력단 가상 머신에 할당된 가상 gpu 메모리의 슬롯을 동적으로 증감시키는 방법 및 이를 구현하는 컴퓨팅 장치
US11249852B2 (en) 2018-07-31 2022-02-15 Portwonx, Inc. Efficient transfer of copy-on-write snapshots
US11354060B2 (en) 2018-09-11 2022-06-07 Portworx, Inc. Application snapshot for highly available and distributed volumes
JP6957431B2 (ja) * 2018-09-27 2021-11-02 株式会社日立製作所 Hci環境でのvm/コンテナおよびボリューム配置決定方法及びストレージシステム
US11494128B1 (en) 2020-01-28 2022-11-08 Pure Storage, Inc. Access control of resources in a cloud-native storage system
US11392304B2 (en) 2020-05-29 2022-07-19 Seagate Technology Llc Data storage device with adaptive object storage capabilities
US11531467B1 (en) 2021-01-29 2022-12-20 Pure Storage, Inc. Controlling public access of resources in a secure distributed storage system
US11733897B1 (en) 2021-02-25 2023-08-22 Pure Storage, Inc. Dynamic volume storage adjustment
US11520516B1 (en) 2021-02-25 2022-12-06 Pure Storage, Inc. Optimizing performance for synchronous workloads
US11726684B1 (en) 2021-02-26 2023-08-15 Pure Storage, Inc. Cluster rebalance using user defined rules
US20230031304A1 (en) * 2021-07-22 2023-02-02 Vmware, Inc. Optimized memory tiering
JP2023034491A (ja) * 2021-08-31 2023-03-13 株式会社日立製作所 ストレージシステム及びストレージシステムにおけるQoS管理方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101317154A (zh) * 2005-12-24 2008-12-03 英特尔公司 用于高效地布置可移植可执行(pe)映像的方法与设备

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4083997B2 (ja) 2001-04-16 2008-04-30 株式会社日立製作所 レンタルストレージのサービス方法、および、レンタルストレージシステム
JP4175788B2 (ja) 2001-07-05 2008-11-05 株式会社日立製作所 ボリューム制御装置
JP2003050724A (ja) * 2001-08-07 2003-02-21 Hitachi Ltd ストレージの運用方法およびこれに用いるストレージ
JP2003303054A (ja) * 2002-04-08 2003-10-24 Hitachi Ltd 計算機システム、記憶装置及び記憶装置運用監視方法
JP4418286B2 (ja) * 2003-07-14 2010-02-17 富士通株式会社 分散型ストレージシステム
US7159072B2 (en) * 2005-03-24 2007-01-02 Hitachi, Ltd. Method and apparatus for monitoring the quantity of differential data in a storage system
JP2007066259A (ja) 2005-09-02 2007-03-15 Hitachi Ltd 計算機システムとストレージシステム並びにボリューム容量拡張方法
JP4806556B2 (ja) 2005-10-04 2011-11-02 株式会社日立製作所 ストレージシステム及び構成変更方法
JP4921054B2 (ja) * 2006-07-07 2012-04-18 株式会社日立製作所 負荷分散制御システム及び負荷分散制御方法
GB0614515D0 (en) * 2006-07-21 2006-08-30 Ibm An apparatus for managing power-consumption
US9052826B2 (en) * 2006-07-28 2015-06-09 Condusiv Technologies Corporation Selecting storage locations for storing data based on storage location attributes and data usage statistics
JP4949791B2 (ja) * 2006-09-29 2012-06-13 株式会社日立製作所 ボリューム選択方法及び情報処理システム
JP2008097502A (ja) 2006-10-16 2008-04-24 Hitachi Ltd 容量監視方法及び計算機システム
US8935302B2 (en) * 2006-12-06 2015-01-13 Intelligent Intellectual Property Holdings 2 Llc Apparatus, system, and method for data block usage information synchronization for a non-volatile storage volume
US20090100214A1 (en) * 2007-10-12 2009-04-16 Bei-Chuan Chen Management Platform For Extending Lifespan Of Memory In Storage Devices
US8423739B2 (en) * 2008-02-06 2013-04-16 International Business Machines Corporation Apparatus, system, and method for relocating logical array hot spots
US8117235B1 (en) * 2008-09-29 2012-02-14 Emc Corporation Techniques for binding resources for use by a consumer tier
JP2010122814A (ja) * 2008-11-18 2010-06-03 Hitachi Ltd ストレージシステム及びストレージシステムの運用方法
JP5228988B2 (ja) * 2009-02-23 2013-07-03 富士通株式会社 割当制御プログラム及び割当制御装置
US8429151B2 (en) * 2010-11-22 2013-04-23 Ianywhere Solutions, Inc. Highly adaptable query optimizer search space generation process
WO2012164718A1 (ja) * 2011-06-02 2012-12-06 株式会社日立製作所 ストレージ管理システム、計算機システム、及びストレージ管理方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101317154A (zh) * 2005-12-24 2008-12-03 英特尔公司 用于高效地布置可移植可执行(pe)映像的方法与设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JP特开2002-312699A 2002.10.25 *

Also Published As

Publication number Publication date
EP2378427A1 (en) 2011-10-19
EP2378427B1 (en) 2018-04-11
JP5236086B2 (ja) 2013-07-17
IN2012DN03826A (zh) 2015-08-28
US9182926B2 (en) 2015-11-10
US20150074349A1 (en) 2015-03-12
CN102640120A (zh) 2012-08-15
JPWO2011092739A1 (ja) 2013-05-23
US8918585B2 (en) 2014-12-23
WO2011092739A1 (ja) 2011-08-04
US20110252214A1 (en) 2011-10-13
EP2378427A4 (en) 2013-07-10

Similar Documents

Publication Publication Date Title
CN102640120B (zh) 计算增设/减设的存储容量的管理系统
CN110245093B (zh) 固态存储驱动器阵列中的工作负荷自适应超额配置
US10552046B2 (en) Automatic tiering of storage using dynamic grouping
US9703664B1 (en) Self adaptive workload classification and forecasting in multi-tiered storage system using ARIMA time series modeling
US10254970B1 (en) System, method and computer readable medium for obtaining consistent read performance for a plurality of flash drives or raid groups using workload and capacity limits
US9940033B1 (en) Method, system and computer readable medium for controlling performance of storage pools
US9753987B1 (en) Identifying groups of similar data portions
US9785353B1 (en) Techniques for automated evaluation and movement of data between storage tiers for thin devices
US8838931B1 (en) Techniques for automated discovery and performing storage optimizations on a component external to a data storage system
US9898224B1 (en) Automatic adjustment of capacity usage by data storage optimizer for data migration
US9047017B1 (en) Techniques for automated evaluation and movement of data between storage tiers
US10671431B1 (en) Extent group workload forecasts
US9665288B1 (en) Techniques for determining workload skew
US9753668B2 (en) Method and apparatus to manage tier information
US10338825B2 (en) Managing SSD wear rate in hybrid storage arrays
US11157209B2 (en) Storage allocation techniques using logical region I/O access information and temporal trend prediction
US11093152B2 (en) Automated storage tiering by access pattern detection and temporal trend prediction
US20080077735A1 (en) Cache disk storage upgrade
US9946465B1 (en) Adaptive learning techniques for determining expected service levels
US20160004459A1 (en) Storage system and storage control method
CN110058960A (zh) 用于管理存储系统的方法、设备和计算机程序产品
US10394463B2 (en) Managing storage devices having a lifetime of a finite number of operations
CN109726145B (zh) 一种数据存储空间的分配方法、装置及电子设备
US11275511B2 (en) Storage apparatus and data processing method for storage apparatus
CN115934007B (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