WO2014147786A1 - ストレージシステム及びデータ管理方法 - Google Patents

ストレージシステム及びデータ管理方法 Download PDF

Info

Publication number
WO2014147786A1
WO2014147786A1 PCT/JP2013/058047 JP2013058047W WO2014147786A1 WO 2014147786 A1 WO2014147786 A1 WO 2014147786A1 JP 2013058047 W JP2013058047 W JP 2013058047W WO 2014147786 A1 WO2014147786 A1 WO 2014147786A1
Authority
WO
WIPO (PCT)
Prior art keywords
format
data
storage device
storage
determination
Prior art date
Application number
PCT/JP2013/058047
Other languages
English (en)
French (fr)
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/JP2013/058047 priority Critical patent/WO2014147786A1/ja
Priority to US14/758,839 priority patent/US9740420B2/en
Publication of WO2014147786A1 publication Critical patent/WO2014147786A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of 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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/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/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0661Format or protocol conversion arrangements
    • 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/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • 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

Definitions

  • the present invention relates to a data management technique in a storage system.
  • a technology has been devised in which a flash drive is shared by a plurality of storage devices.
  • One of the purposes of this technology is to make data movement unnecessary even when an existing storage device is migrated to a new generation storage device.
  • this technology is based on the premise that the physical format (block size) and data security code format for the data handled by the pre-migration storage device and the post-migration storage device are the same. It cannot be applied to migration between storage devices that handle data.
  • HDD Hard Disk Disk Drive
  • the data format handled by the migration source storage device is different from the data format handled by the migration destination storage device, all data managed by the migration source storage device is temporarily read from the storage device, and this data is transferred to the migration destination storage device. It is necessary to perform processing to change the format handled by the storage device and write the changed data to the storage device.
  • the storage system includes a storage device and a storage device that is a basis of a storage area provided to the storage device.
  • the storage device determines whether or not the first format that is the format of the data stored in the storage device matches the second format that is the format of the data used by the storage device that manages the data, When the first format and the second format do not match each other, either converting the data in the first format into data in the second format or converting the data in the second format into data in the first format Format conversion is performed.
  • the “storage device” referred to in the present specification may be a device having a RAID (Redundant Array of Independent Disks) group composed of one or a plurality of nonvolatile storage devices, or a device not having a RAID group. It may be.
  • RAID Redundant Array of Independent Disks
  • the processing load on the storage apparatus can be reduced, and the storage apparatus can be used early.
  • FIG. 1 is a configuration diagram of the storage system according to the first embodiment.
  • FIG. 2 is a diagram illustrating a device allocation unit according to the first embodiment.
  • FIG. 3 is a configuration diagram of an LU management table according to the first embodiment.
  • FIG. 4 is a configuration diagram of a RAID group management table according to the first embodiment.
  • FIG. 5 is a configuration diagram of a device according to the first embodiment.
  • FIG. 6 is a configuration diagram of a format type management table according to the first embodiment.
  • FIG. 7 is a configuration diagram of a format type table according to the first embodiment.
  • FIG. 8 is a configuration diagram of a logical-physical conversion table according to the first embodiment.
  • FIG. 9 is a flowchart of the initial setting process according to the first embodiment.
  • FIG. 9 is a flowchart of the initial setting process according to the first embodiment.
  • FIG. 10 is a flowchart of the page format initial setting process according to the first embodiment.
  • FIG. 11 is a diagram illustrating an overview of migration of the storage apparatus according to the first embodiment.
  • FIG. 12 is a diagram illustrating a state of the format type management table after the storage apparatus migration according to the first embodiment.
  • FIG. 13 is a flowchart of the reclamation process according to the first embodiment.
  • FIG. 14 is a flowchart of the device read process according to the first embodiment.
  • FIG. 15 is a flowchart of the device write process according to the first embodiment.
  • FIG. 16 is a flowchart of the load distribution process according to the first embodiment.
  • FIG. 17 is a flowchart of the storage read process according to the second embodiment.
  • FIG. 18 is a flowchart of the storage write process according to the second embodiment.
  • the information of the present invention may be described by an expression such as “aaa table”.
  • the information may be expressed by other than a data structure such as a table. Therefore, the “aaa table” or the like may be referred to as “aaa information” to indicate that it does not depend on the data structure.
  • the expression “number” is used, but it can be replaced with identification information, an identifier, a name, a name, and the like.
  • a plurality of storage apparatuses 10 share one device unit (shared device unit) 34.
  • the storage area in one device unit 34 is divided, and the divided storage areas (device allocation areas) are allocated to the respective storage apparatuses 10, so that each storage apparatus 10 shares the device unit 34. It can be so.
  • the device allocation area may be provided to the host computer as a logical unit (LU) that is a logical storage device (may be an online LU), or may be provided to the host computer 10 by the storage apparatus 10. It may be a storage area (for example, an offline LU) that is used without being used.
  • the device (storage device) 40 provided in the shared device unit 34 has a format type (first type) of data stored in the area for each predetermined area unit (for example, for each page unit). (Format specifying information) and the format type (information specifying the second format) used by each storage apparatus 10 is managed.
  • the device 40 receives the format type used by the storage apparatus 10 from the storage apparatus 10 and, at a predetermined time, for example, when executing reclamation, the format type of data stored in a predetermined area of the device 40 Then, it is determined whether or not the format type of the storage apparatus 10 to which this area is allocated matches, and if not, the data in this area of the device 40 is read and the read data is stored in the storage apparatus 10 format types are converted and written to the device 40.
  • the storage apparatus 10 can appropriately change the format of the device 40 to the format of the storage apparatus 10 without performing format change processing (data movement or the like). Therefore, the processing load of the storage apparatus 10 can be reduced.
  • the storage apparatus 10 may be one instead of plural.
  • FIG. 1 is a configuration diagram of a storage system according to the first embodiment.
  • the storage system includes one or more host computers 50 and a storage system connected to the one or more host computers 50.
  • the storage system includes a plurality of storage apparatuses 10 (10A, 10B, 10C, etc.) and a shared device unit 34.
  • the host computer 50 and the storage device 10 are connected via a network 60.
  • the host computer 50 communicates with the storage device 10 connected to the network 60.
  • the host computer 50 transmits an I / O (Input / Output) command (Read command or Write command) to the storage apparatus 10.
  • the I / O command is associated with I / O destination information, which is information for specifying the storage area of the I / O destination.
  • the I / O destination information includes identification information of the storage area of the I / O destination (for example, LUN (Logical Unit Number) of the LU) and information for specifying the I / O destination area in the storage area of the I / O destination. (For example, LBA (Logical Block Address)).
  • the storage apparatus 10 manages one or more storage areas realized by at least one of the storage medium of the shared device unit 34 and the storage medium of the exclusive device unit 36, and provides the host computer 50 with the one or more storage areas. .
  • the storage apparatus 10 receives an I / O command from the host computer 50 and executes I / O (Read or Write) of data (user data) for a storage area specified by the received I / O command.
  • the storage device 10 has a storage controller 20 (20A, 20B, 20C, etc.).
  • the storage controller 20 executes control processing for the storage apparatus 10.
  • the storage controller 20 includes an FEPK (Front End Package) 21, a BEPK (Back End Package) 22, a cache memory (CM) 23, a processor 24, and a control memory 25.
  • the FEPK21, BEPK22, CM23, processor 24, and control memory 25 are connected via an internal network.
  • the FEPK 21 is an interface for communicating with the host computer 50.
  • the FEPK 21 is connected to the network 60.
  • the BEPK 22 is an interface for connecting to the shared device unit 34 and the exclusive device unit 36.
  • the CM 23 temporarily stores data to be written to the shared device unit 34 or the exclusive device unit 36 or data read from the shared device unit 34 or the exclusive device unit 36.
  • the processor 24 executes various processes by executing a program stored in the control memory 25.
  • the control memory 25 stores various programs and various information.
  • the control memory 25 stores an LU management table 110 (see FIG. 3) and a RAID group management table 150 (see FIG. 4).
  • the storage apparatus 10 may include the dedicated device unit 36 inside, for example, like the storage apparatuses 10B and 10C, or may not include the dedicated device unit 36 inside like the storage apparatus 10A.
  • the exclusive device unit 36 includes a switch (SW) 38 and a device 40.
  • the switch 38 of the dedicated device unit 36 is connected to the BEPK 22 of the storage controller 20 of the storage apparatus 10 to which the dedicated device unit 36 belongs, and only the storage controller 20 can access the device 40.
  • the device 40 may be an HDD (Hard Disk Drive) (for example, SATA (Serial ATA (Advanced Technology Attachment)) HDD, SAS (Serial Attached SCSI (Small Computer System Interface) HDD), or a nonvolatile memory drive (for example, an SSD).
  • a simple flash drive for example, SATA (Serial ATA (Advanced Technology Attachment)) HDD, SAS (Serial Attached SCSI (Small Computer System Interface) HDD), or a nonvolatile memory drive (for
  • the flash memory (FM) included in the flash drive is composed of a plurality of blocks, and each block is an FM (for example, a NAND type FM) composed of a plurality of pages.
  • the FM may be a type of FM in which data cannot be newly written to the page unless data is erased from the page.
  • the FM may be a type of FM in which reading and writing are performed in units of pages and erasing is performed in units of blocks.
  • the shared device unit (also referred to as device unit # 0) 34 includes a SW 38 and a device (storage device) 40.
  • the device 40 has a storage area.
  • the switch 38 of the shared device unit 34 is connected to the storage controller 20 of the plurality of storage apparatuses 10 (specifically, the BEPK 22 of the storage controller 20) via the cable 42.
  • the switch 38 is connected to the storage controllers 20A, 20B, and 20C via the cable 42.
  • the cable 42 may be, for example, a SAS cable or a PCIe (Peripheral Component Interconnect Express) cable.
  • FIG. 2 is a diagram for explaining a device allocation unit according to the first embodiment.
  • the RAID group 300 is configured by storage areas of storage media (for example, flash memory chips (FM chips) 47) of a plurality of devices 40.
  • the RAID group 300 has a RAID configuration of a predetermined RAID level in consideration of data redundancy in preparation for a failure.
  • the storage media constituting the RAID group 300 need to be stored in the same device unit.
  • the RAID group 300 is the basis of one or more logical units (LU) 302 (302A, 302B, 302C in FIG. 2).
  • the LU 302 may be divided and managed in units of chunks 306 that are predetermined data units.
  • the chunk 306 may be divided into pages 304 (304C) that are smaller data units and managed.
  • the data unit allocated to the storage apparatus 10 by the shared device unit 34 and the dedicated device unit 36 may be a RAID group 300 unit, an LU 302 unit, a chunk 306 unit, or a page 304 unit.
  • the data allocation unit is recognized as the LU 302 from the host computer 50, it is desirable that the data allocation arrangement change considering the performance load distribution is performed in an allocation unit smaller than the LU 302 unit.
  • Each storage apparatus 10 provides one or more LUs 302 to the host computer 50.
  • a storage area is allocated to the storage device 10 in units of chunks 306 (or pages 304).
  • FIG. 3 is a configuration diagram of an LU management table according to the first embodiment.
  • the LU management table 110 is a table for managing information on LUs existing in the shared device unit 34 and the exclusive device unit 36, and includes an LU number (LUN) 111, a size 112, a RAID group number (#) 113, and a RAID level. 114 and the first RG physical address 115.
  • LUN 111 is an LU identification number recognized by the host computer 50.
  • the size 112 is the size of the LU corresponding to the LUN 111.
  • RAID Group # 113 is the number of the RAID group to which the LU corresponding to LUN 111 belongs.
  • the RAID level 114 is the RAID level of the RAID group of RAID Group # 113.
  • the physical address 115 in the first RG is an address (physical address in the first RG) indicating the head in the RAID Group of the physical storage area in which the LU data corresponding to the LUN 111 is stored.
  • FIG. 4 is a configuration diagram of a RAID group management table according to the first embodiment.
  • the RAID group management table 150 is a table for managing information indicating which device of which device unit the RAID group used by the storage apparatus 10 is configured, and RAID Group # 151, RAID level 152, , Device unit number (#) 153, RG capacity 154, drive number 155, drive capacity 156, conversion function presence / absence 157, and drive notification device number (#) 158.
  • RAID Group # 151 is a RAID group number.
  • the RAID level 152 is the RAID level of the RAID group of RAID Group # 151.
  • Device unit # 153 is the number of the device unit that stores the RAID group of RAID Group # 151.
  • the RG capacity 154 is the capacity of the RAID group of RAID Group # 151.
  • the drive number 155 is the number (drive number) of the device 40 constituting the storage area of the RAID group of RAID Group # 151.
  • the drive capacity 156 is the capacity of the storage area provided from the device 40 with drive number 155 to the RAID group with RAID Group # 151.
  • the conversion function presence / absence 157 indicates whether or not the device 40 with the drive number 155 has a function of converting the data format to another format (format conversion function). For example, when the device 40 is a flash drive according to the present embodiment, since it has a format conversion function, the conversion function presence / absence 157 is “present”. For example, if the device 40 is an existing HDD, Since the format conversion function is not provided, the conversion function presence / absence 157 is “none”.
  • the drive notification device # 158 is a device number that the device 40 with the drive number 155 recognizes as the number of the storage device 10 that stores the RAID group management table 150.
  • FIG. 5 is a configuration diagram of a device according to the first embodiment.
  • the device 40 includes a memory controller 41 and one or more FM chips 47.
  • the memory controller 41 includes a host interface 42, a CPU 43, a memory interface 44, a cache memory (CM) 45, and a control memory 46.
  • CM cache memory
  • the host interface 42 is an interface for communicating with a host device (for example, the storage device 10).
  • the upper interface 42 is connected to the SW 38 via a cable.
  • the memory interface 44 is an interface for communicating with the FM chip 47.
  • the memory interface 44 is connected to a plurality of FM chips 47 via a cable.
  • the CM 45 temporarily stores data to be written to the FM chip 47 or data read from the FM chip 47.
  • the CPU 43 executes various processes by executing programs stored in the control memory 46.
  • the control memory 46 stores various programs and various information.
  • the control memory 46 stores a file format type management table 400 (see FIG. 6), a file format type table 500 (see FIG. 7), and a logical physical conversion table 550 (see FIG. 8).
  • FIG. 6 is a configuration diagram of a format type management table according to the first embodiment.
  • the format type management table 400 is a table for managing the format type of data used by each storage apparatus 10.
  • the format type management table 400 includes a device number (#) 410 and a device format type 420.
  • the device number (#) 410 is a device number for identifying the storage device 10 in the device 40 storing the format type management table 400.
  • the format type 420 is a format type used in the storage apparatus 10 indicated by the apparatus # 410.
  • the format type indicates a physical format (block size) of data, a data guarantee code, or the like.
  • the block is a data management unit on the storage controller 20 side of the storage apparatus 10, unlike the block indicating the erase unit of the FM chip 47.
  • the format type 420 is a format type name indicating the format type, and the specific contents corresponding to the format type name are managed in the format type table 500 (see FIG. 7).
  • FIG. 7 is a configuration diagram of a format type table according to the first embodiment.
  • the format type table 500 is a table for managing the specific contents of the format type, and includes a type 510, a block size 520, and a data guarantee code 530.
  • Type 510 is a format type name indicating a format type.
  • the block size 520 is the size of the block in the format corresponding to the type 510 format type.
  • the data guarantee code 530 is information for specifying a data guarantee code used in a format corresponding to the type 510 format type.
  • FIG. 8 is a configuration diagram of a logical-physical conversion table according to the first embodiment.
  • the logical / physical conversion table 550 is a table that manages the mapping between the page obtained by dividing the block in the device 40 (flash storage in this embodiment) and the logical address in the storage apparatus 10.
  • the logical / physical conversion table 550 includes a block # 551, an FM chip # 552, an in-block page # 553, a device # 554, a logical address 555, and a page format type 556.
  • Block # 551 is a block number for identifying the block.
  • the FM chip # 552 is the number (FM chip number) of the FM chip 47 that stores the block of the block # 551.
  • In-block page # 553 is a page number in the block of block # 551.
  • the device # 554 is the device number of the storage device 10 that manages the data of the page corresponding to the intra-block page # 553.
  • the logical address 555 is a logical address corresponding to page data corresponding to the intra-block page # 553.
  • the page format type 556 is a format type (page format type) of data stored in the page corresponding to the intra-block page # 553.
  • any one or a plurality of storage apparatuses 10 may be turned on.
  • a similar initial setting process is started in each storage device 10.
  • the shared device unit 34 may be energized before the storage apparatus 10 is turned on, or may be turned on together with the storage apparatus 10 being turned on.
  • FIG. 9 is a flowchart of the initial setting process according to the first embodiment.
  • the storage apparatus 10 When the power is turned on, the storage apparatus 10 issues an information acquisition command (for example, a command such as Mode Sense of the SCSI command) to each device 40 to acquire necessary information (step 610).
  • an information acquisition command for example, a command such as Mode Sense of the SCSI command
  • the device 40 that has acquired this information acquisition command responds with the device # of the currently connected storage device 10 as a response to this command (step 620).
  • the storage apparatus 10 determines whether it has already been connected to the shared device unit 34 or has been newly connected to the shared device unit 34 (step 630).
  • the device unit number of the shared device unit 34 and the device 40 are stored in the RAID group management table 150. It is possible to make a determination based on whether or not a search has been made with a drive number of. Specifically, if the RAID group management table 150 is searched by the device unit number of the shared device unit 34 and the drive number of the device 40 and hits, it can be determined that the connection has already been made, and the hit If not, it can be determined that the connection is new.
  • step 630 the storage apparatus 10 and the storage apparatus 10 of the drive notification apparatus # 152 in the entry hit in step 630 Is notified to the device 40 by an information setting command (a command such as Mode Select of the SCSI command) (step 640).
  • an information setting command a command such as Mode Select of the SCSI command
  • the device 40 searches the format type management table 400 for an entry corresponding to the notified device #, and stores the notified storage format type in the device format type 420 of the entry obtained by the search (step 650). . Thereby, the format type management table 400 of the device 40 manages the format type of the storage apparatus 10 currently connected.
  • step 630 new connection
  • the storage apparatus 10 checks the apparatus # acquired in step 620, and the apparatus # that is not used in the device 40 and itself Is notified to the device 40 (step 660).
  • the device 40 searches the format type management table 400 for an entry corresponding to the notified apparatus #, confirms that the notified apparatus # is an unused number, and notified the vacant entry.
  • Device # and device format type are set (step 670).
  • the format type management table 400 of the device 40 manages the format type of the storage apparatus 10 currently connected.
  • the storage apparatus 10 passes information indicating that it is a new connection.
  • the device 40 confirms that the notified apparatus # is a number that is not used.
  • the search of the format type management table 400 may not be performed.
  • the storage apparatus 10 needs to perform a data format conversion process of the device 40 to be used.
  • the I / O process can be executed on the device 40 without waiting for the end of the format conversion process. In the storage apparatus 10, the processing load hardly increases.
  • page format initial setting process in which the page format type 556 of the logical / physical conversion table 550 is initialized will be described.
  • the block page is an empty page that is not assigned to a logical address. Therefore, in the entry corresponding to each page in the logical-physical conversion table 550, the device # 554, logical in the entry is similar to the entry in which the intra-block page # 553 of the logical-physical conversion table 550 in FIG. Address 555 and page format type 556 are set as invalid values (Null).
  • FIG. 10 is a flowchart of the page format initial setting process according to the first embodiment.
  • the page format initial setting process is executed when the device 40 receives a Write command for a logical area (unallocated area) to which a page is not allocated from the storage apparatus 10.
  • the device 40 When the device 40 receives a write command for an unallocated page page from the storage device 10, the device 40 refers to the logical-physical conversion table 550, searches for one free page, and stores the write command source storage device 10. By setting the device # and the logical address of the unallocated area of the Write command to the apparatus # 554 of the entry corresponding to the empty page obtained by the search and the logical address # 555, the page is allocated to the unallocated area. (Step 680). Next, the device 40 acquires the device format type 420 corresponding to the device # of the storage device 10 that is the transmission source of the Write command from the format type management table 400 (step 685).
  • the device 40 writes the write target data (write data) received from the storage apparatus 10 in the allocated page according to the format type acquired in step 685 (step 690). Thereafter, after confirming that the writing has been completed normally, the device 40 sets the format type acquired in Step 685 to the device format type 556 of the entry corresponding to the allocated page of the logical-physical conversion table 550 (Step 685). 695).
  • an initial value is set in the page format type 556 of the entry corresponding to the newly allocated page.
  • FIG. 11 is a diagram for explaining the outline of migration of the storage apparatus according to the first embodiment.
  • FIG. 12 is a diagram illustrating a state of the format type management table after the storage apparatus migration according to the first embodiment.
  • FIG. 11 shows an example in which the storage apparatus 10 is migrated from the old storage apparatus (storage apparatus A) as the migration source to the new storage apparatus (storage apparatus C) as the migration destination.
  • the device # 0 is replaced from the storage device A to the storage device C for reasons such as hardware replacement.
  • the format type (FMT) of the storage apparatus A is the A type
  • the format type of the storage apparatus C is the B type
  • the format types of these storage apparatuses are different.
  • the storage device C takes over the configuration information, device #, etc. used in the storage device A by the existing method.
  • the LU management table 110 and the RAID group management table 150 stored in the storage device A are stored in the storage device C with the contents unchanged.
  • the format type management table 400 of the device 40 shows that the device format type 420 in the entry of the device # 0 corresponding to the storage device C is the migration source storage as shown in FIG.
  • the format type “A” of the device A is changed to “B”, which is the format type of the migration destination storage device C.
  • the apparatus format type 420 of the entry corresponding to the migration destination storage apparatus 10 in the format type management table 400 of the device 40 is changed to the storage apparatus 10 after the migration.
  • the format type is changed appropriately.
  • the reclamation process is a process of periodically reading out data and rewriting it in an empty area in order to protect the data from deterioration over time in a device 40 having an FM chip such as a flash drive. Since the FM chip progresses in a physical region, the reclamation process is often performed in units of blocks.
  • the block to be reclaimed is often selected based on the elapsed time since the last writing. In this way, when the elapsed time is used as a reference, a block with a short elapsed time from writing is excluded from the reclamation process.
  • a criterion for selecting a block to be reclaimed in addition to a general criterion, whether or not the format conversion of the data of the block is necessary is added. ing. As a result, even if the elapsed time from the previous writing is short, the reclamation process is executed for blocks that require format conversion. As a result, it is possible to convert the format of data requiring format conversion at an early stage. Whether or not format conversion is necessary is determined with respect to the page format type 556 of the entry corresponding to the page in a certain block of the logical-physical conversion table 550 and the format type management table corresponding to the device # 554 of the entry. The determination can be made based on whether the 400 device format types 420 match.
  • the page format type 556 and the device format type 420 match, it can be determined that format conversion is not necessary. If the page format type 556 and the device format type 420 do not match, format conversion is not possible. It can be determined that it is necessary. In addition, you may make it select the block which becomes the object of reclamation processing only by general criteria, and if it is a block which needs format conversion for the block which needs reclamation in this way, Since the format conversion is performed, the format conversion can be performed in parallel with the reclamation, so that the format conversion can be realized with a relatively small processing load.
  • FIG. 13 is a flowchart of the reclamation process according to the first embodiment.
  • the device 40 (specifically, the CPU 43) reads data of a block (referred to as a processing block in the description of FIG. 13) determined as a target for executing the reclamation processing to the CM 45 in the device 40 (step 710).
  • the device 40 for the first page in the processing block, the page format type 556 of the entry corresponding to the first page of the logical physical conversion table 550 and the device format of the format type management table 400 corresponding to the device # 554 of this entry.
  • the type 420 is compared (step 720), and it is determined whether or not the page format type 556 is different from the page format type 420 (step 730).
  • step 730 YES
  • the device format type 420 and the page format type 556 are different (step 730: YES)
  • the data (referred to as processing page) is converted into the device format type 420 format (step 730).
  • the device 40 changes the page format type 556 of the entry of the logical-physical conversion table 550 for the processing page to the converted format type (step 750), and the process proceeds to step 760.
  • step 730 NO
  • it is not necessary to convert the format type it is not necessary to convert the format type, and the process proceeds to step 760.
  • step 760 the device 40 determines whether or not the processing has been completed for all the pages in the processing block, and when the processing has not been performed for all the pages (step 760: NO). Then, the process proceeds to step 770, and for the next page of the processing block, the page format type 556 of the entry in the logical / physical conversion table 550 and the device format type 420 of the format type management table 400 corresponding to the device number 554 of this entry. (Step 770), and the process proceeds to step 730.
  • the device 40 transfers the data of the processing block in the CM 45 to the free area (empty block) of the FM chip 47.
  • the logical address of the entry corresponding to the processing block of the write / logical physical conversion table 550 is associated with the block corresponding to the free area (step 780). Specifically, the device 40 sets the device # 554, the logical address 555, and the page format type 556 corresponding to the processing block of the logical-physical conversion table 550 to the entry corresponding to the block of the empty area where the data is written. Store.
  • reclamation can be executed for one block, and if there is another block to be subjected to the reclamation process, the device 40 executes the same process as that for the block. .
  • the storage device 10 and the device are converted because the format of the block data that needs to be converted is converted by replacing the storage device 10.
  • the data format can be effectively converted while suppressing an increase in the processing load of 40.
  • the storage device 10 can also know that the format has been changed, the reclamation processing start timing and the target page for the format change are given from the storage device 10 to the device 40 side. May be. In this case, it is necessary to manage the target page on the storage apparatus 10 side, and a large amount of memory is required for the management information, and the performance is increased due to the overhead of instructions from the storage apparatus 10 to the device 40. May deteriorate.
  • the storage apparatus 10 side particularly There is no need for management, and it is possible to perform processing with the device 40 alone without adding new management information. Further, since exchange between the storage apparatus 10 and the device 40 is not necessary, it is possible to prevent the performance degradation of the storage apparatus 10 and the device 40.
  • FIG. 14 is a flowchart of device read processing according to the first embodiment.
  • the device read process is performed when the device 40 receives a read command from the storage apparatus 10.
  • the data conversion of the device 40 is necessary, for example, by migrating the storage apparatus 10 and the format conversion by the reclamation process is not performed,
  • the processing operation when the Read command is received is also included.
  • the page of the entry corresponding to the Read target page of the logical-physical conversion table 550 for the page storing the data targeted by the Read command (Read target page).
  • the format type 556 is compared with the device format type 420 of the format type management table 400 corresponding to the device # 554 of this entry (step 810), and whether or not the page format type 556 is different from the page format type 420. Is determined (step 820).
  • step 820 YES
  • the format type of the storage device 10 that uses the data of the read target page is changed, and the reclamation is still in progress.
  • the device 40 reads the data of the read target page from the FM chip 47 to the CM 45, and converts the read data into the format of the device format type 420 (step 830). )
  • the process proceeds to step 850.
  • step 820 if the device format type 420 and the page format type 556 are not different (step 820: NO), it means that the data format is the device format type 420, and therefore the device 40 reads Read. Data of the target page is read from the FM chip 47 to the CM 45, and the process proceeds to Step 850.
  • step 850 the device 40 responds to the storage apparatus 10 with the data converted into the format of the device format type 420 in step 830 or the data read in step 840 (step 850).
  • the device 40 responds to the storage apparatus 10 as data of an appropriate format even when a read command is received for data that requires format conversion but has not yet been format converted. can do.
  • FIG. 15 is a flowchart of the device write process according to the first embodiment.
  • the device write process is performed when the device 40 receives a write command from the storage apparatus 10.
  • this device write processing when the data conversion of the device 40 is necessary, for example, by migrating the storage apparatus 10 and the format conversion by the reclamation processing is not performed, The processing operation when the Write command is received is also included.
  • the device 40 When the device 40 (specifically, the CPU 43) receives the write command from the storage apparatus 10, it stores the write target data of the write command in the CM 45 (step 910). Next, the device 40 sets the page format type 556 of the entry corresponding to the Write target page of the logical-physical conversion table 550 and the device # 554 of this entry for the page where the data is stored (Write target page) as the target of the Write command. Is compared with the device format type 420 of the format type management table 400 corresponding to (step 920), and it is determined whether or not the page format type 556 is different from the page format type 420 (step 930).
  • the device format type 420 and the page format type 556 are different, the format type of the storage device 10 that uses the data of the write target page is changed, and format conversion by reclamation processing is still performed. Therefore, if the write data, which is the format type after the change of the storage apparatus 10, is stored as it is, an inconsistency occurs.
  • the device format type 420 and the page format type 556 are different (step 930: YES)
  • the write data of the CM 45 is converted into the format of the page format type 556, and on the page.
  • the consistency of the format of the data and the write data is matched (step 940), and the process proceeds to step 950. Note that the format conversion of the data of this page is executed in the reclamation process.
  • step 930 NO
  • the format of the page data is the device format type 420, and thus the process is performed. Proceed to 950.
  • step 950 the device 40 writes the CM 45 data (the data converted into the page format type 420 format in step 940 or the data stored in step 910) into the FM chip 47.
  • the device 40 maintains consistency in the FM chip 47 even when a write command is received for data of a page that has not been format-converted, although format conversion is necessary. Data can be stored in state.
  • the storage apparatus 10 is migrated to another new storage apparatus 10 has been described as an example.
  • a new storage apparatus 10 is added to the storage system, that is, a new storage apparatus is newly added.
  • the same effect as described above can be obtained by executing the above-described configuration and processing as they are. That is, even when a new storage device 10 is added, the storage device 10 can perform I / O processing without waiting for the end of the data format conversion processing, and performance degradation hardly occurs.
  • the load distribution among the storage apparatuses 10 is performed when, for example, the load of each storage apparatus 10 is monitored and the load of one storage apparatus 10 is relatively heavy and the load of the other storage apparatus 10 is relatively light.
  • the case where the other storage device 10 is in charge of the LU that the storage device 10 is in charge of, or the storage device 10 that is relatively lightly loaded is the LU that the other storage device 10 is in charge of itself There are cases where such changes are made.
  • FIG. 16 is a flowchart of the load distribution process according to the first embodiment.
  • the load distribution process is executed when a load distribution instruction is received from the storage apparatus 10.
  • the device 40 When the device 40 acquires the migration source logical address, the device # of the migration destination storage device 10 and the migration destination logical address as a load distribution instruction from the storage device 10 (step 1010), the acquired migration source The page number of the migration source is calculated based on the logical address (step 1020). Next, the device 40 indicates the device # 554 and the logical address 555 of the entry of the logical-physical conversion table 550 corresponding to the calculated page number, and the device # of the migration destination storage device notified from the storage device 10 and the logical of the migration destination. The address is changed (step 1030).
  • the load distribution instruction notified to the device 40 by the storage apparatus 10 may include a plurality of combinations of the migration source logical address, the migration destination storage apparatus #, and the migration destination logical address. In this case, the processing of step 1020 and step 1030 is executed for each group.
  • the above-described processing on the device 40 side (reclamation process, device read process, device write process) is executed, so that the format of the data of the page targeted for load balancing is executed. Conversion and I / O processing for the data of the page can be appropriately performed. Further, the storage apparatus 10 can perform I / O processing without waiting for the end of the data format conversion processing, and performance degradation hardly occurs.
  • the storage system according to the second embodiment has a function (format conversion function) for executing the reclamation process, the device read process, and the device write process according to the first embodiment as the device 40 in the storage system illustrated in FIG.
  • Storage device first storage device
  • second storage device for example, a general HDD
  • the storage apparatus 10 is configured to newly execute the following storage read process and storage write process.
  • FIG. 17 is a flowchart of the storage read process according to the second embodiment.
  • the storage read process is a process executed when the storage apparatus 10 receives a read command from the host computer 50.
  • the storage apparatus 10 When the storage apparatus 10 receives the Read command from the host computer 50 (Step 1100), it determines from the Read command whether the device 40 that manages the target data (Read data) has a format conversion function (Step 1110). . Whether or not the device 40 that manages the Read data has a format conversion function is determined by referring to the LU management table 110 and the RAID group management table 150 based on the LUN and logical address included in the Read command. By identifying an entry corresponding to the device 40 that manages the read data in the table 150 and referring to the conversion function presence / absence 157 of this entry, the entry can be grasped.
  • Step 1110 when the device 40 that manages the Read data has a format conversion function (Step 1110: YES), the storage apparatus 10 transmits a Read command to the device 40 that manages the Read data (Step 1120).
  • the device 40 that has received the Read command executes the device Read process shown in FIG. 14 and returns Read data that is the format type of the storage apparatus 10 as a response to the storage apparatus 10.
  • the storage apparatus 10 acquires the read data returned from the device 40, returns the acquired read data to the host computer 50 as a response (step 1130), and ends the storage read process.
  • Step 1110 when the device 40 that manages the Read data does not have the format conversion function (Step 1110: NO), the storage apparatus 10 transmits a Read command to the device 40 that manages the Read data (Step 1140).
  • the device 40 that has received the Read command executes general Read processing, and returns Read data as the format type stored in the device 40 as a response to the storage apparatus 10.
  • the storage apparatus 10 acquires the Read data returned from the device 40, and when the format type of the device 40 is different from the format type of the storage apparatus 10, converts the Read data into the format of the storage apparatus 10 format type. (Step 1150).
  • the storage apparatus 10 returns Read data as a response to the host computer 50 (Step 1160), and terminates the storage Read process.
  • the device format data without the format conversion function can be appropriately converted into the storage device 10 format and acquired.
  • FIG. 18 is a flowchart of the storage write process according to the second embodiment.
  • the storage write process is a process executed when the storage apparatus 10 receives a write command from the host computer 50.
  • the storage apparatus 10 determines whether or not the device 40 that manages the target data (Write data) has a format conversion function from the Write command (Step 1210). . Whether or not the device 40 that manages the write data has a format conversion function is determined by referring to the LU management table 110 and the RAID group management table 150 based on the LUN and logical address included in the Write command. By identifying an entry corresponding to the device 40 that manages the write data of the table 150 and referring to the conversion function presence / absence 157 of this entry, the entry can be grasped.
  • the storage apparatus 10 transmits the write command to the device 40 that manages the write data (step 1220).
  • the device 40 that has received the write command executes the device write process shown in FIG. 15 and returns a response to the storage apparatus 10.
  • the storage apparatus 10 When the storage apparatus 10 receives the response Write returned from the device 40, the storage apparatus 10 returns a response to the host computer 50 (Step 1230), and ends the storage Write process.
  • step 1210 determines that the write type of the device 40 is different from the format type of the storage apparatus 10.
  • the data is converted into the format of the storage device 10 (step 1240).
  • the storage apparatus 10 transmits a write command together with the write data to the device 40 that manages the write data (step 1250). At this time, if the storage apparatus 10 converts the write data format in step 1240, the storage apparatus 10 transmits the converted write data to the device 40. Note that the device 40 that has received the write command executes general write processing, stores write data in the device 40, and returns a response to the storage apparatus 10.
  • the storage apparatus 10 when receiving a response from the device 40, the storage apparatus 10 returns a response to the write command to the host computer 50 (step 1260), and ends the storage write process.
  • 10A, 10B, 10C Storage device 34: Shared device unit 40: Device

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)

Abstract

 ストレージシステムは、ストレージ装置と、ストレージ装置に提供される記憶領域の基になる記憶デバイスとを有する。記憶デバイスは、記憶デバイスに格納しているデータのフォーマットである第1フォーマットと、データを管理するストレージ装置が利用するデータのフォーマットである第2フォーマットとが互いに一致しているか否かを判断し、第1フォーマットと第2フォーマットとが互いに一致していない場合に、第1フォーマットのデータを第2フォーマットのデータに変換することと第2フォーマットのデータを第1フォーマットのデータに変換することのいずれかであるフォーマット変換を行う。

Description

ストレージシステム及びデータ管理方法
 本発明は、ストレージシステムにおけるデータ管理技術に関する。
 近年、フラッシュメモリの低価格化が進み、フラッシュメモリを備えた高速なフラッシュドライブ(例えば、SSD:Solid State Drive)がストレージシステムにも搭載されるようになっている。このようなストレージ装置では、フラッシュドライブの性能が高いために、ストレージ装置のコントローラが有するのマイクロプロセッサ(MP)がネックとなってしまってフラッシュデバイスのリソースを充分に利用することができない問題がある。
 これに対して、複数のストレージ装置によりフラッシュドライブを共有して使用する技術が考案されている。この技術は、既存のストレージ装置を新しい世代のストレージ装置に移行した場合であっても、データ移動を不要にできることも目的の一つとされている。
 しかし、この技術においては、移行前のストレージ装置と、移行後のストレージ装置とが扱うデータについての物理フォーマット(ブロックサイズ)やデータ保障コード等のフォーマットが同一であることを前提としており、異なるフォーマットを扱うストレージ装置間での移行には適用できない。
 近年では、信頼性の向上のために、ストレージ装置が扱うデータのデータ保障コードのフォーマットが変更になるようなケースもある。また、4KBセクタ(ブロック)で構成されたHDD(Hard Disk Drive)も登場してきており、将来的には、512byteから4KBブロックへのフォーマットの変更等が発生することが考えられる。したがって、フォーマットの異なるストレージ装置間の移行が頻繁に発生する可能性が考えられる。
 一方、移行先のストレージ装置の属性情報(セクタサイズ等)を取得し、属性情報に基づいてフォーマットを変更してから移行先のストレージ装置にデータを移行する技術が知られている(例えば、特許文献1参照)。
特開2008-152422号公報
 移行元のストレージ装置が扱うデータフォーマットと移行先のストレージ装置が扱うデータフォーマットが異なっている場合、移行元のストレージ装置が管理していた全てのデータを記憶デバイスから一旦読み出し、このデータを移行先のストレージ装置が取り扱うフォーマットに変更をし、変更したデータを記憶デバイスに書込む処理が必要となる。
 このため、この処理が終了するまでは移行元のストレージ装置を利用することができないという問題がある。近年、ストレージ装置が管理するデータ量が増加し続けており、このフォーマット変換を伴うデータ移動の処理に要する時間が長期化してしまう虞がある。
 このようなストレージ装置間でデータを移行する場合だけに限らず、例えば、データを管理するストレージ装置を、取り扱うフォーマットが異なる別のストレージ装置に変更する場合等においても、データを別のフォーマットに変換する処理を実行する必要があり、この場合においても同様な問題が発生し得る。
 ストレージシステムは、ストレージ装置と、ストレージ装置に提供される記憶領域の基になる記憶デバイスとを有する。記憶デバイスは、記憶デバイスに格納しているデータのフォーマットである第1フォーマットと、データを管理するストレージ装置が利用するデータのフォーマットである第2フォーマットとが一致しているか否かを判断し、第1フォーマットと第2フォーマットとが互いに一致していない場合に、第1フォーマットのデータを第2フォーマットのデータに変換することと第2フォーマットのデータを第1フォーマットのデータに変換することのいずれかであるフォーマット変換を行う。
 なお、本明細書で言う「ストレージ装置」は、1又は複数の不揮発性記憶デバイスで構成されたRAID(Redundant Array of Independent Disks)グループを有する装置であっても良いし、RAIDグループを有しない装置であっても良い。
 本発明によると、データのフォーマットを変換する必要がある場合において、ストレージ装置における処理の負荷を軽減でき、ストレージ装置を早期に利用できるようにすることができる。
図1は、実施例1に係るストレージシステムの構成図である。 図2は、実施例1に係るデバイス割当単位を説明する図である。 図3は、実施例1に係るLU管理テーブルの構成図である。 図4は、実施例1に係るRAIDグループ管理テーブルの構成図である。 図5は、実施例1に係るデバイスの構成図である。 図6は、実施例1に係るフォーマットタイプ管理テーブルの構成図である。 図7は、実施例1に係るフォーマットタイプテーブルの構成図である。 図8は、実施例1に係る論理物理変換テーブルの構成図である。 図9は、実施例1に係る初期設定処理のフローチャートである。 図10は、実施例1に係るページフォーマット初期設定処理のフローチャートである。 図11は、実施例1に係るストレージ装置の移行の概要を説明する図である。 図12は、実施例1に係るストレージ装置移行後のフォーマットタイプ管理テーブルの状態を示す図である。 図13は、実施例1に係るリクラメーション処理のフローチャートである。 図14は、実施例1に係るデバイスRead処理のフローチャートである。 図15は、実施例1に係るデバイスWrite処理のフローチャートである。 図16は、実施例1に係る負荷分散処理のフローチャートである。 図17は、実施例2に係るストレージRead処理のフローチャートである。 図18は、実施例2に係るストレージWrite処理のフローチャートである。
 幾つかの実施例を、図面を参照して説明する。なお、以下に説明する実施例は特許請求の範囲にかかる発明を限定するものではなく、また実施例の中で説明されている諸要素及びその組み合わせの全てが発明の解決手段に必須であるとは限らない。
 なお、以後の説明では「aaaテーブル」等の表現にて本発明の情報を説明する場合があるが、これら情報は、テーブル等のデータ構造以外で表現されていてもよい。そのため、データ構造に依存しないことを示すために「aaaテーブル」等について「aaa情報」と呼ぶことがある。
 また、各情報の内容を説明する際に、「番号」という表現を用いるが、識別情報、識別子、名、名前等と置換可能である。
 まず、実施例1に係るストレージシステムの概要について説明する。
 実施例1に係るストレージシステムでは、図1に示すように、複数のストレージ装置10が、1台のデバイスユニット(共有デバイスユニット)34を共有する。具体的には、例えば、1台のデバイスユニット34内の記憶領域を分割し、分割した記憶領域(デバイス割当領域)を各ストレージ装置10へ割り当てることで、各ストレージ装置10がデバイスユニット34を共有できるようにする。デバイス割当領域は、例えば、論理的な記憶デバイスである論理ユニット(LU)としてホストコンピュータに提供されても良いし(オンラインのLUであっても良いし)、ストレージ装置10がホストコンピュータ10に提供することなく使用される記憶領域(例えばオフラインのLU)であっても良い。
 このストレージシステムにおいては、共有デバイスユニット34に備えられているデバイス(記憶デバイス)40は、所定の領域単位毎(例えば、ページ単位毎)にその領域に格納されているデータのフォーマットタイプ(第1フォーマットを特定する情報)を管理するとともに、各ストレージ装置10が利用するフォーマットタイプ(第2フォーマットを特定する情報)を管理している。
 デバイス40は、ストレージ装置10からストレージ装置10が利用するフォーマットタイプを受信し、所定の時点、例えば、リクラメーションを実行する時点において、デバイス40の所定の領域に格納されているデータのフォーマットタイプと、この領域が割り当てられているストレージ装置10のフォーマットタイプとが一致するか否かを判定し、一致していない場合には、デバイス40のこの領域のデータを読み出して、読み出したデータをストレージ装置10のフォーマットタイプに変換して、デバイス40に書込む。
 これにより、ストレージ装置10が、フォーマットの変更処理(データの移動等)をすることなく、デバイス40のフォーマットをストレージ装置10のフォーマットタイプのフォーマットに適切に変更することができる。したがって、ストレージ装置10の処理の負荷を低減することができる。
 以上が、実施例1に係るストレージシステムの概要である。なお、ストレージ装置10は、複数ではなく1台でも良い。
 以下、実施例1に係るストレージシステムの詳細を説明する。
 図1は、実施例1に係るストレージシステムの構成図である。
 ストレージシステムは、1以上のホストコンピュータ50と、1以上のホストコンピュータ50に接続されたストレージシステムとを含む。ストレージシステムは、複数のストレージ装置10(10A、10B、10C等)と、共有デバイスユニット34とを含む。ホストコンピュータ50及びストレージ装置10は、ネットワーク60を介して接続されている。
 ホストコンピュータ50は、ネットワーク60に接続されているストレージ装置10と通信を行う。ホストコンピュータ50は、I/O(Input/Output)コマンド(Readコマンド又はWriteコマンド)をストレージ装置10に送信する。I/Oコマンドには、I/O先の記憶領域を特定するための情報であるI/O先情報が関連付けられている。I/O先情報は、I/O先の記憶領域の識別情報(例えば、LUのLUN(Logical Unit Number))と、I/O先の記憶領域におけるI/O先領域を特定するための情報(例えば、LBA(Logical Block Address))とを含んでいる。
 ストレージ装置10は、共有デバイスユニット34の記憶媒体及び専有デバイスユニット36の記憶媒体のうちの少なくとも一方によって実現される1以上の記憶領域を管理し、1以上の記憶領域をホストコンピュータ50に提供する。ストレージ装置10は、ホストコンピュータ50からI/Oコマンドを受信し、受信したI/Oコマンドで指定されている記憶領域に対するデータ(ユーザデータ)のI/O(Read又はWrite)を実行する。
 ストレージ装置10は、ストレージコントローラ20(20A、20B、20C等)を有する。ストレージコントローラ20は、ストレージ装置10の制御処理を実行する。ストレージコントローラ20は、FEPK(Front End Package)21と、BEPK(Back End Package)22と、キャッシュメモリ(CM)23と、プロセッサ24と、制御メモリ25とを有する。FEPK21、BEPK22、CM23、プロセッサ24、及び制御メモリ25は、内部ネットワークを介して接続されている。
 FEPK21は、ホストコンピュータ50と通信するためのインタフェースである。FEPK21は、ネットワーク60に接続されている。BEPK22は、共有デバイスユニット34や専有デバイスユニット36と接続するためのインタフェースである。
 CM23は、共有デバイスユニット34又は専有デバイスユニット36に書込むデータ、又は共有デバイスユニット34又は専有デバイスユニット36から読出したデータを一時的に記憶する。プロセッサ24は、制御メモリ25に格納されたプログラムを実行することにより各種処理を実行する。制御メモリ25は、各種プログラムや各種情報を格納する。例えば、制御メモリ25は、LU管理テーブル110(図3参照)と、RAIDグループ管理テーブル150(図4参照)とを格納する。
 ストレージ装置10は、例えば、ストレージ装置10B及び10Cのように内部に専有デバイスユニット36を備えていても良いし、ストレージ装置10Aのように内部に専有デバイスユニット36を備えていなくても良い。専有デバイスユニット36は、スイッチ(SW)38と、デバイス40とを含む。専有デバイスユニット36のスイッチ38は、専用デバイスユニット36が属するストレージ装置10のストレージコントローラ20のBEPK22と接続されており、そのストレージコントローラ20のみがデバイス40にアクセス可能となっている。デバイス40は、HDD(Hard Disk Drive)(例えば、SATA(Serial ATA (Advanced Technology Attachment)) HDD、SAS(Serial Attached SCSI(Small Computer System Interface)) HDD)でも、不揮発メモリドライブ(例えば、SSDのようなフラッシュドライブ)でも良い。本実施例では、デバイス40が、フラッシュドライブであるとして説明する。また、フラッシュドライブが有するフラッシュメモリ(FM)は、複数のブロックで構成されており、各ブロックが、複数のページで構成されているFM(例えばNAND型のFM)であるとする。そのFMは、ページからデータを消去しないとそのページにデータを新たに書き込むことができないタイプのFMでよい。また、そのFMは、読み書きはページ単位で行われ、消去はブロック単位で行われるタイプのFMでよい。
 共有デバイスユニット(デバイスユニット#0という場合もある)34は、SW38と、デバイス(記憶デバイス)40とを含む。デバイス40は、記憶領域を有する。共有デバイスユニット34のスイッチ38は、ケーブル42を介して、複数のストレージ装置10のストレージコントローラ20(具体的には、ストレージコントローラ20のBEPK22)に接続されている。図1に示す例では、スイッチ38は、ケーブル42を介して、ストレージコントローラ20A、20B、及び20Cに接続されている。ケーブル42は、例えば、SASケーブルやPCIe(Peripheral Component Interconnect Express)ケーブルなどで良い。このような構成により、共有デバイスユニット34のデバイス40の記憶領域に対して、複数のストレージ装置10がアクセスすることができる。
 図2は、実施例1に係るデバイス割当単位を説明する図である。
 RAIDグループ300は、複数のデバイス40の記憶媒体(例えば、フラッシュメモリチップ(FMチップ)47)の記憶領域により構成される。RAIDグループ300は、障害に備えたデータの冗長性を考えて、所定のRAIDレベルのRAID構成となっている。ただし、RAIDグループ300を構成する記憶媒体は、同一デバイスユニットに格納されている必要がある。
 RAIDグループ300は、1以上の論理ユニット(LU)302(図2では、302A、302B、302C)の基になる。LU302は、所定のデータ単位であるチャンク306単位で分割されて管理されることもある。また、LU302において、チャンク306は、さらに小さいデータ単位であるページ304(304C)に分割されて管理されることもある。なお、共有デバイスユニット34及び専有デバイスユニット36が、ストレージ装置10に割り当てるデータ単位は、RAIDグループ300単位でも、LU302単位でも、チャンク306単位でも、ページ304単位でも良い。ただし、ホストコンピュータ50からは、データ割当単位はLU302として認識されるため、性能負荷分散を考慮したデータ割当配置変更においては、LU302単位よりも細かい割当単位で実施することが望ましい。各ストレージ装置10は、1以上のLU302をホストコンピュータ50に提供する。ストレージ装置10には、チャンク306(又はページ304)単位で記憶領域が割り当てられる。
 図3は、実施例1に係るLU管理テーブルの構成図である。
 LU管理テーブル110は、共有デバイスユニット34及び専有デバイスユニット36に存在するLUの情報を管理するテーブルであり、LU番号(LUN)111と、サイズ112、RAID Group番号(#)113と、RAIDレベル114と、先頭RG内物理アドレス115とを含む。
 LUN111は、ホストコンピュータ50から認識されるLUの識別番号である。サイズ112は、LUN111に対応するLUのサイズである。RAID Group#113は、LUN111に対応するLUが所属するRAIDグループの番号である。RAIDレベル114は、RAID Group#113のRAIDグループのRAIDレベルである。先頭RG内物理アドレス115は、LUN111に対応するLUのデータが格納されている物理的な記憶領域のRAID Group内での先頭を示すアドレス(先頭RG内物理アドレス)である。
 図4は、実施例1に係るRAIDグループ管理テーブルの構成図である。
 RAIDグループ管理テーブル150は、ストレージ装置10が利用しているRAIDグループが、どのデバイスユニットのどのデバイスによって構成されているかを示す情報を管理するテーブルであり、RAID Group#151と、RAIDレベル152と、デバイスユニット番号(#)153と、RG容量154と、ドライブ番号155と、ドライブ容量156と、変換機能有無157と、ドライブ通知装置番号(#)158とを含む。
 RAID Group#151は、RAIDグループの番号である。RAIDレベル152は、RAID Group#151のRAIDグループのRAIDレベルである。デバイスユニット#153は、RAID Group#151のRAIDグループを格納するデバイスユニットの番号である。RG容量154は、RAID Group#151のRAIDグループの容量である。ドライブ番号155は、RAID Group#151のRAIDグループの記憶領域を構成するデバイス40の番号(ドライブ番号)である。ドライブ容量156は、ドライブ番号155のデバイス40からRAID Group#151のRAIDグループに提供されている記憶領域の容量である。変換機能有無157は、ドライブ番号155のデバイス40が、データのフォーマットを別のフォーマットに変換する機能(フォーマット変換機能)を有しているか否かを示す。例えば、デバイス40が本実施例に係るフラッシュドライブである場合には、フォーマット変換機能を有しているので、変換機能有無157は、「有」となり、例えば、デバイス40が既存のHDDであれば、フォーマット変換機能を有していないので、変換機能有無157は、「無」となる。ドライブ通知装置#158は、ドライブ番号155のデバイス40が、このRAIDグループ管理テーブル150を格納しているストレージ装置10の番号として認識している装置番号である。
 図5は、実施例1に係るデバイスの構成図である。
 デバイス40は、メモリコントローラ41と、1以上のFMチップ47とを含む。メモリコントローラ41は、上位インタフェース42と、CPU43と、メモリインタフェース44と、キャッシュメモリ(CM)45と、制御メモリ46とを含む。
 上位インタフェース42は、上位装置(例えば、ストレージ装置10)と通信するためのインタフェースである。上位インタフェース42は、ケーブルを介してSW38と接続されている。メモリインタフェース44はFMチップ47と通信するためのインタフェースである。メモリインタフェース44は、ケーブルを介して、複数のFMチップ47と接続されている。CM45は、FMチップ47に書込むデータ、又はFMチップ47から読出したデータ等を一時的に記憶する。CPU43は、制御メモリ46に格納されたプログラムを実行することにより各種処理を実行する。制御メモリ46は、各種プログラムや各種情報を格納する。例えば、制御メモリ46は、ファイルフォーマットタイプ管理テーブル400(図6参照)と、ファイルフォーマットタイプテーブル500(図7参照)と、論理物理変換テーブル550(図8参照)とを格納する。
 図6は、実施例1に係るフォーマットタイプ管理テーブルの構成図である。
 フォーマットタイプ管理テーブル400は、各ストレージ装置10が利用するデータのフォーマットタイプを管理するテーブルである。フォーマットタイプ管理テーブル400は、装置番号(#)410と、装置フォーマットタイプ420とを含む。
 装置番号(#)410は、このフォーマットタイプ管理テーブル400を記憶しているデバイス40において、ストレージ装置10を識別する装置番号である。フォーマットタイプ420は、装置#410が示すストレージ装置10で使用するフォーマットタイプである。ここで、フォーマットタイプとは、データの物理フォーマット(ブロックサイズ)やデータ保障コード等のタイプを示す。ここで、ブロックとは、FMチップ47の消去単位を示すブロックとは異なり、ストレージ装置10のストレージコントローラ20側でのデータの管理単位である。本実施例では、フォーマットタイプ420は、フォーマットタイプを示すフォーマットタイプ名となっており、フォーマットタイプ名に対応する具体的に内容については、フォーマットタイプテーブル500(図7参照)で管理している。
 図7は、実施例1に係るフォーマットタイプテーブルの構成図である。
 フォーマットタイプテーブル500は、フォーマットタイプの具体的な内容を管理するテーブルであり、タイプ510と、ブロックサイズ520と、データ保障コード530とを含む。
 タイプ510は、フォーマットタイプを示すフォーマットタイプ名である。ブロックサイズ520は、タイプ510のフォーマットタイプに対応するフォーマットにおけるブロックのサイズである。データ保障コード530は、タイプ510のフォーマットタイプに対応するフォーマットで使用するデータ保障コードを特定する情報である。
 図8は、実施例1に係る論理物理変換テーブルの構成図である。
 論理物理変換テーブル550は、デバイス40(本実施例では、フラッシュストレージ)におけるブロックを分割したページと、ストレージ装置10における論理アドレスとのマッピングを管理するテーブルである。論理物理変換テーブル550は、ブロック#551と、FMチップ#552と、ブロック内ページ#553と、装置#554と、論理アドレス555と、ページフォーマットタイプ556とを含む。
 ブロック#551は、ブロックを識別するブロック番号である。FMチップ#552は、ブロック#551のブロックを格納するFMチップ47の番号(FMチップ番号)である。ブロック内ページ#553は、ブロック#551のブロックにおけるページの番号である。装置#554は、ブロック内ページ#553に対応するページのデータを管理しているストレージ装置10の装置番号である。論理アドレス555は、ブロック内ページ#553に対応するページのデータに対応する論理アドレスである。ページフォーマットタイプ556は、ブロック内ページ#553に対応するページに格納されるデータのフォーマットタイプ(ページフォーマットタイプ)である。
 次に、実施例1に係るストレージシステムにおける処理動作について説明する。
 まず、ストレージ装置10に電源投入を行った後に実行される立上げ処理(初期設定処理)について説明する。なお、電源投入を行うストレージ装置10は、いずれか1台でも、複数台であっても良い。この際、各ストレージ装置10において同様な初期設定処理が開始される。また、共有デバイスユニット34は、ストレージ装置10の電源投入前から通電されていても良いし、ストレージ装置10の電源投入時に一緒に電源投入されても良い。
 図9は、実施例1に係る初期設定処理のフローチャートである。
 電源投入が行われると、ストレージ装置10は、各デバイス40に対し、必要な情報を取得するための情報取得コマンド(例えば、SCSIコマンドのMode Senseのようなコマンド)を発行する(ステップ610)。
 この情報取得コマンドを取得したデバイス40は、このコマンドの応答として現状の接続されているストレージ装置10の装置#を応答する(ステップ620)。
 次いで、ストレージ装置10は、共有デバイスユニット34に既に接続したことがあるか、又は共有デバイスユニット34に新規に接続したのかを判定する(ステップ630)。ここで、共有デバイスユニット34に既に接続したことがあるか、又は共有デバイスユニット34に新規に接続したのかについては、RAIDグループ管理テーブル150に対して、共有デバイスユニット34のデバイスユニット番号及びデバイス40のドライブ番号でサーチして、ヒットしたか否かにより判定することができる。具体的には、RAIDグループ管理テーブル150に対して、共有デバイスユニット34のデバイスユニット番号及びデバイス40のドライブ番号でサーチして、ヒットした場合には、既に接続したことがあると判断でき、ヒットしない場合は、新規接続であると判断できる。
 この結果、共有デバイスユニット34と既に接続したことがある場合(ステップ630:既接続)には、ストレージ装置10は、ステップ630でヒットしたエントリにおけるドライブ通知装置#152の装置#と、ストレージ装置10のフォーマットタイプ(ストレージフォーマットタイプ)とを情報設定コマンド(SCSIコマンドのMode Selectのようなコマンド)によりデバイス40に通知する(ステップ640)。
 デバイス40は、フォーマットタイプ管理テーブル400から、通知された装置#に対応するエントリをサーチし、サーチにより得られたエントリの装置フォーマットタイプ420に、通知されたストレージフォーマットタイプを格納する(ステップ650)。これにより、デバイス40のフォーマットタイプ管理テーブル400には、現在接続されているストレージ装置10のフォーマットタイプが管理されることとなる。
 一方、共有デバイスユニット34に新規に接続した場合(ステップ630:新規接続)には、ストレージ装置10は、ステップ620で取得した装置#をチェックし、デバイス40において使用されていない装置#と、自身のフォーマットタイプとをデバイス40に通知する(ステップ660)。
 デバイス40は、通知された装置#に対応するエントリをフォーマットタイプ管理テーブル400からサーチし、通知された装置#が使用されていない番号であることを確認し、空いているエントリに、通知された装置#と装置フォーマットタイプとを設定する(ステップ670)。これにより、デバイス40のフォーマットタイプ管理テーブル400には、現在接続されているストレージ装置10のフォーマットタイプが管理されることとなる。なお、ステップ660において、ストレージ装置10が、新規接続であることを示す情報を渡すようにし、ステップ670においてデバイス40は、通知された装置#が使用されていない番号であることを確認するためのフォーマットタイプ管理テーブル400のサーチを行わないようにしても良い。
 上記した初期設定処理後においては、電源投入がされたストレージ装置10が移行先のストレージ装置10であったとしても、ストレージ装置10は、使用するデバイス40のデータのフォーマット変換処理等を行う必要がなく、また、フォーマット変換処理の終了を待つことなく、デバイス40に対してI/O処理を実行することができる。また、ストレージ装置10においては、処理負荷の増加がほとんど生じることはない。
 次に、論理物理変換テーブル550のページフォーマットタイプ556が初期設定される処理(ページフォーマット初期設定処理)について説明する。ここで、初期状態においては、ブロックのページは、論理アドレスに割り当てられていない空ページである。このため、論理物理変換テーブル550における各ページに対応するエントリにおいては、図8の論理物理変換テーブル550のブロック内ページ#553が「101」であるエントリのように、エントリにおける装置#554、論理アドレス555、及びページフォーマットタイプ556が無効値(Null)として設定されている。
 図10は、実施例1に係るページフォーマット初期設定処理のフローチャートである。
 ページフォーマット初期設定処理は、デバイス40が、ストレージ装置10からページが未割当ての論理領域(未割当領域)に対するWriteコマンドを受信した場合に実行される。
 デバイス40は、ストレージ装置10からページが未割領域に対するWriteコマンドを受信した場合には、論理物理変換テーブル550を参照し、1つの空きページをサーチし、Writeコマンドの送信元のストレージ装置10の装置#とWriteコマンドの未割当領域の論理アドレスとを、サーチにより得られた空ページに対応するエントリの装置#554と、論理アドレス#555とに設定することで、未割当領域にページを割り当てる(ステップ680)。次いで、デバイス40は、フォーマットタイプ管理テーブル400からWriteコマンドの送信元のストレージ装置10の装置#に対応する装置フォーマットタイプ420を取得する(ステップ685)。
 次いで、デバイス40は、ストレージ装置10から受け取ったWrite対象のデータ(Writeデータ)を、ステップ685で取得したフォーマットタイプに従って、割り当てられたページに書き込む(ステップ690)。その後、デバイス40は、書き込みが正常に完了したことを確認後、論理物理変換テーブル550の割当てられたページに対応するエントリの装置フォーマットタイプ556に、ステップ685で取得したフォーマットタイプを設定する(ステップ695)。上記処理により、新規に割り当てられたページに対応するエントリのページフォーマットタイプ556に初期値(初期のフォーマットタイプの値)が設定されることとなる。
 次に、ストレージ装置の移行について説明する。
 図11は、実施例1に係るストレージ装置の移行の概要を説明する図である。図12は、実施例1に係るストレージ装置移行後のフォーマットタイプ管理テーブルの状態を示す図である。
 図11は、ストレージ装置10が移行元の旧型のストレージ装置(ストレージ装置A)から移行先の新型のストレージ装置(ストレージ装置C)に移行する場合の例を示している。
 図11に示すように、装置#0がハードウェアのリプレース等の理由により、ストレージ装置Aからストレージ装置Cに入れ替えられるとする。ここで、ストレージ装置Aのフォーマットタイプ(FMT)がAタイプであるのに対し、ストレージ装置CのフォーマットタイプはBタイプであり、これらのストレージ装置のフォーマットタイプは異なっている。
 ストレージ装置Cには、ストレージ装置Aで使用していた構成情報や装置#等を既存の方法により引き継がれる。例えば、ストレージ装置Aが格納していたLU管理テーブル110及びRAIDグループ管理テーブル150は、内容がそのままの状態でストレージ装置Cに格納される。
 この後に、ストレージ装置Cが電源投入されると、図9に示す初期設定処理が開始されることとなる。図9の初期設定処理が実行されると、デバイス40のフォーマットタイプ管理テーブル400は、図12に示すように、ストレージ装置Cに対応する装置#0のエントリにおける装置フォーマットタイプ420が移行元のストレージ装置Aのフォーマットタイプである「A」から移行先のストレージ装置Cのフォーマットタイプである「B」に変更されることとなる。
 このように、ストレージ装置10を入れ替えた場合にあっては、その後に、デバイス40のフォーマットタイプ管理テーブル400の移行先のストレージ装置10に対応するエントリの装置フォーマットタイプ420が移行後のストレージ装置10のフォーマットタイプに適切に変更される。
 次に、デバイス40におけるリクラメーション処理について説明する。
 リクラメーション処理とは、フラッシュドライブのようにFMチップを備えたデバイス40において、時間経過による劣化からデータを守るため、定期的にデータを読み上げ、空き領域に書き直す処理である。FMチップは、物理的な領域で劣化が進行するため、リクラメーション処理は、ブロック単位で実施されるケースが多い。
 一般的に、リクラメーションの対象となるブロックは、前回の書き込みが実施されてからの経過時間等を基準に選択されるケースが多い。このように経過時間を基準とした場合には、書き込みからの経過時間が短いブロックについては、リクラメーション処理の対象外とされてしまう。
 これに対して、本実施例では、リクラメーション処理の対象とするブロックを選択する基準として、一般的な基準の他に、そのブロックのデータのフォーマット変換が必要であるか否かについても追加している。これにより、前回の書込みからの経過時間が短くても、フォーマット変換が必要であるブロックについてはリクラメーション処理を実行するようにしている。これにより、フォーマット変換が必要なデータを早期にフォーマット変換することができる。なお、フォーマット変換が必要であるか否かについては、論理物理変換テーブル550の或るブロック中のページに対応するエントリのページフォーマットタイプ556と、そのエントリの装置#554に対応するフォーマットタイプ管理テーブル400の装置フォーマットタイプ420とが一致するか否かにより判定することができる。すなわち、ページフォーマットタイプ556と、装置フォーマットタイプ420とが一致する場合には、フォーマット変換が必要ないと判定でき、ページフォーマットタイプ556と、装置フォーマットタイプ420とが一致しない場合には、フォーマット変換が必要であると判定できる。なお、一般的な基準のみでリクラメーション処理の対象とするブロックを選択するようにしても良く、このようにすると、リクラメーションが必要であるブロックを対象に、フォーマット変換が必要なブロックであればフォーマット変換を行うこととなるので、リクラメーションの実行と並行してフォーマット変換を行うことができるので、比較的少ない処理負荷でフォーマット変換を実現できる。
 図13は、実施例1に係るリクラメーション処理のフローチャートである。
 デバイス40(具体的には、CPU43)は、リクラメーション処理を実行する対象として判定されたブロック(図13の説明において処理ブロックという)のデータをデバイス40内のCM45に読み出す(ステップ710)。次いで、デバイス40は、処理ブロック内の先頭ページについて、論理物理変換テーブル550の先頭ページに対応するエントリのページフォーマットタイプ556と、このエントリの装置#554に対応するフォーマットタイプ管理テーブル400の装置フォーマットタイプ420とを比較し(ステップ720)、ページフォーマットタイプ556と、ページフォーマットタイプ420とが異なっているか否かを判定する(ステップ730)。
 この結果、装置フォーマットタイプ420と、ページフォーマットタイプ556とが異なっている場合(ステップ730:YES)には、ストレージ装置10のフォーマットタイプが変更されたと判断できるので、デバイス40は、CM45のこのページ(処理ページという)のデータを、装置フォーマットタイプ420のフォーマットに変換する(ステップ730)。次いで、デバイス40は、処理ページについての論理物理変換テーブル550のエントリのページフォーマットタイプ556を変換後のフォーマットタイプに変更し(ステップ750)、処理をステップ760に進める。
 一方、装置フォーマットタイプ420と、ページフォーマットタイプ556とが異なっていない場合(ステップ730:NO)には、フォーマットタイプを変換する必要がないので、処理をステップ760に進める。
 ステップ760では、デバイス40は、処理ブロック中の全てのページを対象に処理が完了したか否かを判定し、全てのページを対象に処理を実行していない場合(ステップ760:NO)には、処理をステップ770に進めて、処理ブロックの次のページについて、論理物理変換テーブル550のエントリのページフォーマットタイプ556と、このエントリの装置番号554に対応するフォーマットタイプ管理テーブル400の装置フォーマットタイプ420とを比較し(ステップ770)、ステップ730に処理を進める。
 一方、処理ブロック中の全てのページを対象に処理が完了した場合(ステップ760:YES)には、デバイス40は、CM45にある処理ブロックのデータを、FMチップ47の空き領域(空ブロック)に書き込み、論理物理変換テーブル550の処理ブロックに対応するエントリの論理アドレスを、空き領域に対応するブロックに対して対応付ける(ステップ780)。具体的には、デバイス40は、論理物理変換テーブル550の処理ブロックに対応するエントリの装置#554、論理アドレス555、及びページフォーマットタイプ556を、データを書き込んだ空き領域のブロックに対応するエントリに格納する。
 上記処理によると、1つのブロックに対してリクラメーションを実行することができ、他にリクラメーション処理の対象となるブロックがあれば、デバイス40は、上記同様な処理をそのブロックを対象として実行する。
 上記処理によると、実行する必要があるリクラメーション処理において、ストレージ装置10をリプレース等したことによりフォーマット変換を行う必要のあるブロックのデータのフォーマットを変換するようにしているので、ストレージ装置10及びデバイス40の処理負荷の増加を抑えつつ、効果的にデータのフォーマットを変換することができる。
 なお、フォーマットが変更されることを、ストレージ装置10側で把握することもできるため、フォーマット変更のためのリクラメーション処理の起動契機と対象ページとをストレージ装置10側からデバイス40側に与えるようにしても良い。この場合には、ストレージ装置10側で、対象ページの管理等を実施する必要があり、その管理情報に大量のメモリを必要としてしまい、また、ストレージ装置10からデバイス40への指示のオーバヘッドにより性能が劣化する可能性がある。これに対して、上記したように、リクラメーション処理の実施判断の基準に、フォーマット変換が必要であるか否かの基準を加えて、デバイス40で判断するようにすると、ストレージ装置10側では特に管理の必要はなく、デバイス40だけで、新たな管理情報を追加することなく処理を実施することができる。また、ストレージ装置10とデバイス40との間でのやり取りも不要なため、ストレージ装置10及びデバイス40の性能劣化を防ぐこともできる。
 次に、デバイス40におけるデバイスRead処理について説明する。
 図14は、実施例1に係るデバイスRead処理のフローチャートである。
 デバイスRead処理は、デバイス40がストレージ装置10からReadコマンドを受領した場合に実施される。なお、このデバイスRead処理には、ストレージ装置10を移行させる等して、デバイス40のデータのフォーマット変換が必要な場合であって、上記したリクラメーション処理によるフォーマット変換が実施されていない場合において、Readコマンドを受領した場合における処理動作も含まれている。
 デバイス40は、ストレージ装置10からのReadコマンドを受領すると、Readコマンドが対象としているデータを格納しているページ(Read対象ページ)について、論理物理変換テーブル550のRead対象ページに対応するエントリのページフォーマットタイプ556と、このエントリの装置#554に対応するフォーマットタイプ管理テーブル400の装置フォーマットタイプ420とを比較し(ステップ810)、ページフォーマットタイプ556と、ページフォーマットタイプ420とが異なっているか否かを判定する(ステップ820)。
 この結果、装置フォーマットタイプ420と、ページフォーマットタイプ556とが異なっている場合(ステップ820:YES)には、Read対象ページのデータを利用するストレージ装置10のフォーマットタイプが変更され、まだ、リクラメーション処理によるフォーマット変換が行われていないこと意味しているので、デバイス40は、Read対象ページのデータをFMチップ47からCM45に読出し、読み出したデータを装置フォーマットタイプ420のフォーマットに変換し(ステップ830)、処理をステップ850に進める。
 一方、装置フォーマットタイプ420と、ページフォーマットタイプ556とが異なっていない場合(ステップ820:NO)には、データのフォーマットが装置フォーマットタイプ420であることを意味しているので、デバイス40は、Read対象ページのデータをFMチップ47からCM45に読み出し、処理をステップ850に進める。
 ステップ850では、デバイス40は、ステップ830で装置フォーマットタイプ420のフォーマットに変換されたデータ、又はステップ840で読み出されたデータを、ストレージ装置10に応答する(ステップ850)。
 このデバイスRead処理によると、フォーマット変換が必要ではあるが、まだフォーマット変換されていないデータに対するReadコマンドを受領した場合であっても、デバイス40は、適切なフォーマットのデータとして、ストレージ装置10に応答することができる。
 次に、デバイス40におけるデバイスWrite処理について説明する。
 図15は、実施例1に係るデバイスWrite処理のフローチャートである。
 デバイスWrite処理は、デバイス40がストレージ装置10からWriteコマンドを受領した場合に実施される。なお、このデバイスWrite処理には、ストレージ装置10を移行させる等して、デバイス40のデータのフォーマット変換が必要な場合であって、上記したリクラメーション処理によるフォーマット変換が実施されていない場合において、Writeコマンドを受領した場合における処理動作も含まれている。
 デバイス40(具体的には、CPU43)は、ストレージ装置10からのWriteコマンドを受領すると、WriteコマンドのWrite対象のデータをCM45に格納する(ステップ910)。次いで、デバイス40は、Writeコマンドが対象としてデータの格納先のページ(Write対象ページ)について、論理物理変換テーブル550のWrite対象ページに対応するエントリのページフォーマットタイプ556と、このエントリの装置#554に対応するフォーマットタイプ管理テーブル400の装置フォーマットタイプ420とを比較し(ステップ920)、ページフォーマットタイプ556と、ページフォーマットタイプ420とが異なっているか否かを判定する(ステップ930)。
 ここで、装置フォーマットタイプ420と、ページフォーマットタイプ556とが異なっている場合には、Write対象ページのデータを利用するストレージ装置10のフォーマットタイプが変更され、まだ、リクラメーション処理によるフォーマット変換が行われていないこと意味しているので、ストレージ装置10の変更後のフォーマットタイプであるWriteデータをそのまま格納してしまうと、不整合が生じてしまう。ここで、ページに格納されているデータのフォーマットを変更すると、場合によっては、大きいサイズになる可能性があり、この時点で、ページのデータのフォーマットを変更して格納することは困難な場合がある。そこで、本実施例では、装置フォーマットタイプ420と、ページフォーマットタイプ556とが異なっている場合(ステップ930:YES)には、CM45のWriteデータをページフォーマットタイプ556のフォーマットに変換し、ページ上のデータと、Writeデータとのフォーマットの整合性を合わせ(ステップ940)、処理をステップ950に進める。なお、このページのデータのフォーマット変換は、リクラメーション処理において実行されることとなる。
 一方、装置フォーマットタイプ420と、ページフォーマットタイプ556とが異なっていない場合(ステップ930:NO)には、ページのデータのフォーマットが装置フォーマットタイプ420であることを意味しているので、処理をステップ950に進める。
 ステップ950では、デバイス40は、CM45のデータ(ステップ940でページフォーマットタイプ420のフォーマットに変換されたデータ、又はステップ910で格納されたデータ)を、FMチップ47に書込む。
 このデバイスWrite処理によると、フォーマット変換が必要ではあるが、まだフォーマット変換されていないページのデータに対するWriteコマンドを受領した場合であっても、デバイス40は、FMチップ47に、整合性を維持した状態でデータを格納することができる。
 なお、以上においては、ストレージ装置10を新たな別のストレージ装置10に移行する場合を例として説明していたが、新しいストレージ装置10をストレージシステムに追加する場合、すなわち、ストレージ装置の新規増設する場合であっても、上記した構成及び処理をそのまま実行することにより、上記同様な効果を得ることができる。すなわち、ストレージ装置10の新規増設においても、ストレージ装置10は、データのフォーマット変換処理の終了を待つことなくI/O処理を行うことができ、性能劣化がほとんど生じることがない。
 また、ストレージ装置10間での負荷分散により、ページを担当するストレージ装置10が変更になり、変更前後のストレージ装置10のストレージフォーマットタイプが異なる場合においても、以下の負荷分散処理を実行することにより、支障なくデータを管理することができる。
 ストレージ装置10間の負荷分散は、例えば、各ストレージ装置10の負荷を監視しておき、一のストレージ装置10の負荷が比較的重く、他のストレージ装置10の負荷が比較的軽い場合に、一のストレージ装置10が担当しているLUを他のストレージ装置10の担当とするようなケースや、負荷が比較的軽いストレージ装置10が、他のストレージ装置10が担当しているLUを自身が担当するように変更するケース等がある。
 図16は、実施例1に係る負荷分散処理のフローチャートである。
 負荷分散処理は、ストレージ装置10から負荷分散の指示を受けた場合に実行される。
 デバイス40は、ストレージ装置10から負荷分散の指示として、移行元の論理アドレスと、移行先のストレージ装置10の装置#と、移行先の論理アドレスとを取得すると(ステップ1010)、取得した移行元の論理アドレスに基づいて、移行元のページ番号を算出する(ステップ1020)。次いで、デバイス40は、算出したページ番号に対応する論理物理変換テーブル550のエントリの装置#554及び論理アドレス555を、ストレージ装置10から通知された移行先のストレージ装置の装置#及び移行先の論理アドレスに変更する(ステップ1030)。なお、ストレージ装置10がデバイス40に通知する負荷分散の指示に、移行元の論理アドレスと、移行先のストレージ装置の装置#と、移行先の論理アドレスとの組が複数含まれていても良く、この場合には、各組を対象として、ステップ1020、ステップ1030の処理が実行されることとなる。
 負荷分散処理が実行されると、上記したデバイス40側での処理(リクラメーション処理、デバイスRead処理、デバイスWrite処理)が実行されることにより、負荷分散の対象となったページのデータについてのフォーマット変換や、そのページのデータに対するI/O処理を適切に行うことができる。また、ストレージ装置10は、データのフォーマット変換処理の終了を待つことなくI/O処理を行うことができ、性能劣化がほとんど生じることがない。
 次に、実施例2に係るストレージシステムの詳細を説明する。
 実施例2に係るストレージシステムは、図1に示すストレージシステムにおいて、デバイス40として、実施例1に係るリクラメーション処理、デバイスRead処理、及びデバイスWrite処理を実行する機能(フォーマット変換機能)を有しているデバイス(第1記憶デバイス)と、フォーマット変換機能を有していないデバイス(第2記憶デバイス:例えば、一般的なHDD)とが混在しているストレージシステムである。
 実施例2に係るストレージ装置10は、新たに以下のストレージRead処理及びストレージWrite処理を実行するように構成されている。
 図17は、実施例2に係るストレージRead処理のフローチャートである。
 ストレージRead処理は、ストレージ装置10がホストコンピュータ50からReadコマンドを受領した場合に実行される処理である。
 ストレージ装置10は、ホストコンピュータ50からReadコマンドを受信すると(ステップ1100)、Readコマンドから対象のデータ(Readデータ)を管理するデバイス40にフォーマット変換機能があるか否かを判定する(ステップ1110)。Readデータを管理するデバイス40にフォーマット変換機能があるか否かは、Readコマンドに含まれるLUN及び論理アドレスに基づいて、LU管理テーブル110及びRAIDグループ管理テーブル150を参照することにより、RAIDグループ管理テーブル150のReadデータを管理するデバイス40に対応するエントリを特定し、このエントリの変換機能有無157を参照することにより、把握することができる。
 この結果、Readデータを管理するデバイス40にフォーマット変換機能がある場合(ステップ1110:YES)には、ストレージ装置10は、Readコマンドを、Readデータを管理するデバイス40に送信する(ステップ1120)。なお、Readコマンドを受信したデバイス40は、図14に示すデバイスRead処理を実行して、ストレージ装置10に応答としてストレージ装置10のフォーマットタイプであるReadデータを返すこととなる。
 ストレージ装置10は、デバイス40から返されるReadデータを取得し、ホストコンピュータ50に取得したReadデータを応答として返し(ステップ1130)、ストレージRead処理を終了する。
 一方、Readデータを管理するデバイス40にフォーマット変換機能がない場合(ステップ1110:NO)には、ストレージ装置10は、Readコマンドを、Readデータを管理するデバイス40に送信する(ステップ1140)。なお、Readコマンドを受信したデバイス40は、一般的なRead処理を実行して、ストレージ装置10に応答としてデバイス40に格納されているフォーマットタイプのままのReadデータを返すこととなる。
 次いで、ストレージ装置10は、デバイス40から返されるReadデータを取得し、デバイス40のフォーマットタイプが、ストレージ装置10のフォーマットタイプと異なる場合には、Readデータをストレージ装置10のフォーマットタイプのフォーマットに変換する(ステップ1150)。
 次いで、ストレージ装置10は、ホストコンピュータ50に、Readデータを応答として返し(ステップ1160)、ストレージRead処理を終了する。
 このストレージRead処理によると、フォーマット変換機能がないデバイスのフォーマットのデータを適切にストレージ装置10のフォーマットに変換して取得することができる。
 図18は、実施例2に係るストレージWrite処理のフローチャートである。
 ストレージWrite処理は、ストレージ装置10がホストコンピュータ50からWriteコマンドを受領した場合に実行される処理である。
 ストレージ装置10は、ホストコンピュータ50からWriteコマンドを受信すると(ステップ1200)、Writeコマンドから対象のデータ(Writeデータ)を管理するデバイス40にフォーマット変換機能があるか否かを判定する(ステップ1210)。Writeデータを管理するデバイス40にフォーマット変換機能があるか否かは、Writeコマンドに含まれるLUN及び論理アドレスに基づいて、LU管理テーブル110及びRAIDグループ管理テーブル150を参照することにより、RAIDグループ管理テーブル150のWriteデータを管理するデバイス40に対応するエントリを特定し、このエントリの変換機能有無157を参照することにより、把握することができる。
 この結果、Writeデータを管理するデバイス40にフォーマット変換機能がある場合(ステップ1210:YES)には、ストレージ装置10は、Writeコマンドを、Writeデータを管理するデバイス40に送信する(ステップ1220)。なお、Writeコマンドを受信したデバイス40は、図15に示すデバイスWrite処理を実行して、ストレージ装置10に応答を返すこととなる。
 ストレージ装置10は、デバイス40から返される応答Writeを受信すると、ホストコンピュータ50に応答を返し(ステップ1230)、ストレージWrite処理を終了する。
 一方、Writeデータを管理するデバイス40にフォーマット変換機能がない場合(ステップ1210:NO)には、ストレージ装置10は、デバイス40のフォーマットタイプが、ストレージ装置10のフォーマットタイプと異なる場合には、Writeデータをストレージ装置10のフォーマットタイプのフォーマットに変換する(ステップ1240)。
 ストレージ装置10は、WriteコマンドをWriteデータとともに、Writeデータを管理するデバイス40に送信する(ステップ1250)。この際、ストレージ装置10は、ステップ1240でWriteデータのフォーマットを変換した場合には、変換後のWriteデータをデバイス40に送信する。なお、Writeコマンドを受信したデバイス40は、一般的なWrite処理を実行して、Writeデータをデバイス40に格納し、ストレージ装置10に応答を返すこととなる。
 次いで、ストレージ装置10は、デバイス40から応答を受信すると、ホストコンピュータ50に、Writeコマンドに対する応答を返し(ステップ1260)、ストレージWrite処理を終了する。
 このストレージWrite処理によると、フォーマット変換機能がないデバイスに対して、Writeデータをそのデバイスのフォーマットに変換して適切に格納させることができる。
 以上、幾つかの実施例を説明したが、本発明は、それらの実施例に限定されない。
10A,10B,10C:ストレージ装置 34:共有デバイスユニット 40:デバイス

Claims (15)

  1.  ストレージ装置と、
     前記ストレージ装置に提供される記憶領域の基になる記憶デバイスと
    を有し、
     前記記憶デバイスは、
      前記記憶デバイスに格納しているデータのフォーマットである第1フォーマットと、前記データを管理する前記ストレージ装置が利用するデータのフォーマットである第2フォーマットとが互いに一致しているか否かを判断し、
      前記第1フォーマットと前記第2フォーマットとが互いに一致していない場合に、前記第1フォーマットのデータを前記第2フォーマットのデータに変換することと前記第2フォーマットのデータを前記第1フォーマットのデータに変換することのいずれかであるフォーマット変換を行う、
    ストレージシステム。
  2.  前記記憶デバイスは、データの書込みを所定のページ単位で行うとともに、データの消去を複数のページを構成するブロックの単位で行う記憶デバイスであり、
     前記記憶デバイスは、前記記憶デバイスの所定のブロック中のページのデータを他のブロックに移動させるリクラメーションを実行する際に、前記リクラメーションにおける移動されるデータを対象に、前記判断を行う
    請求項1に記載のストレージシステム。
  3.  前記記憶デバイスは、前記ストレージ装置からリード要求を受信した場合に、リード要求の対象のデータについて、前記判断を行い、前記フォーマット変換により得られた前記第2フォーマットのデータを、前記ストレージ装置に送信する、
    請求項2に記載のストレージシステム。
  4.  前記記憶デバイスは、前記ストレージ装置からライト要求を受信した場合に、ライト要求の対象のデータについて、前記判断を行い、前記フォーマット変換により得られた前記第1フォーマットのデータを記憶する、
    請求項2に記載のストレージシステム。
  5.  前記記憶デバイスは、前記データを管理するリプレース後のストレージ装置から、前記ストレージ装置が利用する第2フォーマットを特定する情報を受信し、
     前記判断は、前記受信した情報に対応する第2フォーマットと、前記データの第1フォーマットとが互いに一致するか否かの判断である、
    請求項1に記載のストレージシステム。
  6.  前記記憶デバイスは、負荷分散により前記データを管理することになる変更後のストレージ装置から、前記ストレージ装置が利用する第2フォーマットを特定する情報を受信し、
     前記判断は、前記受信した情報に対応する第2フォーマットと、前記データの第1フォーマットとが互いに一致するか否かの判断である、
    請求項1に記載のストレージシステム。
  7.  前記記憶デバイスである第1記憶デバイスの他に、前記判断及び前記フォーマット変換を実行できない第2記憶デバイスを有し、
     前記ストレージ装置は、前記第1記憶デバイスに対するアクセスの場合には、前記アクセス対象のデータについて前記判断を実行せず、前記アクセス対象のデータについて前記第1記憶デバイスが前記判断を行い、
     前記ストレージ装置は、前記第2記憶デバイスに対するアクセスの場合には、前記アクセス対象のデータについて前記判断を実行する、
    請求項1に記載のストレージシステム。
  8.  前記記憶デバイスは、前記第1フォーマットを特定する情報と前記第2フォーマットを特定する情報とを記憶する
    請求項1に記載のストレージシステム。
  9.  前記ストレージ装置の立ち上げ時に、前記ストレージ装置が、前記第2フォーマットを特定する情報を前記記憶デバイスに送信する
    請求項1に記載のストレージシステム。
  10.  ストレージ装置に提供される記憶領域の基になる記憶デバイスが、前記記憶デバイスに格納しているデータのフォーマットである第1フォーマットと、前記データを管理する前記ストレージ装置が利用するデータのフォーマットである第2フォーマットとが互いに一致しているか否かを判断し、
     前記記憶デバイスが、前記第1フォーマットと前記第2フォーマットとが互いに一致していない場合に、前記第1フォーマットのデータを前記第2フォーマットのデータに変換することと前記第2フォーマットのデータを前記第1フォーマットのデータに変換することのいずれかであるフォーマット変換を行う、
    データ管理方法。
  11.  前記記憶デバイスは、データの書込みを所定のページ単位で行うとともに、データの消去を複数のページを構成するブロックの単位で行う記憶デバイスであり、
     前記記憶デバイスは、前記記憶デバイスの所定のブロック中のページのデータを他のブロックに移動させるリクラメーションを実行する際に、前記リクラメーションにおける移動されるデータを対象に、前記判断を行う
    請求項10に記載のデータ管理方法。
  12.  前記記憶デバイスは、前記ストレージ装置からリード要求を受信した場合に、リード要求の対象のデータについて、前記判断を行い、前記フォーマット変換により得られた前記第2フォーマットのデータを、前記ストレージ装置に送信する、
    請求項11に記載のデータ管理方法。
  13.  前記記憶デバイスは、前記ストレージ装置からライト要求を受信した場合に、ライト要求の対象のデータについて、前記判断を行い、前記フォーマット変換により得られた前記第1フォーマットのデータを記憶する、
    請求項11に記載のデータ管理方法。
  14.  前記記憶デバイスは、前記データを管理するリプレース後のストレージ装置から、前記ストレージ装置が利用する第2フォーマットを特定する情報を受信し、
     前記判断は、前記受信した情報に対応する第2フォーマットと、前記データの第1フォーマットとが互いに一致するか否かの判断である、
    請求項10に記載のデータ管理方法。
  15.  前記記憶デバイスは、負荷分散により前記データを管理することになる変更後のストレージ装置から、前記ストレージ装置が利用する第2フォーマットを特定する情報を受信し、
     前記判断は、前記受信した情報に対応する第2フォーマットと、前記データの第1フォーマットとが互いに一致するか否かの判断である、
    請求項10に記載のデータ管理方法。
PCT/JP2013/058047 2013-03-21 2013-03-21 ストレージシステム及びデータ管理方法 WO2014147786A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/JP2013/058047 WO2014147786A1 (ja) 2013-03-21 2013-03-21 ストレージシステム及びデータ管理方法
US14/758,839 US9740420B2 (en) 2013-03-21 2013-03-21 Storage system and data management method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2013/058047 WO2014147786A1 (ja) 2013-03-21 2013-03-21 ストレージシステム及びデータ管理方法

Publications (1)

Publication Number Publication Date
WO2014147786A1 true WO2014147786A1 (ja) 2014-09-25

Family

ID=51579517

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2013/058047 WO2014147786A1 (ja) 2013-03-21 2013-03-21 ストレージシステム及びデータ管理方法

Country Status (2)

Country Link
US (1) US9740420B2 (ja)
WO (1) WO2014147786A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107436729A (zh) * 2016-05-27 2017-12-05 瑞昱半导体股份有限公司 储存系统的控制装置及其储存空间回收方法

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9940052B2 (en) 2016-09-14 2018-04-10 Micron Technology, Inc. Memory device configuration commands
KR20190128284A (ko) * 2018-05-08 2019-11-18 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작방법
US11119654B2 (en) * 2018-07-10 2021-09-14 International Business Machines Corporation Determining an optimal storage environment for data sets and for migrating data sets

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008047196A (ja) * 2006-08-11 2008-02-28 Onkyo Corp コンテンツ転送システム、コンテンツ記録装置及びコンテンツ転送装置、並びにそれらのプログラム
JP2013050847A (ja) * 2011-08-31 2013-03-14 Fujitsu Ltd ファイル同期方法、ファイル同期サーバ装置及びファイル同期プログラム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0962560A (ja) * 1995-08-30 1997-03-07 Fuji Xerox Co Ltd データベース装置
US7260777B2 (en) * 2001-08-17 2007-08-21 Desknet Inc. Apparatus, method and system for transforming data
US7293040B2 (en) * 2005-02-11 2007-11-06 Sybase, Inc. System and methodology for database migration between platforms
JP2008152422A (ja) 2006-12-15 2008-07-03 Hitachi Ltd データ移行システム及びデータ移行方法
US8285681B2 (en) * 2009-06-30 2012-10-09 Commvault Systems, Inc. Data object store and server for a cloud storage environment, including data deduplication and data management across multiple cloud storage sites
US20110125809A1 (en) * 2009-11-20 2011-05-26 Rovi Technologies Corporation Managing different formats for media files and media playback devices
US10108687B2 (en) * 2015-01-21 2018-10-23 Commvault Systems, Inc. Database protection using block-level mapping

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008047196A (ja) * 2006-08-11 2008-02-28 Onkyo Corp コンテンツ転送システム、コンテンツ記録装置及びコンテンツ転送装置、並びにそれらのプログラム
JP2013050847A (ja) * 2011-08-31 2013-03-14 Fujitsu Ltd ファイル同期方法、ファイル同期サーバ装置及びファイル同期プログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107436729A (zh) * 2016-05-27 2017-12-05 瑞昱半导体股份有限公司 储存系统的控制装置及其储存空间回收方法

Also Published As

Publication number Publication date
US9740420B2 (en) 2017-08-22
US20150339076A1 (en) 2015-11-26

Similar Documents

Publication Publication Date Title
US8392670B2 (en) Performance management of access to flash memory in a storage device
US10031703B1 (en) Extent-based tiering for virtual storage using full LUNs
US10176212B1 (en) Top level tier management
JP6000376B2 (ja) 特性の異なる複数種類のキャッシュメモリを有する情報処理装置
US9116622B2 (en) Storage system having nonvolatile semiconductor storage device with nonvolatile semiconductor memory
JP6600698B2 (ja) 計算機システム
US9658796B2 (en) Storage control device and storage system
US20150212752A1 (en) Storage system redundant array of solid state disk array
TWI531963B (zh) Data storage systems and their specific instruction enforcement methods
KR20150105323A (ko) 데이터 스토리지 방법 및 시스템
WO2015162758A1 (ja) ストレージシステム
US10503424B2 (en) Storage system
WO2016046911A1 (ja) ストレージシステム及びストレージシステムの管理方法
US10310764B2 (en) Semiconductor memory device and storage apparatus comprising semiconductor memory device
WO2020007030A1 (zh) 一种系统控制器和系统垃圾回收方法
US10126987B2 (en) Storage devices and methods for controlling a storage device
US20190243758A1 (en) Storage control device and storage control method
US10664193B2 (en) Storage system for improved efficiency of parity generation and minimized processor load
WO2014147786A1 (ja) ストレージシステム及びデータ管理方法
US8799573B2 (en) Storage system and its logical unit management method
US20140317367A1 (en) Storage apparatus and data copy control method
JP6817340B2 (ja) 計算機
WO2016194162A1 (ja) 計算機システム
US20180307427A1 (en) Storage control apparatus and storage control method
JP5597266B2 (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: 13878689

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 14758839

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13878689

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP