WO2018167890A1 - Système informatique et procédé de gestion - Google Patents

Système informatique et procédé de gestion Download PDF

Info

Publication number
WO2018167890A1
WO2018167890A1 PCT/JP2017/010501 JP2017010501W WO2018167890A1 WO 2018167890 A1 WO2018167890 A1 WO 2018167890A1 JP 2017010501 W JP2017010501 W JP 2017010501W WO 2018167890 A1 WO2018167890 A1 WO 2018167890A1
Authority
WO
WIPO (PCT)
Prior art keywords
total
capacity
rate
amount
write
Prior art date
Application number
PCT/JP2017/010501
Other languages
English (en)
Japanese (ja)
Inventor
英通 小関
彬史 鈴木
昌弘 鶴谷
Original Assignee
株式会社日立製作所
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 株式会社日立製作所 filed Critical 株式会社日立製作所
Priority to PCT/JP2017/010501 priority Critical patent/WO2018167890A1/fr
Publication of WO2018167890A1 publication Critical patent/WO2018167890A1/fr

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/16Protection against loss of memory contents

Definitions

  • the present invention generally relates to managing a plurality of non-volatile memory devices.
  • a storage apparatus has a plurality of storage devices that store data and a storage controller that controls the plurality of storage devices.
  • the storage controller provides a large capacity data storage space to the computer.
  • HDD Hard Disk Drive
  • HDD Hard Disk Drive
  • the data stored in the storage device increases as time elapses from the start of use, and in some cases, a new HDD must be added to the storage device.
  • Patent Document 1 stores a history of physical disk expansion time and the number of expansions included in the storage device, and the number of physical disks added is determined from the history and the scheduled use period of the storage device.
  • a technique for calculating and outputting is disclosed.
  • nonvolatile memory device for example, SSD: Solid State Drive
  • FM flash memory
  • the SSD is generally mounted with a NAND type FM, typically a plurality of FM chips.
  • Each FM chip has a plurality of blocks (physical blocks), and each block has a plurality of pages (physical pages).
  • the SSD reads and writes data in units of pages.
  • Each FM chip is a write-once type. That is, when the logical area to which the page is allocated is the write destination, a new empty page is allocated to the write destination logical area instead of the allocated page, and data is written to the newly allocated page. For each logical area, the data written to the recently allocated page (that is, the latest data) is “valid data”, and the page to which valid data is written is “valid page”. The data stored in the previous page is “invalid data”, and the page in which invalid data is written is “invalid page”.
  • a page that can store new data without being a valid page or an invalid page is an “empty page”. Since each FM chip is a write-once type, the data stored in the page cannot be overwritten in principle. Therefore, in order to store new data, it is necessary to erase the data from the page once in the reclamation process. Data is erased in units of blocks. In the following description, erasing data from a block may be hereinafter referred to as “erasing a block”.
  • the “reclamation process” is a process for generating a reusable block by erasing each of one or more blocks.
  • valid data in the block to be erased must be moved to another block.
  • the SSD requires one or more spare blocks (spare blocks).
  • the total capacity of all spare blocks is called “reserve capacity”.
  • the capacity that can be used by the user for storing data (referred to as “user capacity”) is determined from the physical capacity of the SSD (the total capacity of all blocks of the SSD) to the spare capacity. Will be subtracted.
  • the ratio of the reserve capacity to the user capacity in the SSD is referred to as “over-provisioning rate (OP rate)”. By reducing the OP rate, the user capacity increases, and by increasing the OP rate, the user capacity decreases.
  • the logical capacity of the SSD is based on the user capacity of the SSD.
  • the SSD having the FM chip Since the FM chip has a finite number of erasures due to its configuration, there is an upper limit (that is, life) of the total write amount (total amount of data to be written). Therefore, the SSD having the FM chip has a lifetime.
  • the SSD OP rate affects SSD life and logical capacity (user capacity). For example, an SSD with a large OP rate has a large reserve capacity, so the number of data movements that occur during reclamation processing can be suppressed, and the consumption of life due to data movement is reduced. For this reason, there is a merit that the rewrite durability is improved (long life), but since the reserve capacity is large, there is a demerit that the user capacity is small. On the other hand, since the reserve capacity is small in an SSD with a small OP rate, the number of times of data movement during reclamation processing increases, and the life consumption due to data movement increases. For this reason, there is a demerit that the rewriting durability is reduced (short life), but there is an advantage that the user capacity can be increased. That is, the user capacity and the SSD lifetime have a trade-off relationship, and the value varies depending on the OP rate.
  • Patent Document 2 discloses a function that allows the user to change the SSD OP rate in accordance with the operation mode.
  • the function for changing the OP rate is hereinafter referred to as “variable OP function” for convenience.
  • the techniques disclosed in Patent Documents 3 and 4 are also known.
  • JP 2016-009433 A US Patent Publication No. 2011/0099320 International Publication No. 2012/168962 Pamphlet US Patent Application Publication No. 2008/0250220
  • the SSD is provided with a variable OP function
  • the user can obtain a degree of freedom in configuration setting for the SSD, so that flexible operation in terms of capacity and life is possible.
  • the number of options for selecting the OP rate has increased, it becomes difficult for the user to determine what the OP rate value should be.
  • the user has to determine the OP rate and the number of SSDs to be added, but this determination is difficult for the user. For example, if the optimum OP rate can be selected, it can be expected that the additional number of SSDs will be the optimum number. On the other hand, if the OP rate is selected incorrectly, the additional number of SSDs may exceed the required number.
  • Such a problem may also occur for non-volatile memory devices other than SSDs.
  • the computer system has at least one of a target additional logical capacity based on the required total logical capacity and an upper limit of the current total logical capacity, and a target additional light total quantity based on the required total light total amount and the upper limit of the current total total light capacity.
  • One target additional amount is calculated.
  • the total logical capacity is the total logical capacity provided by all the nonvolatile memory devices.
  • the total write total amount is the sum of the total write amounts corresponding to all the nonvolatile memory devices. For each nonvolatile memory device, the total write amount is the total amount of data written to the nonvolatile memory of the nonvolatile memory device.
  • the computer system has the following relationship (b1) and (b2): (B1) Target additional amount, (B2) The number of additional nonvolatile memory devices and the OP rate of the added nonvolatile memory devices, Displays additional proposal information that is information including information about
  • the user can easily grasp the relationship between the target added amount, the added number of units, and the OP rate.
  • FIG. 10 is a schematic diagram illustrating an outline of calculating at least one of a total additional logical usage capacity and a total additional write total amount based on a transition of capacity usage in Example 1. It is a schematic diagram which shows the outline
  • FIG. 10 is a schematic diagram illustrating a relationship between a logical capacity and a physical capacity of an SSD according to a second embodiment. It is a schematic diagram which shows an example of the relationship between a SLC ratio, OP rate, and a capacity
  • FIG. 10 is a configuration diagram of a write total amount expected value calculation table according to Embodiment 2.
  • FIG. 12 is a part of a flowchart of determination of necessity for addition according to Embodiment 2.
  • FIG. 12 is a part of a flowchart of additional SSD determination according to the second embodiment.
  • the “interface part” includes one or more interfaces.
  • the one or more interfaces may be one or more similar interface devices (for example, one or more NIC (Network Interface Card)) or two or more different interface devices (for example, NIC and HBA (Host Bus Adapter)). There may be.
  • NIC Network Interface Card
  • HBA Home Bus Adapter
  • the “storage unit” includes one or more memories.
  • the at least one memory for the storage unit may be a volatile memory.
  • the storage unit is mainly used during processing by the processor unit.
  • the “processor section” includes one or more processors.
  • the at least one processor is typically a microprocessor such as a CPU (Central Processing Unit).
  • Each of the one or more processors may be a single core or a multi-core.
  • the processor unit may include a hardware circuit that performs part or all of the processing.
  • the processing executed by the processor unit can also be called processing executed by the storage controller or the management system.
  • each table may be described using an expression such as “aaa table”, but the information may be expressed in any data structure. That is, in order to indicate that the information does not depend on the data structure, the “aaa table” can be referred to as “aaa information”.
  • the configuration of each table is an example, and one table may be divided into two or more tables, or all or part of the two or more tables may be a single table. Good.
  • the “computer system” includes at least one of a storage system and a management system.
  • the storage system includes one or more storage devices.
  • the storage device is a device that stores data.
  • the storage device may execute a virtual computer (for example, VM (Virtual Machine)) or may execute SDx (Software-Defined anything).
  • SDx for example, SDS (Software Defined Storage) (an example of a virtual storage device) or SDDC (Software-defined Datacenter) can be adopted.
  • RAID is an abbreviation for Redundant “Array” of “Independent” (or “Inexpensive)” Disks.
  • the RAID group is composed of a plurality of PDEVs (typically the same kind of PDEVs), and stores data according to the RAID level associated with the RAID group.
  • the RAID group may be referred to as a parity group.
  • the parity group may be, for example, a RAID group that stores parity.
  • Example 1 will be described.
  • the storage device has a plurality (or 1) of SSDs (and a storage controller connected to the plurality of SSDs).
  • the storage controller manages the total use logical capacity and the total use write total amount as the capacity use results at each time of the storage apparatus.
  • the “total used logical capacity” is a total of a plurality of used logical capacities respectively corresponding to a plurality of SSDs included in the storage apparatus.
  • the “used logical capacity” is the used logical capacity (total of the address space portion to which data is written) of the logical capacity (logical address space) provided by the SSD.
  • the horizontal axis in FIG. 1 indicates the total used logical capacity.
  • “a plurality of SSDs” is an example of all SSDs based on a predetermined logical space managed by the storage apparatus.
  • An example of the “predetermined logical space” is a pool described later. All SSDs may be all SSDs in the storage apparatus.
  • the “total amount of write used” is the total of a plurality of actual write total amounts respectively corresponding to a plurality of SSDs included in the storage device. For each SSD, the “total amount of write” is the total amount of data written to the SSD.
  • the storage controller estimates the capacity usage record at a future time (for example, the fifth year) based on the transition of the capacity usage record (for example, the first to third year capacity use record 3000A to 3000C).
  • the estimated result 2005 is calculated. Specifically, for example, the storage controller performs linear approximation or the like to specify the slope of the graph of the capacity usage record 3000, and estimates the capacity use record after five years (calculates the estimated record 2005).
  • the total used logical capacity as the estimated performance 2005 is referred to as “estimated total logical capacity”
  • the total light total amount as the estimated performance 2005 is referred to as “estimated total light total amount”.
  • the estimated total logical capacity is an example of a necessary total logical capacity.
  • the total light total amount is an example of a necessary total light total amount.
  • the storage controller grasps the current configuration 2000 of the storage device, specifically, the total logical capacity upper limit and the total write total amount upper limit.
  • the “overall logical capacity upper limit” corresponds to the total of a plurality of logical capacities (for example, an effective capacity (usable part of the logical capacity) described later) respectively corresponding to a plurality of SSDs included in the storage apparatus.
  • the “total write total amount upper limit” corresponds to the sum of a plurality of write total amount upper limits respectively corresponding to the plurality of SSDs.
  • the “total write amount upper limit” corresponds to an expected write total limit value 518 (617), which will be described later.
  • the storage controller determines whether the estimated performance 2005 exceeds the current configuration 2000. Specifically, the storage controller determines whether at least one of the following (a) and (b) is established.
  • the storage controller calculates the target additional amount.
  • the “target additional amount” is a target value for the additional amount.
  • the “additional amount” is at least one of the additional write total amount and the additional logical capacity.
  • the storage controller calculates a target additional amount that is at least one of the following (x) and (y).
  • (x) is calculated.
  • (y) is calculated.
  • (X) target additional light total amount 3003 estimated total light total amount ⁇ total total light amount upper limit
  • target additional logical capacity 3004 estimated total logical capacity ⁇ total logical capacity upper limit
  • the target additional light total amount 3003 is typically the difference between the estimated total light total amount and the total light total amount upper limit, but other values based on the estimated total light total amount and the total light total amount upper limit (for example, It may be a value larger than the difference by a predetermined value).
  • the target additional logical capacity 3004 is typically the difference between the estimated overall logical capacity and the overall logical capacity upper limit, but other values (for example, from the difference) based on the estimated overall logical capacity and the overall logical capacity upper limit. It may be a value that is larger by a predetermined value).
  • the storage controller displays additional proposal information, which is information according to the relationship between the calculated target additional amount, the OP rate of the SSD, and the added number (for example, displayed on a management system connected to the storage device).
  • the additional proposal information may include information indicating at least one of the following.
  • the optimal OP rate and optimal additional number determined based on the target additional amount.
  • the “optimal OP rate” is an OP rate corresponding to the minimum additional number of additional units that can realize an additional amount that is equal to or greater than the target additional amount.
  • the “optimum additional number” is the minimum additional number.
  • the storage controller displays all or part of the information shown in FIG. 2 as additional proposal information.
  • the horizontal axis indicates the additional logical capacity
  • the vertical axis indicates the additional write total amount.
  • Solid lines 2001H, 2001M, and 2001L have capacity characteristics corresponding to high OP rate (for example, 50% or more), medium OP rate (for example, greater than 20% and less than 50%), and low OP rate (for example, 20% or less), respectively (additional) The relationship between the logical capacity and the total amount of additional writes).
  • high OP rate for example, 50% or more
  • medium OP rate for example, greater than 20% and less than 50%
  • low OP rate for example, 20% or less
  • the expected value of the capacity characteristic (slope of the solid line 2001) at each OP rate is held by, for example, the SSD, and the storage controller can acquire and use the information from the SSD as necessary.
  • the stage of OP rate may be smaller or larger than the three stages of high, medium and low.
  • N 4, 8, 12 or 20
  • a broken line corresponding to the additional number N is obtained.
  • a 3D + 1P RAID group (a RAID group including four SSDs) is an additional minimum unit.
  • Each broken line follows the predicted logical capacity (for example, an expected value of effective capacity described later) and the expected total write amount obtained based on the physical capacity and the OP rate (and the expected value of the compression rate) for each SSD.
  • the storage controller Based on the target additional amount 3005 and the additional amount per additional SSD unit for each OP rate (for example, the predicted value (expected value) of each of the logical capacity and the total write amount), the storage controller Specify the rate and the optimal additional number. Specifically, for example, the storage controller corresponds to the additional amount 2007A having the shortest distance from the target additional amount 3005 among the additional amounts 2007A to 2007C exceeding both the target additional write total amount 3003 and the target additional logical capacity 3004.
  • the OP rate “medium” and the additional number “8” are specified as the optimal OP rate and the optimal additional number.
  • the additional proposal information displayed by the storage controller may include information indicating the identified optimum configuration (for example, a message proposing to add eight medium OP rate SSDs).
  • FIG. 3 is a configuration diagram of the information system according to the first embodiment.
  • the computer system 10000 includes a storage device 1 (an example of a storage system) and a management system 5.
  • a storage device 1 an example of a storage system
  • a management system 5 One or more host computers (hereinafter referred to as hosts) 2 are connected to the storage apparatus 1 via a SAN (Storage Area Network) 3.
  • a management system 5 is connected to the storage apparatus 1 via a LAN (Local Area Network) 6 formed using Ethernet (registered trademark). At least one of the SAN 3 and the LAN 6 may be another type of communication network. Further, the storage apparatus 1, the host 2, and the management system 5 may be connected to the same communication network.
  • the storage device 1 includes a storage controller 10, a plurality of SSDs 21 and a plurality of HDDs 25 connected to the storage controller 10.
  • the SSD 21 is a storage device for storing write data from a host device such as the host 2, and is a storage device (nonvolatile memory device) adopting a nonvolatile memory such as a flash memory as a storage medium.
  • the internal configuration of the SSD 21 will be described later.
  • the SSD 21 is connected to the storage controller 10 by, for example, a transmission line (SAS link) conforming to the SAS (Serial Attached SCSI) standard or a transmission line (PCI link) conforming to the PCI (Peripheral Component Interconnect) standard.
  • SAS link Serial Attached SCSI
  • PCI link transmission line conforming to the PCI (Peripheral Component Interconnect) standard.
  • the HDD 25 is a storage device that uses a magnetic disk as a recording medium. Similarly to the SSD 21, the HDD 25 is also connected to the storage controller 10 by a SAS link or the like.
  • the storage device 1 may be configured such that only the SSD 21 is connected without the HDD 25 being connected. In the following description, the storage apparatus 1 will be described as a configuration in which only the SSD 21 is connected as a storage device.
  • the storage controller 10 includes a central processing unit (CPU) 11, a front end interface (FE-I / F) 12, a back end interface (BE-I / F) 13, a memory 14, and a management interface (MI / F). ) 15.
  • the CPU 11, FE-I / F 12, BE-I / F 13, memory 14, and MI / F 15 are interconnected via an internal switch (internal SW) 16.
  • the I / Fs 12, 13, and 15 are examples of the interface unit.
  • the memory 14 is an example of a storage unit.
  • the CPU 11 is an example of a processor unit. In FIG. 3, only one component of the storage controller 10 is shown. However, in order to ensure high performance and high availability, at least one of these components is provided in the storage controller 10. May be. Further, the storage controller 10 may have a configuration in which each component is interconnected via a common bus instead of the internal SW 16.
  • the BE-I / F 13 has an interface controller and a transfer circuit (not shown).
  • the interface controller performs protocol conversion between a protocol used by the SSD 21 (for example, SAS) and a communication protocol used by the storage controller 10 (for example, PCI-Express).
  • the transfer circuit performs processing for transferring data (reading and writing) to and from the SSD 21.
  • the FE-I / F 12 includes an interface controller and a transfer circuit (not shown), similar to the BE-I / F 13.
  • the interface controller of the FE-I / F 12 performs protocol conversion between a communication protocol (for example, fiber channel) used in a data transfer path between the host 2 and the storage controller 10 and a communication protocol used in the storage controller 10. Do.
  • the CPU 11 performs various controls of the storage device 1.
  • the memory 14 stores a program executed by the CPU 11 and management information of the storage device 1 used by the CPU 11.
  • the memory 14 is also used for temporarily storing I / O target data for the SSD 21.
  • the storage area in the memory 14 used for temporarily storing the I / O target data for the SSD 21 is referred to as “cache”.
  • the memory 14 may be composed of a volatile storage medium such as DRAM or SRAM, or may be composed of a nonvolatile memory.
  • the memory 14 stores a program executed by the CPU 11 in order to execute processing to be described later by the storage controller 10.
  • the management information in the memory 14 includes, for example, a VVOL management table 500, a pool management table 550, an RG management table 560, a drive management table 510, a usage record management table 520, and an OP rate selection table 530, which will be described later.
  • the management system 5 may be composed of one or more computers. Specifically, for example, when the management computer has a display device and the management computer displays information on its own display device, the management computer 5 may be the management computer 5. For example, when a management computer (for example, a server) transmits display information to a remote display computer (for example, a client) and the display computer displays the information (when the management computer displays information on the display computer) ), A system including at least the management computer among the management computer and the display computer may be the management system 5.
  • the management system 5 may include an interface unit 61, a storage unit 62, and a processor unit 63 connected to them.
  • the interface unit 61 may include at least one of a user interface unit and a communication interface unit.
  • the user interface unit includes at least one I / O device of one or more I / O devices (for example, an input device (for example, a keyboard and a pointing device), an output device (for example, a display device)), and a display computer.
  • the communication interface unit may include one or more communication interface devices. That the computer in the management system 5 “displays display information” may be that display information is displayed on a display device included in the computer, or the computer transmits display information to the display computer. (In the latter case, display information is displayed by a display computer).
  • the storage unit 62 stores information accessed by the processor unit 63 and programs executed by the processor unit 63.
  • the processor unit 63 reads the program from the storage unit 62 and executes it, thereby managing the storage apparatus 1 with reference to the information in the storage unit 62.
  • FIG. 4 is a configuration diagram of the SSD 21.
  • the SSD 21 includes an SSD controller 200 and FM (a plurality of FM chips 210).
  • the SSD controller 200 includes a CPU 201, an FE-I / F 202, a BE-I / F 203, a memory 204, and a compression / expansion circuit 207, which are interconnected via an internal switch (internal SW) 205.
  • the FE-I / F 202 is an interface controller for performing communication between the SSD 21 and the storage controller 10.
  • the FE-I / F 202 is connected to the BE-I / F 13 of the storage controller 10 via a transmission line (SAS link or PCI link).
  • the BE-I / F 203 is an interface controller for performing communication between the SSD controller 200 and the FM chip 210.
  • the BE-I / F 203 is connected to the FM chip 210 via a transmission line.
  • the CPU 201 performs processing related to various commands coming from the storage controller 10.
  • the memory 204 stores programs executed by the CPU 201 and various management information.
  • the memory 204 may be configured by a volatile storage medium such as DRAM or SRAM, or may be configured by a nonvolatile memory.
  • the memory 204 stores an OP rate basic management table 600, an SSD internal management table 610, and a write total expected value calculation table 620, which will be described later.
  • the compression / decompression circuit 207 is a circuit that performs data compression processing and decompression processing.
  • the FM chip 210 is a non-volatile semiconductor memory chip such as a NAND flash memory, for example.
  • the FM chip 210 has a plurality of dies 213.
  • Each die 213 has a plurality of blocks (physical blocks) 211.
  • Each block 211 has a plurality of pages (physical pages) 214. Reading and writing are performed in units of pages, and erasing of data is performed in units of blocks.
  • Each page 214 has a plurality of cells 215.
  • Each cell 215 is a memory element composed of a transistor or the like, and can hold 1-bit or multiple-bit data.
  • the SSD 21 is a storage medium that includes a plurality of FM chips and an SSD controller that controls them, and the external shape and the like are not limited to form factors.
  • FM non-FM non-volatile memories such as PRAM (Phase-change Random Access Memory), MRAM (Magnetoresistive Random Access Memory), ReRAM (Resistive Random Access Memory) or FeRAM (Ferroelectric Random Access Memory) are adopted. Also good.
  • FIG. 5 is a schematic diagram for explaining the relationship between the breakdown of the physical capacity of the SSD 21 and the OP rate.
  • the physical capacity of the SSD 21 means the physical capacity of the FM chip 210 included in the SSD 21, and the value is equal to the total capacity of all the FM chips 210 of the SSD 21.
  • the physical capacity of the SSD 21 is used for the user capacity 2100 that is the capacity of the physical area (user area) used for storing user data (at least a part of the data from the host 2), execution of reclamation, and the like.
  • To the spare capacity 2101 which is the capacity of the physical area (spare area).
  • the ratio of the spare capacity 2101 to the user capacity 2100 is the “OP rate”.
  • the OP rate may be calculated by the formula of spare capacity 2101 ⁇ user capacity 2100, or may be calculated by the formula of (physical capacity ⁇ user capacity) ⁇ user capacity, or the calculation of physical capacity ⁇ user capacity ⁇ 1. It may be calculated by a formula, and in short, any formula that can calculate the ratio of the reserve capacity 2101 to the user capacity 2100 may be used.
  • the SSD 21 has a variable OP function that can change the OP rate.
  • the SSD 21 is provided with an interface that allows the user to change the capacities of the user capacity 2100 and the spare capacity 2101.
  • the OP rate is set high, the reserve capacity 2101 increases, and thus the user capacity 2100 decreases.
  • the OP rate is set low, the reserve capacity 2101 becomes small and the user capacity 2100 becomes large.
  • FIG. 6 is a diagram for explaining the relationship between the physical capacity and the logical capacity of the SSD 21.
  • the SSD 21 provides a logical area (logical address space) based on its own physical area to the connected storage controller 10. This logical area is managed in association with the user's physical area, and the logical / physical address conversion function of the SSD 21 enables address conversion between the logical area and the physical area.
  • the SSD 21 has a data compression function by the compression / decompression circuit 207. Further, the SSD 21 has a function of expanding the logical capacity according to the data compression rate as described in Patent Document 3 (International Publication No. 2012/168962). For this reason, in the SSD 21, the logical capacity can be made larger than the physical capacity. This is because the data actually stored in the SSD 21 is compressed inside the SSD 21 to reduce the size.
  • the SSD 21 provides the storage controller 10 with a logical capacity that is eight times the user capacity 2100 in advance.
  • the logical capacity that the SSD 21 can provide is smaller than eight times the user capacity 2100, and a capacity that cannot be used is generated. Accordingly, the logical capacity of the SSD 21 is an effective capacity 2102 that is a logical capacity part that can be used by the storage controller 10 (can store user data) and a logical capacity that cannot be used by the storage controller 10 (cannot store user data). And an invalid capacity 2103 which is a part.
  • the size of the effective capacity 2102 is a value obtained by user capacity / a. Note that the total value of the effective capacity 2102 and the invalid capacity 2103 is, for example, eight times the user capacity 2100 of the SSD 21.
  • the SSD 21 includes an interface for notifying the storage controller 10 of internal information such as logical capacity and average compression rate.
  • the storage controller 10 executes processing such as pool capacity management, which will be described later, based on internal information acquired from the SSD 21 via this interface.
  • FIG. 7 is a diagram for explaining the volume configuration of the storage apparatus.
  • the storage controller 10 has a capacity virtualization function.
  • the capacity virtualization function is a technology that provides a virtual capacity larger than the physical capacity of the storage apparatus 1 to the host 2 as a VVOL.
  • the storage controller 10 constitutes a plurality of logical RGs 30 respectively corresponding to a plurality of physical RGs (four SSDs 21).
  • the plurality of RGs 30 include RGs 30A and 30B.
  • the storage controller 10 combines two RGs 30A and 30B to form a pool 40 as an example of a storage area set.
  • the RG 30A includes three logical SSDs 20A to 20C excluding one SSD 21 for parity.
  • the logical capacity of each SSD 20 is the logical capacity of the SSD 21.
  • the capacity of each SSD 20 may be divided into an effective capacity 2102 and an invalid capacity 2103.
  • the storage controller 10 manages the pool 40 by dividing it into sections of a predetermined size. This partition is called “chunk”. Chunk 31A is created in RG30A, and chunk 31B is created in RG30B.
  • the storage controller 10 provides the VVOL 50 to the host 2.
  • the VVOL 50 is, for example, a virtual volume that follows thin provisioning.
  • the storage controller 10 receives a write request for the VVOL 50 from the host 2, the storage controller 10 assigns an arbitrary chunk 31 in the pool 40 to the virtual chunk 51 of the VVOL 50 (the address range to which the logical address specified by the write request belongs), and the write request The data associated with is written to the chunk 31.
  • the SSD 20 is the total of the effective capacity 2102 and the invalid capacity 2103, and is a value eight times the physical capacity of the SSD 21. However, since each of the effective capacity 2102 and the invalid capacity 2103 changes according to the data compression rate, the storage controller 10 periodically acquires internal information such as a logical capacity, a physical capacity, and a compression rate from the SSD 21, The capacity of the RG 30 and the pool 40 is managed.
  • the storage controller 10 can absorb the change in the logical capacity of the SSD 21 by changing the attribute of the chunk.
  • the storage controller 10 has a data movement function for moving chunk data between RGs 30.
  • the data movement function uses the capacity (data storage capacity) between the existing SSD 21 and the additional SSD 21 when leveling the write load of the SSD 21 between the RGs 30 or when a new SSD 21 is additionally installed. Used for the purpose of leveling.
  • FIG. 7 shows an example in which the data of the chunk 31A is moved to the chunk 31B.
  • the storage controller 10 internally changes the allocation destination of the virtual chunk 51 from the chunk 31A to the chunk 31B, but the correspondence between the host 2 and the virtual chunk 51 is maintained as it is. Therefore, the storage controller 10 can conceal the influence of data movement from the host 2.
  • FIG. 8 is a configuration diagram of the VVOL management table 500.
  • the VVOL management table 500 is a table for managing the mapping relationship between the virtual chunks in each VVOL 50 defined in the storage apparatus 1 and the chunks in the pool 40.
  • the VVOL management table 500 has a record for each virtual chunk. Each record holds information such as VVOL # (number) 501, pool # 503, LBA range 504, virtual chunk # 505, RG # 506, and chunk # 507.
  • VVOL # 501 is an identification number of the VVOL including the virtual chunk.
  • Pool # 503 is an identification number of a pool 40 (pool to which a chunk is assigned to the VVOL) 40 with which the VVOL including the virtual chunk is associated.
  • the LBA range 504 indicates an LBA (Logical Block Address) range of the virtual chunk.
  • Virtual chunk # 505 is an identification number of the virtual chunk.
  • RG # 506 is an identification number of an RG having a chunk assigned to the virtual chunk.
  • Chunk # 507 is the identification number of the chunk assigned to the virtual chunk.
  • FIG. 9 is a configuration diagram of the pool management table 550.
  • the pool management table 550 is a table for managing the pool 40, and may be a table for each pool 40.
  • the pool management table 550 has a record for each chunk in the pool. Each record holds information such as pool # 551, RG # 552, chunk # 553, LBA range 554, status 555, write amount 556, read amount 557, operation start date 558, and target operation period 559.
  • Pool # 551 is an identification number of a pool including chunks.
  • RG # 552 is an identification number of the RG including the chunk.
  • Chunk # 553 is a chunk identification number.
  • the LBA range 55 indicates the LBA range of the chunk.
  • Status 555 indicates a status of the chunk, for example, a status relating to whether or not the virtual chunk is allocated. “Allocated” means that the chunk is allocated to the virtual chunk. “Unallocated” means that the chunk is not allocated to a virtual chunk. “Unassignable” means that a chunk cannot be assigned to a virtual chunk.
  • the status 555 of the chunk having an invalid capacity of 2103 that has become unusable due to a decrease in the compression rate is set to “unassignable”. Note that the chunk corresponding to the status 555 “allocated” or “unallocated” is a chunk belonging to the effective capacity 2102. The pool usage at some point is equal to the total capacity of chunks with status 555 “allocated”, and the remaining capacity of the pool is equal to the total capacity of chunks with status 555 “unallocated”.
  • the write amount 556 indicates the total amount of data written in the chunk during a specific period.
  • the read amount 557 indicates the total amount of data read from the chunk during a specific period.
  • the operation start date 558 indicates the date when the pool was created.
  • a target operation period 559 indicates a target period for operating the pool (target operation period). This target operation period 559 corresponds to the target operation years shown in FIG.
  • FIG. 10 is a configuration diagram of the RG management table 560.
  • RG management table 560 is a table for managing RG.
  • the RG management table 560 has a record for each drive (SSD or HDD in this embodiment). Each record holds information such as RG # 561, RAID level 562, drive # 563, and LBA range 564.
  • RG # 561 is an identification number of the RG including the drive.
  • the RAID level 562 indicates the RAID level of the RG including the drive.
  • Drive # 563 is a drive identification number.
  • the LBA range 564 indicates the LBA range of the logical address space provided by the drive.
  • FIG. 11 is a configuration diagram of the drive management table 510.
  • the drive management table 510 is a table for managing drives.
  • the drive management table 510 has a record for each drive.
  • Each record includes information such as drive # 511, type 512, physical capacity 513, OP rate 514, logical capacity 515, current write total amount 516, lifetime consumption rate 517, expected total write amount limit value 518, and average compression rate 519. Hold.
  • Drive # 511 is a drive identification number.
  • the type 512 indicates the type of drive (for example, “SSD” or “HDD”).
  • the physical capacity 513 indicates the physical capacity of the drive.
  • the OP rate 514 indicates the OP rate set for the drive.
  • the logical capacity 515 indicates the logical capacity of the drive (for example, user capacity ⁇ maximum compression rate), in other words, the maximum value of the effective capacity 2102.
  • the current total write amount 516 indicates the total amount of data written to the drive.
  • the life consumption rate 517 indicates the rate at which the drive life is consumed.
  • the expected limit value 518 of the total write amount corresponds to the upper limit of the total write amount, and specifically indicates the total write amount expected to be reached when the drive reaches the end of its life. For example, according to SSD “0” (drive # 511 “0” and type 512 “SSD” drive), the current write total amount 516 is “5PB” and the lifetime consumption rate 517 is “50%”. When the SSD “0” reaches the end of life (that is, when the life consumption rate 517 reaches “100%”), the total write amount (that is, the expected limit value 518 of the total write amount) is “10 PB”. is there. Note that the expected total value 518 of the total write amount may be calculated from the user capacity and the number of erasable times, and the life consumption rate 517 may be calculated as a ratio of the current total write amount 516 to the expected limit value 518.
  • the average compression rate 519 indicates the average compression rate of data written to the drive.
  • the storage controller 10 can execute these from the SSD 21. Is stored, and the lifetime consumption rate 517, the expected limit value 518 of the total light amount, and the average compression rate 519 are stored.
  • the predicted limit value 518 of the total write amount may be predicted (calculated) by the storage controller 10 based on the lifetime consumption rate 517 acquired from the SSD 21 and the current total write amount 516 managed by the storage controller 10.
  • the logical capacity (effective capacity of the SSD 21) reflecting the actual compression ratio is logical capacity 515 ⁇ maximum compression ratio (for example, 12.5%) ⁇ average compression ratio 519.
  • FIG. 12 is a configuration diagram of the usage record management table 520.
  • the usage record management table 520 is a table for managing the history of the used logical capacity and the total amount of data write in the storage apparatus 1. Based on the use record management table 520, the storage controller 10 can grasp the capacity use record (changes in total use logical capacity and total write total amount).
  • the usage record management table 520 has a record for each pool 40 for each time point. Each record holds information such as pool # 521, time stamp 522, used logical capacity 523, total write amount 524, and average compression rate 525.
  • Pool # 521 is a pool identification number.
  • the time stamp 522 indicates a time stamp corresponding to the time point (in this embodiment, an elapsed time (elapsed year) from the start of the pool operation).
  • the used logical capacity 523 indicates the used logical capacity at the time (specifically, the total capacity of the allocated chunk at the time (chunk of status 555 “allocated”)).
  • the used logical capacity 523 corresponds to the above-described overall used logical capacity (horizontal axis of the graph of FIG. 1) for the pool.
  • the total write amount 524 indicates the total write amount at the time (specifically, the total amount of data written to the pool up to the time). Specifically, the total write amount 524 is the total of the total write amount 516 corresponding to all the drives belonging to the pool. The total write amount 524 corresponds to the above-described total write total amount (vertical axis of the graph of FIG. 1) for the pool.
  • the average compression rate 525 indicates the average compression rate of the pool at the time point, specifically, for example, the average value of the average compression rate 519 respectively corresponding to all the drives belonging to the pool at the time point.
  • FIG. 13 is a configuration diagram of the OP rate selection table 530.
  • the OP rate selection table 530 is a table used for obtaining (selecting) the OP rate and the required additional number of SSDs to be added. Based on the OP rate selection table 530, the storage controller 10 can obtain the optimum OP rate and the required additional number of additional SSDs.
  • the OP rate selection table 530 includes an additional logical capacity 531, an additional write total amount 532, an assumed compression rate 533, a physical capacity 534, an OP rate 535, an expected effective capacity 536, an expected write total amount 537, an additional number 538 according to capacity requirements, and a write total amount. Information such as the additional number 539 in the requirement and the necessary additional number 540 is held.
  • the additional logical capacity 531 indicates a logical capacity to be added (for example, to be added to the pool 40), specifically, the above-described target additional logical capacity 3004 (see FIGS. 1 and 2).
  • the additional light total amount 532 indicates the total light amount to be added (for example, to be added to the pool 40), specifically, the above-mentioned additional light total amount 3003 (see FIGS. 1 and 2).
  • the assumed compression rate 533 indicates an expected value of the data compression rate.
  • the assumed compression rate 533 is, for example, the latest value or the average value of a plurality of average compression rates 525 in the usage record management table 520.
  • the physical capacity 534 indicates the physical capacity of one SSD 21.
  • Each of the plurality of OP rates 535 indicates an OP rate set in the SSD.
  • the OP rate selection table 530 includes a plurality of OP rates 535 (for example, a plurality of different OP rates 535 (for example, a plurality of different 10% units) for a set of the additional logical capacity 531, the additional write total amount 532, the assumed compression rate 533, and the physical capacity 534.
  • OP rate 535) is associated.
  • Information 536 to 540 is associated with each OP rate 535.
  • the expected effective capacity 536 is the effective capacity (usable part of the logical capacity) according to the user capacity (the user capacity calculated from the OP rate 535 and the physical capacity 534) and the assumed compression ratio 533. Show.
  • the expected write total amount 537 indicates the upper limit of the total write amount based on the user capacity corresponding to the OP rate 535.
  • the expected effective capacity 536 and the expected total write amount 537 may be acquired from the SSD 21 by the storage controller 10.
  • the additional number 538 in the capacity requirement indicates the additional number of SSDs necessary to satisfy the additional logical capacity 531.
  • This additional number 538 is the additional logical capacity 531 ⁇ expected effective capacity 536 (the remainder is rounded up).
  • the minimum number that is equal to or more than the calculated additional number and is necessary for configuring the RG may be the additional number 538 in the capacity requirement. In this way, an additional number satisfying the additional logical capacity 531 and a minimum additional number suitable for adding the SSD 21 in units of RG can be obtained.
  • the additional number of SSDs necessary to satisfy the additional light total amount 532 is shown in the additional number 539 in the total light amount requirement.
  • the additional number 539 is the total amount of additional writes 532 ⁇ the total number of expected writes 537 (the remainder is rounded up).
  • the minimum number that is equal to or greater than the calculated additional number and that is necessary for configuring the RG may be the additional number 539 in the write total amount requirement. In this way, it is possible to obtain an additional minimum number that satisfies the total additional write amount 532 and that is appropriate when the SSD 21 is added in units of RG.
  • the necessary additional number 54 indicates the additional number necessary to satisfy the requirements of both the additional logical capacity 531 and the additional write total amount 532.
  • the necessary additional number 540 is the larger of the additional number 538 in the capacity requirement and the additional number 539 in the total write amount requirement.
  • the storage controller 10 sets the OP rate 535 corresponding to the smallest necessary additional number 540 among the plurality of necessary additional numbers 540 in the OP rate selection table 530, This is determined as the optimum OP rate to be set for the additional SSD. As a result, an OP rate with the smallest number of additional SSDs (that is, the smallest additional cost) can be proposed. If there are a plurality of minimum required additional numbers 540, the storage controller 10 sets the optimum OP to be set as an additional SSD for each of the plurality of OP rates 535 respectively corresponding to the plurality of minimum required additional numbers 540. It may be determined as a rate.
  • FIG. 14 is a configuration diagram of the OP rate basic management table 600.
  • the SSD 21 has a variable OP function, a data compression function, and a capacity expansion function.
  • the OP rate basic management table 600 manages, as basic information, a logical capacity and a write total amount guide value for each set of OP rate and compression rate.
  • the SSD 21 can output information held in the OP rate basic management table 600.
  • the OP rate basic management table 600 has a record for each set of OP rate and compression rate. Each record holds information such as a physical capacity 601, an OP rate 602, a compression rate 603, an effective capacity 604, and a write total amount guide value 605.
  • the physical capacity 601 indicates the physical capacity of the SSD 21.
  • the OP rate 602 indicates the OP rate.
  • the OP rate 602 is prepared in increments of a predetermined% (for example, 10%), and these OP rates are prepared for each of the plurality of compression rates 603.
  • the compression ratio 603 is a representative value of an expected compression ratio, for example, a maximum compression ratio (for example, 12.5%), a typical compression ratio (for example, 50%), or a minimum compression ratio (for example, 100%). The expected value of the compression ratio is acceptable.
  • Effective capacity 604 indicates an expected value of an effective capacity (a usable part of the logical capacity) according to the OP rate 602 and the compression rate 603.
  • the write total amount reference value 605 is a predetermined condition such as a predetermined I / O pattern (for example, completely random write), a predetermined I / O length (for example, 4 KB length), etc., for the SSD 21 with the OP rate 602 and the compression rate 603. Shows the standard value of the total amount of light.
  • the actual total write amount under actual operation may be larger or smaller than the total write amount reference value 605.
  • other types of SSD life determination parameters such as DWPD (Drive WritePDPerday) and WA (Write Amplification) are managed based on the OP rate. It may be stored in the table 600.
  • FIG. 15 is a configuration diagram of the SSD internal management table 610.
  • the SSD internal management table 610 includes a physical capacity 611, a set OP rate 612, an average compression rate 613, a write total amount guide value 614, a current write total amount 615, a life consumption rate 616, a write limit expected value 617, and a write total amount correction. Information such as value 618 is held.
  • the physical capacity 611 indicates the physical capacity of the SSD 21 (the SSD 21 that stores the SSD internal management table 610).
  • the set OP rate 612 indicates the OP rate set in the SSD 21.
  • the average compression rate 613 indicates the average compression rate of the data stored in the SSD 21.
  • the light total amount guide value 614 indicates the light total amount guide value under the current use conditions.
  • the write total amount guide value 614 may be the same as the write total amount guide value 605 obtained by searching the OP rate basic management table 600 using the set OP rate 612 and average compression rate 613 as a key.
  • the current total write amount 615 indicates the total amount of data written to the SSD 21.
  • the lifetime consumption rate 616 indicates the ratio of consuming the lifetime of the SSD 21 (for example, the ratio of the number of erases to the present with respect to the number of erasable times of the SSD 21).
  • the predicted limit value 617 of the total amount of light indicates the total amount of light that is predicted to be reached when the lifetime consumption rate 616 reaches 100% (that is, the current total amount of light 615 ⁇ (lifetime consumption rate 616 ⁇ 100)).
  • the write total amount correction value 618 is a value (correction value) indicating the degree of deviation between the actual write total amount and the write total amount guide value 614. Specifically, the write total amount expected limit value 617 ⁇ write total amount guide value 614. .
  • FIG. 16 is a configuration diagram of the write total amount expected value calculation table 620.
  • the write total expected value calculation table 620 is a table used for predicting the upper limit of the total write amount under actual operation conditions for each OP rate.
  • the write total amount expected value calculation table 620 has a record for each OP rate. Each record holds information such as physical capacity 621, OP rate 622, compression rate 623, expected effective capacity 624, write total amount guide value 625, write total amount correction value 626, and write total amount expected value 627.
  • the physical capacity 621 indicates the physical capacity of the SSD 21 (the SSD 21 that stores the write total amount expected value calculation table 620).
  • the OP rate 622 indicates an OP rate that can be set in the SSD 21.
  • the compression rate 623 indicates the actual compression rate of the SSD 21 (for example, the same value as the average compression rate 613 in the SSD internal management table 610).
  • the expected effective capacity value 624 indicates the expected value of the effective capacity (usable part of the logical capacity) according to the OP rate 622 and the compression rate 623.
  • the write total amount guide value 625 indicates the same value as the write total amount guide value 605 in a record obtained by searching the OP rate basic management table 600 using the set of the OP rate 622 and the compression rate 623 as a key.
  • the total write amount correction value 626 is a correction value (for example, an SSD internal management table) indicating how much the write total amount expected value, which is the upper limit value of the total write amount of the SSD 21 under actual operation, can change with respect to the reference value. 610 is the same value as the write total amount correction value 618).
  • the write total amount expectation value 627 indicates a write total amount expectation value (for example, write total amount guide value 625 ⁇ write total amount correction value 626) that is an upper limit value of the total write amount of the SSD 21 under actual operation.
  • FIG. 17 is a flowchart of storage control. Storage control is executed periodically, for example. Moreover, at least one of S60, S70, S80, and S100 among the steps shown in FIG. 17 may be executed by the management system 5 (processor unit 53) instead of or in addition to the storage controller 10 (CPU 11). Good. In this case, the information acquisition in S50 may be performed by the management system 5 via the storage controller 10. Further, the CPU 11 and the processor unit 53 may be an example of a processor unit included in the computer system.
  • the storage controller 10 determines whether a read request or write request (I / O request) has been received from the host 2 (S10).
  • the storage controller 10 performs I / O processing corresponding to the received I / O request (S20), and the pool is based on the result of the I / O processing.
  • the management table 550 is updated (S30). Specifically, when the I / O processing is read processing, in S30, the storage controller 10 adds the data amount of the read target data to the read amount 557 corresponding to the read source chunk. If the I / O process is a write process, in S30, the storage controller 10 adds the data amount of the write target data to the write amount 556 corresponding to the write destination chunk. When a chunk is allocated to the write destination virtual chunk 41, the storage controller 10 updates the status 555 of the allocated chunk to “allocated”.
  • the storage controller 10 determines whether or not a certain period has elapsed since the previous storage control process (S40).
  • the storage controller 10 acquires internal information from the SSD 21 (S50). In S50, the storage controller 10 requests each SSD 21 to transmit internal information. In response to this, each SSD 21 transmits information held in the SSD internal management table 610 to the storage controller 10. Specifically, the storage controller 10 acquires the average compression rate 613, the life consumption rate 616, and the expected limit value 617 of the total write amount for each SSD 21. For each SSD 21, the storage controller 10 uses the acquired average compression rate, lifetime consumption rate, and expected total write limit value as the average compression rate 519, lifetime consumption rate 517, and expected total write limit value 518 corresponding to the SSD 21. And stored in the drive management table 510.
  • the storage controller 10 updates the pool capacity (S60).
  • the storage controller 10 adjusts the pool capacity based on the average compression rate 519 of the drive management table 510. Specifically, when the pool average compression ratio (average compression ratio according to the plurality of average compression ratios 519 corresponding to the plurality of SSDs 21 that are the basis of the pool) deteriorates, the storage controller 10 determines the pool average compression ratio. The status 555 of the unallocated chunks (status 555 “unallocated” chunks) corresponding to the effective capacity reduced due to deterioration is changed to “unallocated”.
  • the storage controller 10 sets the status 555 of the unallocated chunk (status 555 “unallocated” chunk) for the effective capacity increased by the improvement of the pool average compression ratio to “unallocated”.
  • Change to The pool average compression rate may be equal to the average compression rate 525 illustrated in FIG. 12, for example.
  • the storage controller 10 updates the capacity usage record (S70).
  • S ⁇ b> 70 when it is a preset usage record acquisition timing, the storage controller 10 updates the use record management table 520.
  • the preset usage record acquisition timing may be, for example, every time the elapsed time from the start of pool operation increases by 0.5 years (six months).
  • the storage controller 10 adds a new record to the usage record management table 520, and adds a time stamp 522 (elapsed time since the start of the pool operation at that time) and a used logical capacity 523 to the added record.
  • the logical capacity used at that time the total write amount 524 (the total write amount at that time), and the average compression rate 525 (the average value of the average compression rate 519 respectively corresponding to all SSDs 21 belonging to the pool, that is, as described above Store pool average compression ratio).
  • the storage controller 10 determines whether or not addition is necessary (S80).
  • the storage controller 10 determines whether or not the SSD 21 is newly added to the storage device 1 (S90).
  • the storage controller 10 performs data movement for leveling the load between the RG of the existing SSD 21 and the RG of the additional SSD 21 (S100).
  • the storage controller 10 determines whether or not a stop request for the storage device 1 has been received (S110). When the determination result of S100 is true (S110: Yes), the storage controller 10 executes a stop process of the storage apparatus 1. If the determination result in S110 is false (S110: No), the process returns to S10.
  • FIG. 18 is a flowchart for determining whether or not to add. In addition, taking one pool as an example, the necessity determination for addition will be described. In the description of FIGS. 18 to 20, the pool is referred to as a “target pool”.
  • the storage controller 10 determines whether the operation up to the target period (target operation period) can be achieved with the current configuration (the total write total amount upper limit and the entire logical capacity upper limit described with reference to FIG. 1) for the target pool ( S81).
  • the storage controller 10 estimates the estimated result when the target period has elapsed (see FIG. 1) based on the transition of the capacity use result specified from the use result management table 520 and the target operation period 559 of the pool management table 550.
  • the estimated total light total amount and the estimated overall logical capacity) described above are calculated, and it is determined whether or not the current configuration exceeds the estimated performance.
  • the total write total amount upper limit is the sum of the predicted limit values 518 of the total write amount respectively corresponding to all SSDs belonging to the target pool.
  • the total logical capacity upper limit is the sum of the logical capacities 515 respectively corresponding to all SSDs belonging to the target pool. If the determination result in S81 is false (S81: Yes), the determination of necessity for addition ends.
  • the storage controller 10 calculates the additional amount of the SSD 21 (S82). Specifically, in S82, the storage controller 10 calculates the target additional logical capacity 3004 and the target additional write total amount 3003, and adds the additional logical capacity 531 (target additional logical capacity 3004) and the additional write total amount to the OP rate selection table 530. 532 (target added light total amount 3003) is stored.
  • the storage controller 10 acquires the logical capacity (predicted value) and the total write amount (predicted value) for each OP rate from at least one of all the SSDs 21 belonging to the target pool (S83). Specifically, for example, in S83, the storage controller 10 uses the average compression ratio of all the average compression ratios 525 corresponding to the target pool (may be the maximum value or the minimum value instead of the average) as the assumed compression ratio 533. Determine as. The storage controller 10 requests the SSD 21 corresponding to the average compression rate 519 closest to the determined assumed compression rate 533 to send the logical capacity (predicted value) and the total write amount (predicted value) for each OP rate.
  • the SSD 21 that has received this request refers to the write total amount expected value calculation table 620 and stores each OP rate 622, the effective capacity expected value 624 and the write total amount expected value 627 for each OP rate 622 to the storage controller 10. return.
  • the storage controller 10 obtains information from the SSD 21, that is, each OP rate 622, the expected effective capacity value 624 and the expected total write amount 627 for each OP rate 622, and the expected effective value for each OP rate 535 and OP rate 535.
  • the capacity 536 and the expected write total amount 537 are stored in the OP rate selection table 530.
  • the storage controller 10 determines the request destination SSD 21 for the logical capacity (predicted value) and the total write amount (predicted value) based on the average compression rate 525 of the usage record management table 520. For this reason, it can be expected that the logical capacity (predicted value) and the total write amount (predicted value) considered to be close to the assumed situation are appropriately acquired.
  • the storage controller 10 determines the additional SSD, specifically, the OP rate of the additional SSD and the required additional number (S84).
  • the storage controller 10 displays additional proposal information including the optimum OP rate determined in S84 and the required additional number (for example, displayed on the screen of the management system 5) (S85). This display corresponds to prompting the user (administrator) to add the SSD 21.
  • FIG. 19 is a flowchart for determining an additional SSD.
  • the storage controller 10 calculates and stores the additional number 538 of the capacity requirement from the additional logical capacity 531 and the predicted effective capacity 536 for each OP rate 535 (S841). For each OP rate 535, the additional number 538 in the capacity requirement is, as described above, additional logical capacity 531 ⁇ expected effective capacity 536 (however, the remainder is rounded up).
  • the storage controller 10 calculates and stores the additional number 539 in the total write amount requirement from the total additional write amount 532 and the predicted total write amount 537 for each OP rate 535 (S842). As described above, the additional number 539 in the total write amount requirement is the total additional light amount 532 ⁇ the expected total write amount 537 (however, the remainder is rounded up).
  • the storage controller 10 determines and stores the larger of the additional number 538 in the capacity requirement and the additional number 539 in the write total amount requirement as the required additional number 540 for each OP rate 535 (S843).
  • the storage controller 10 specifies the minimum required additional number 540 among the plurality of required additional numbers 540 respectively corresponding to the plurality of OP rates 535, and sets the OP rate 535 corresponding to the specified minimum required additional number 540,
  • the optimum OP rate is determined (S844).
  • FIG. 20 is a flowchart of data movement. It is assumed that the optimum OP rate determined in S844 of FIG. 19 is set in the added SSD 21. In the data movement, the movement source and the movement destination are assumed to be chunks in the target pool.
  • the storage controller 10 compares the OP rate (hereinafter, new OP rate) of the added SSD 21 with the OP rate (old OP rate) of the existing SSD 21 (S101).
  • An SSD with a large OP rate has lower characteristics in terms of lifetime and performance than an SSD with a small OP rate, and thus has superior characteristics in terms of life and performance, that is, a large total write amount and high performance.
  • the “high load chunk” may be a chunk in which at least one of the write amount 556 and the read amount 557 of the pool management table 550 is relatively large in the target pool.
  • the storage controller 10 moves the low-load chunk data from the RG of the existing SSD to the RG of the additional SSD (S105). Thereby, it can be expected to extend the period until the additional SSD reaches the end of its life and increase the free capacity of the existing SSD.
  • the “low load chunk” may be a chunk in which at least one of the write amount 556 and the read amount 557 of the pool management table 550 is relatively small in the target pool.
  • the storage controller 10 determines whether the added remaining capacity of the SSD 21 (hereinafter, new remaining amount) and the existing The remaining amount of the writeable amount of the SSD 21 (hereinafter referred to as the old remaining amount) is compared (S102).
  • the “writable remaining amount” is the amount of data that can be written before the end of the life, specifically, the difference between the predicted total write amount limit 518 and the current total write amount 516 for each SSD 21.
  • the storage controller 10 moves the data of the high-load chunk from the RG of the existing SSD to the RG of the additional SSD (S103).
  • the storage controller 10 moves the data of the low-load chunk from the RG of the existing SSD to the RG of the additional SSD (S105).
  • the storage controller 10 stores the chunk data regardless of whether the chunk has a high load or a low load. Then, the RG of the existing SSD is moved to the RG of the additional SSD (S104).
  • FIG. 21 is a flowchart of the SSD control.
  • the SSD control is executed periodically, for example.
  • the SSD controller 200 determines whether a read request or a write request has been received from the storage controller 10 (S200).
  • the SSD controller 200 executes I / O processing (read / write processing) corresponding to the received request (S210), and updates the SSD internal management table 610. (S220).
  • I / O processing read / write processing
  • S220 the SSD controller 200 adds the data amount of the written data to the current write total amount 615 of the SSD internal management table 610.
  • the SSD controller 200 compresses data by the compression / decompression circuit 207 and writes the compressed data to the FM chip 210.
  • the SSD controller 200 sets the lifetime consumption rate 616 of the SSD internal management table 610 in S220. Update based on the number of erases performed.
  • the SSD controller 200 sends a request for sending the logical capacity (predicted value) and the total write amount (predicted value) for each OP rate from the storage controller 10. It is determined whether or not (the sending request in S83 of FIG. 18) has been received (S230).
  • the SSD controller 200 calculates a logical capacity predicted value (effective capacity expected value 624) and a write total amount predicted value (write total amount expected value 627) for each OP rate 622.
  • a logical capacity predicted value (effective capacity expected value 624)
  • a write total amount predicted value (write total amount expected value 627) for each OP rate 622.
  • the storage controller 10 (S240).
  • the predicted total write amount (expected write total value 627) is the write total amount guide value 625 ⁇ the write total amount correction value 626.
  • the SSD controller 200 determines whether or not the stop request for the SSD 21 has been received (S250). When the determination result of S250 is true (S250: Yes), the SSD controller 200 executes the stop process of the SSD 21. On the other hand, when the determination result of S250 is false (S250: No), the process returns to S200.
  • the optimum OP rate and the optimum additional number of SSDs to be added can be presented to the user.
  • Example 2 will be described. At that time, differences from the first embodiment will be mainly described, and description of common points with the first embodiment will be omitted or simplified.
  • the SSD 21 in addition to the variable OP function, has a cell mode change function that can change the amount of information (number of bits) that can be stored in the cell (flash memory cell) 215.
  • the FM chip 210 has a plurality of cells 215 for storing data, as shown in FIG.
  • a cell SLC (Single-Level Cell) that can store 1-bit information
  • a cell MLC (Multiple-Level Cell) or TLC (Triple) -Level Cell)
  • the SSD controller 200 (cell mode changing function) can change the number of bits that can be stored in the cell 215, for example, in units of blocks.
  • the technique described in Patent Document 4 US Patent Application Publication No. 2008/0250220 can be used.
  • a mode in which a cell can store 1-bit information is called “SLC mode”, a mode in which 2-bit data can be stored is called “MLC mode”, and a mode in which 3-bit data can be stored is called “TLC mode”.
  • SLC mode a mode in which 2-bit data can be stored
  • MLC mode a mode in which 2-bit data can be stored
  • TLC mode a mode in which 3-bit data can be stored
  • the capacity is SLC mode ⁇ MLC mode ⁇ TLC mode.
  • the lifetime (limit value of the total amount of data write) that is rewrite endurance is TLC mode ⁇ MLC mode ⁇ SLC mode. That is, when the cell is set to the SLC mode, the block has a small capacity but a long life. If the cell is in TLC mode, the block has a large capacity but a short life.
  • description will be made on the assumption that each block 211 of the FM chip 210 is set to either the SLC mode or the TLC mode.
  • FIG. 22 is a schematic diagram illustrating the relationship between the logical capacity and the physical capacity of the SSD according to the second embodiment.
  • the lower part shows the relationship between the logical capacity and the physical capacity when all the blocks 211 of the SSD 21 are set to the TLC mode
  • the upper part shows the block 211 set to the SLC mode
  • the relationship between the logical capacity and the physical capacity in the state where the blocks 211 set in the TLC mode are mixed is shown.
  • the user capacity 2100c and the spare capacity 2101c of the SSD 21 are all configured by blocks in the TLC mode.
  • the user capacity is configured by a first user capacity 2100a set to the SLC mode and a second user capacity 2100b set to the TLC mode.
  • the spare capacity 2101a is set to the TLC mode.
  • the total physical capacity (2100a, 2100b, 2101a) in the SSD 21 in which the SLC mode is mixed is smaller than the total physical capacity (2100c, 2101c) of the SSD 21 that is all in the TCL mode. Accordingly, the sum of the logical capacities (2102a, 2102b, 2103a) in the SSD 21 in which the SLC mode is mixed is smaller than the sum of the logical capacities (2102c, 2103c) of the SSD 21 all in the TCL mode.
  • the logical capacity of the SSD 21 becomes smaller than when all the blocks are set to the TLC mode.
  • the lifetime of the entire SSD 21 is greater when the SLC mode is mixed than when all the blocks are set to the TLC mode.
  • Example 2 The outline of Example 2 will be described.
  • FIG. 23 is a schematic diagram showing an outline of the second embodiment.
  • the SSD 21 has a function capable of setting the OP rate and the ratio of SLC and TLC to arbitrary values. For this reason, the additional logical capacity and the additional write total amount change depending on the OP rate and the SLC ratio (the ratio of SLC to the user capacity) set in the SSD 21, respectively.
  • a solid line 2001L1 and a solid line 2001L2 indicate capacity characteristics (relationship between the additional logical capacity and the additional write total amount) for SSDs with a low OP rate (for example, 20% or less). Specifically, a solid line 2001L2 indicates the capacity characteristic of the SSD when all the blocks of the user capacity are set to the TLC mode (SLC ratio 0%).
  • a solid line 2001H1 indicates the capacity characteristic of the SSD when all the blocks of the user capacity are set to the SLC mode (SLC ratio 100%).
  • the solid line 2001M1 and the solid line 2001M2 indicate the capacity characteristics of the SSD having a medium OP rate (for example, greater than 20% and less than 50%), respectively.
  • a solid line 2001M2 indicates the capacity characteristic of the SSD when the SLC ratio is set to 0%.
  • a solid line 2001M1 indicates the capacity characteristic of the SSD when the SLC ratio is set to 100%.
  • solid line 2001H1 and the solid line 2001H2 indicate the capacity characteristics of the SSD in the case of a high OP rate (for example, 50% or more), respectively.
  • a solid line 2001H2 indicates the capacity characteristic of the SSD when the SLC ratio is set to 0%.
  • a solid line 2001H1 indicates the capacity characteristic of the SSD when the SLC ratio is set to 100%.
  • the additional logical capacity and the additional write total amount vary depending on the ratio of SLC and TLC.
  • the storage controller 10 indicates the added number, the optimum OP rate, and the optimum SLC ratio determined by determining both the optimum OP rate and the optimum SLC ratio at which the added number of SSDs 21 is minimized.
  • Display additional proposal information including information.
  • FIG. 24 is a configuration diagram of an OP rate selection table according to the second embodiment.
  • Each record of the OP rate selection table 530a further holds an SLC ratio 541.
  • the SLC ratio 541 indicates the ratio of SLC mode blocks (SLC ratio) set in the added SSD. Although not shown, a plurality of SLC ratios 541 are prepared for each OP rate 535.
  • FIG. 25 is a configuration diagram of an OP rate basic management table according to the second embodiment.
  • Each record of the OP rate basic management table 600a further holds an SLC ratio 606.
  • the SLC ratio 606 indicates the ratio of the SLC mode set for the added SSD. Although not shown, a plurality of SLC ratios 606 are prepared for each OP ratio 602.
  • FIG. 26 is a configuration diagram of an SSD internal management table according to the second embodiment.
  • Each record of the SSD internal management table 610a holds a set SLC ratio 619.
  • the set SLC ratio 619 indicates the ratio of the SLC mode currently set in the SSD 21.
  • FIG. 27 is a configuration diagram of a write total expected value calculation table according to the second embodiment.
  • Each record of the write total amount expected value calculation table 620a further holds a set SLC ratio 628.
  • the SLC ratio 628 indicates the ratio of the SLC mode set in the SSD. Although not shown, a plurality of SLC ratios 628 are prepared for each OP rate 622.
  • FIG. 28 is a part of a flowchart of the necessity determination for addition according to the second embodiment.
  • S84a is performed instead of S84.
  • the storage controller 10 executes an additional SSD determination that determines the SLC mode ratio in addition to the optimum OP rate and the number of additional SSDs.
  • FIG. 29 is a part of a flowchart for determining an additional SSD according to the second embodiment.
  • S844a is performed instead of S844.
  • the storage controller 10 specifies the minimum required additional number 540 among the plurality of required additional numbers 540, and sets the OP rate 535 and the SLC ratio 541 corresponding to the specified minimum required additional number 540, respectively, as the optimum OP rate. And determined as the optimal SLC ratio.
  • a plurality of OP rates and a plurality of SLC ratios respectively corresponding to all the minimum required additional numbers 540 are determined as the optimal OP rate and the optimal SLC ratio, respectively.
  • the highest SLC ratio and the OP ratio corresponding to the highest SLC ratio may be determined as the optimum SLC ratio and the optimum OP ratio, respectively. If the highest SLC ratio and the corresponding OP ratio are the optimum SLC ratio and the optimum OP ratio, respectively, a configuration with a large total write amount can be recommended.
  • the optimum SLC ratio can be presented to the user in addition to the optimum additional number and the optimum OP rate.
  • the example in which the data compression processing using the lossless compression algorithm is performed as an example of the function of the SSD 21 that reduces the amount of data stored in the FM chip 210 has been described, but instead of using the lossless compression algorithm,
  • the amount of data stored in the FM chip 210 may be reduced by performing data deduplication processing.
  • deduplication is a technique for reducing and saving the capacity by searching for the same data in the entire storage area, and deleting other data while leaving one place, and can be said to be a data compression process in a broad sense.
  • the data compression rate in the first embodiment may be read as the deduplication rate.
  • the SSD 21 may execute both functions of the deduplication processing and the compression processing using the lossless compression algorithm, and in this way, the amount of data stored in the FM chip 210 is effectively reduced. be able to.
  • the storage controller 10 may perform compression processing and deduplication processing instead of the SSD 21.
  • the SSD 21 calculates the write total amount expected value 627 in consideration of the write total amount correction value 626 and notifies the storage controller 10 of the write amount.
  • the present invention is not limited to this, and the OP rate basic management table The storage controller 10 is notified of the record information for each OP rate of 600 and the correction value of the write total amount correction value 626 of the write total amount expected value calculation table 620 so that the storage controller 10 calculates the write total amount expected value. It may be.
  • the additional number 538 in the capacity requirement may be calculated based on the logical capacity guide value for each OP rate.
  • the additional number 540 in the total write amount requirement may be calculated based on the total write amount standard value for each OP rate.
  • the storage controller 10 displays the additional proposal information including the information indicating the added number and the OP rate when the number of added SSDs 21 is the smallest. For example, for each OP rate, additional proposal information including information indicating the additional number of SSDs 21 that satisfy the requirement may be displayed. That is, the additional information may include information indicating a plurality of combinations of combinations of the additional number and the OP rate that satisfy the requirement.
  • the storage controller 10 calculates the estimated result from the transition of the capacity use result.
  • the present invention is not limited to this.
  • the use result specified by the user from the management system 5 is used. By receiving it, you may obtain the use results in the future time.
  • the case where the block 211 is set to either the SLC mode or the TLC mode has been described as an example. However, for example, any combination of a plurality of modes may be used. Further, in the case where a mode capable of storing information of 4 bits or more is provided in the cell 215, a plurality of modes including or set to the mode may be used.
  • the write total amount expected value calculation table 620 stores a plurality of OP rates 622, an effective capacity expected value 624 and a write total amount expected value 627 for each OP rate 622, but the OP rate 622,
  • the relationship between the effective capacity expected value 624 and the write total amount expected value 627 may be expressed in other types such as a calculation formula.
  • the OP rate selection table 530 stores a plurality of OP rates 535, the expected effective capacity 536 and the expected write total amount 537 for each OP rate 535, but the OP rate 535, the expected effective capacity 536 and the expected write total amount.
  • the relationship with 537 may be expressed in other types such as a calculation formula.
  • the write total expected value calculation table 620a stores a plurality of SLC ratios 628, an effective capacity expected value 624 and a write total expected value 627 for each SLC ratio 628 for each of the plurality of OP rates 622.
  • the relationship between the OP rate 622 and the SLC ratio 628, the effective capacity expected value 624, and the write total amount expected value 627 may be expressed in other types such as a calculation formula.
  • the OP rate selection table 530a for each of the plurality of OP rates 535, a plurality of SLC ratios 541, an expected effective capacity 536 and an expected total write amount 537 for each SLC ratio 541 are stored.
  • the relationship between the SLC ratio 541, the expected effective capacity 536, and the expected write total amount 537 may be expressed in another type such as a calculation formula.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

La présente invention porte sur un système informatique qui calcule une quantité supplémentaire cible qui est soit une capacité logique supplémentaire cible déterminée sur la base d'une capacité logique totale requise et de la limite supérieure actuelle de la capacité logique totale, soit une quantité supplémentaire cible d'écritures déterminée sur la base d'une quantité totale requise d'écritures et de la limite supérieure actuelle de la quantité totale d'écritures, ou les deux. La capacité logique totale est la somme des capacités logiques fournies par tous les dispositifs de mémoire non volatile. La quantité totale d'écritures est la somme des quantités d'écritures dans tous les dispositifs de mémoire non volatile. La quantité d'écritures dans chaque dispositif de mémoire non volatile est la quantité de données écrites dans la mémoire non volatile du dispositif de mémoire non volatile. Le système informatique affiche des informations de suggestion d'ajout comprenant des informations relatives à la relation entre (b1) et (b2) : (b1) ladite quantité supplémentaire cible ; et (b2) le nombre de dispositifs de mémoire non volatile à ajouter et le rapport OP de ces dispositifs de mémoire non volatile à ajouter.
PCT/JP2017/010501 2017-03-15 2017-03-15 Système informatique et procédé de gestion WO2018167890A1 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2017/010501 WO2018167890A1 (fr) 2017-03-15 2017-03-15 Système informatique et procédé de gestion

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2017/010501 WO2018167890A1 (fr) 2017-03-15 2017-03-15 Système informatique et procédé de gestion

Publications (1)

Publication Number Publication Date
WO2018167890A1 true WO2018167890A1 (fr) 2018-09-20

Family

ID=63521863

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2017/010501 WO2018167890A1 (fr) 2017-03-15 2017-03-15 Système informatique et procédé de gestion

Country Status (1)

Country Link
WO (1) WO2018167890A1 (fr)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200074844A (ko) * 2018-12-17 2020-06-25 웨스턴 디지털 테크놀로지스, 인코포레이티드 데이터 저장 시스템 및 데이터 저장 시스템 성능, 용량 및/또는 동작 요건을 자율적으로 적응시키기 위한 방법
CN113360080A (zh) * 2020-03-06 2021-09-07 瑞昱半导体股份有限公司 存储空间管理方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003303054A (ja) * 2002-04-08 2003-10-24 Hitachi Ltd 計算機システム、記憶装置及び記憶装置運用監視方法
JP2003345632A (ja) * 2002-05-23 2003-12-05 Hitachi Ltd ストレージ機器管理方法、システム、およびプログラム
JP2014513356A (ja) * 2011-04-26 2014-05-29 エルエスアイ コーポレーション 不揮発性記憶のための可変オーバープロビジョニング
JP2017037501A (ja) * 2015-08-11 2017-02-16 富士通株式会社 ストレージ制御装置およびストレージ制御プログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003303054A (ja) * 2002-04-08 2003-10-24 Hitachi Ltd 計算機システム、記憶装置及び記憶装置運用監視方法
JP2003345632A (ja) * 2002-05-23 2003-12-05 Hitachi Ltd ストレージ機器管理方法、システム、およびプログラム
JP2014513356A (ja) * 2011-04-26 2014-05-29 エルエスアイ コーポレーション 不揮発性記憶のための可変オーバープロビジョニング
JP2017037501A (ja) * 2015-08-11 2017-02-16 富士通株式会社 ストレージ制御装置およびストレージ制御プログラム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200074844A (ko) * 2018-12-17 2020-06-25 웨스턴 디지털 테크놀로지스, 인코포레이티드 데이터 저장 시스템 및 데이터 저장 시스템 성능, 용량 및/또는 동작 요건을 자율적으로 적응시키기 위한 방법
KR102321947B1 (ko) 2018-12-17 2021-11-03 웨스턴 디지털 테크놀로지스, 인코포레이티드 데이터 저장 시스템 및 데이터 저장 시스템 성능, 용량 및/또는 동작 요건을 자율적으로 적응시키기 위한 방법
US11500714B2 (en) 2018-12-17 2022-11-15 Western Digital Technologies, Inc. Apparatus and method for regulating available storage of a data storage system
CN113360080A (zh) * 2020-03-06 2021-09-07 瑞昱半导体股份有限公司 存储空间管理方法

Similar Documents

Publication Publication Date Title
US20240045619A1 (en) Storage system, information processing system and method for controlling nonvolatile memory
US20200218655A1 (en) Storage system and information processing system for controlling nonvolatile memory
US10372331B2 (en) Storage system, information processing system and method for controlling nonvolatile memory
US20220414002A1 (en) Memory system and method for controlling nonvolatile memory
JP6414852B2 (ja) メモリシステムおよび制御方法
CN110321247B (zh) 内存系统
US9529535B2 (en) Storage system and method of control for storage system
US10241909B2 (en) Non-volatile memory device
US9298534B2 (en) Memory system and constructing method of logical block
JP6286622B2 (ja) ストレージシステム
JP2018120439A (ja) メモリシステムおよび制御方法
WO2015008375A1 (fr) Dispositif de stockage et procédé de commande de stockage
JP2018049522A (ja) メモリシステム及び制御方法
JP2018049523A (ja) メモリシステムおよび制御方法
JP2017027388A (ja) メモリシステムおよび不揮発性メモリの制御方法
KR20210111527A (ko) 메모리 시스템에서 가비지 컬렉션을 수행하는 장치 및 방법
JP6716757B2 (ja) メモリシステムおよび制御方法
JP6805110B2 (ja) ストレージシステム及びその制御方法
WO2018167890A1 (fr) Système informatique et procédé de gestion
US10684785B2 (en) Storage system
KR20210142863A (ko) 데이터 처리 시스템의 동작 효율성을 높이기 위한 장치 및 방법
JP6721765B2 (ja) メモリシステムおよび制御方法
JP6666405B2 (ja) メモリシステムおよび制御方法
JP2019016386A (ja) メモリシステムおよび制御方法
JP2018200720A (ja) メモリシステム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17900615

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17900615

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP