Processing system, processing method, and program

The processing system optimizes data storage in SSDs by bundling drives for overprovisioning, adjusting capacity and selecting drives based on access patterns, enhancing convenience and efficiency in data management.

JP2025141047APending Publication Date: 2025-09-29NEC PLATFROMS LTD
View PDF 8 Cites 0 Cited by

Patent Information

Application Number
JP2024040782
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-03-15
Publication Date
2025-09-29

AI Technical Summary

Technical Problem

Existing nonvolatile memory systems, such as solid state drives (SSDs), require improvements in convenience and efficiency, particularly in managing overprovisioning areas to optimize data storage based on access patterns.

Method used

A processing system that bundles multiple drives subject to overprovisioning, includes units to change the capacity of the overprovisioning area, determine an appropriate capacity based on access patterns, and select drives for data storage, optimizing data storage by frequently rewritten data in resistant drives and less frequently rewritten data in larger capacity drives.

Benefits of technology

The system enhances convenience and efficiency by optimizing data storage, allowing frequent rewrites in resistant drives and less frequent rewrites in larger capacity drives, thereby improving overall data management.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025141047000001_ABST
    Figure 2025141047000001_ABST
Patent Text Reader

Abstract

To provide a processing system which offers improved convenience.SOLUTION: A processing system for executing processing by bundling multiple drives to be overprovisioned into one, and comprises a first processing unit for adjusting the capacity of an OP region representing an overprovisioned region, a second processing unit configured to determine an appropriate capacity size of the OP region among the multiple drives on the basis of an access pattern to data stored in the multiple drives, and a third processing unit configured to determine a drive for storing data from among the multiple drives according to a determination result of the second processing unit.SELECTED DRAWING: Figure 10
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present disclosure relates to a processing system, a processing method, and a program. [Background technology]

[0002] Nonvolatile memories such as solid state drives (SSDs) are used in a variety of fields. Patent Document 1 discloses a related technology, which is a technology relating to overprovisioning. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Special Publication No. 2014-513356 Summary of the Invention [Problem to be solved by the invention]

[0004] In the system related to Patent Document 1, a technique that can improve convenience is required.

[0005] One of the objectives of each aspect of the present disclosure is to provide a processing system, a processing method, and a program that can solve the above-mentioned problems. [Means for solving the problem]

[0006] According to one aspect of the present disclosure, a processing system is a processing system that bundles multiple drives that are subject to overprovisioning into one and performs processing, and includes a first processing unit that changes the capacity of the OP area, which is the overprovisioning area, a second processing unit that determines an appropriate capacity of the OP area among the multiple drives based on the access pattern to data stored on the multiple drives, and a third processing unit that determines a drive from the multiple drives in which to store data based on the determination result by the second processing unit.

[0007] According to another aspect of the present disclosure, a processing method is executed by a processing system that bundles multiple drives that are subject to overprovisioning into one and executes processing, and includes changing the capacity of an OP area, which is the overprovisioning area, determining an appropriate capacity of the OP area among the multiple drives based on an access pattern to data stored in the multiple drives, and determining a drive from the multiple drives in which to store data based on the determination result.

[0008] According to another aspect of the present disclosure, a program causes a processing system that bundles multiple drives that are subject to overprovisioning together to perform processing to change the capacity of the OP area, which is the overprovisioning area, determine an appropriate capacity for the OP area among the multiple drives based on the access pattern to data stored on the multiple drives, and determine a drive from the multiple drives in which to store the data based on the determination result. [Effects of the Invention]

[0009] According to each aspect of the present disclosure, convenience can be improved. [Brief explanation of the drawings]

[0010] [Figure 1] FIG. 1 illustrates an example of a configuration of a processing system according to some embodiments of the present disclosure. [Figure 2] FIG. 2 is a diagram illustrating a first example of a processing flow of a processing system according to some embodiments of the present disclosure. [Figure 3] FIG. 10 is a diagram illustrating a second example of a processing flow of a processing system according to some embodiments of the present disclosure. [Figure 4] FIG. 10 is a diagram illustrating a third example of a processing flow of a processing system according to some embodiments of the present disclosure. [Figure 5]FIG. 10 is a diagram illustrating a fourth example of a processing flow of a processing system according to some embodiments of the present disclosure. [Figure 6] FIG. 10 is an image diagram of the processes of steps S11 and S12 performed by the disk array device according to some embodiments of the present disclosure. [Figure 7] FIG. 10 is an image diagram of the process of step S22 performed by the disk array device according to some embodiments of the present disclosure. [Figure 8] FIG. 10 is an image diagram of a process of moving an area performed by a disk array device according to some embodiments of the present disclosure. [Figure 9] FIG. 10 is a conceptual diagram of a process for changing an OP area performed by a disk array device according to some embodiments of the present disclosure. [Figure 10] FIG. 1 illustrates an example of a configuration of a processing system according to some embodiments of the present disclosure. [Figure 11] FIG. 1 is a diagram illustrating an example of a processing flow of a processing system according to some embodiments of the present disclosure. [Figure 12] FIG. 1 is a schematic block diagram illustrating the configuration of a computer according to at least one embodiment. DETAILED DESCRIPTION OF THE INVENTION

[0011] Hereinafter, the embodiments will be described in detail with reference to the drawings. <Embodiment> (Configuration of Processing System 1) A processing system 1 according to an embodiment of the present disclosure will be described with reference to the drawings. The processing system 1 is a system that stores frequently rewritten data in a drive that is resistant to rewriting, and stores less frequently rewritten data in a drive with a large capacity.

[0012] Fig. 1 is a diagram illustrating an example of the configuration of a processing system 1 according to some embodiments of the present disclosure. As shown in Fig. 1, the processing system 1 according to one embodiment of the present disclosure includes a host 10, a disk array device 20, and drives 30a0 to 30aN. The drives 30a0 to 30a may be collectively referred to as drives 30.

[0013] The host 10 instructs the disk array device 20 to perform processing. For example, the host 10 sends a write command or a read command to the disk array device 20.

[0014] As shown in FIG. 1, the disk array device 20 includes a host processing controller 201, a cache processing controller 202, a cache 203, a group controller 204, an IO processing controller 205, and an IO monitor 206.

[0015] When the disk array device 20 receives a write command from the host 10, the host processing controller 201 stores the data in the cache 203. Then, the host processing controller 201 reports to the host 10 that the write command has been completed.

[0016] When the disk array device 20 receives a read command from the host 10, the group control unit 204 checks which drive 30 the data corresponds to. The group control unit 204 reads the data from the cache 203 of the drive 30 via the IO processing control unit 205. The group control unit 204 then reports the completion of the read command to the host 10.

[0017] The cache processing control unit 202 manages addresses and the like to be stored in the cache 203. The cache 203 stores data such as addresses. The IO processing control unit 205 controls data transfer between the cache 203 and the drive 30. The IO monitoring unit 206 acquires the type and amount of IO for data stored in the drive 30 via the IO processing control unit 205.

[0018] Each of the drives 30 stores various data under the control of the disk array device 20. For example, each of the drives 30 is an SSD (Solid State Drive).

[0019] The above-described processing performed by the processing system 1 according to the embodiment of the present disclosure is merely an example, and the processing system 1 is not limited to the above-described processing. For example, the processing system 1 may perform the processing described below.

[0020] (Processing performed by the processing system of the present disclosure) FIG. 2 is a diagram illustrating a first example of a processing flow of the processing system 1 according to some embodiments of the present disclosure. FIG. 3 is a diagram illustrating a second example of a processing flow of the processing system 1 according to some embodiments of the present disclosure. FIG. 4 is a diagram illustrating a third example of a processing flow of the processing system 1 according to some embodiments of the present disclosure. FIG. 5 is a diagram illustrating a fourth example of a processing flow of the processing system 1 according to some embodiments of the present disclosure. Here, processing performed by the disk array device 20 included in the processing system 1 will be described. Note that in the specific example shown below, the drives 30 are assumed to be six drives, drives 30a0 to 30a5.

[0021] (Create a group) First, the group creation process performed by the disk array device 20 will be described. FIG. 2 shows an example of the process flow for creating a group performed by the disk array device 20. The group control unit 204 of the disk array device 20 groups multiple drives 30 and provides diversity to the over-provisioning (hereinafter, OP) area (step S1). For example, the group control unit 204 divides the OP area into groups according to a predetermined rule. Specifically, for example, the group control unit 204 groups the OP area into large, medium, and small areas so that each has approximately the same number of drives. More specifically, for example, the group control unit 204 groups six drives 30a0 to 30a5 into one group, and assigns two drives to the large-capacity OP area, two drives to the medium-capacity OP area, and two drives to the small-capacity OP area. Note that OP refers to the allocation of part of the area of ​​the drive 30, which will be described later, as a cache by firmware. The OP area refers to the area allocated by OP.

[0022] (IO processing) Next, the IO (Input / Output) processing performed by the disk array device 20 will be described. Figure 3 shows an example of the processing flow of the IO processing performed by the disk array device 20. The IO processing control unit 205 of the disk array device 20 stores data preferentially in the drive 30 assigned to the large-capacity OP area (step S11). The IO monitoring unit 206 of the disk array device 20 monitors the IO (Input / Output) for each area of ​​a certain size (step S12). For example, the IO monitoring unit 206 checks the usage status, such as the type and frequency of write IO, for each area of ​​a certain size, and acquires performance information, such as the number of writes and the read / write ratio.

[0023] FIG. 6 is a conceptual diagram of the processes of steps S11 and S12 performed by the disk array device 20 according to some embodiments of the present disclosure. Part (a) of FIG. 6 illustrates data (performance information). Part (b) of FIG. 6 illustrates a drive 30. The disk array device 20 preferentially stores the data (performance information) illustrated in part (a) of FIG. 6 in the drive 30 assigned to the large-capacity OP area, as illustrated in part (b) of FIG. 6. Note that LDN in FIG. 6 is an abbreviation for Logical Disk Number, and refers to the virtual disk number. The disk array device 20 further divides the LDs, which are virtual divisions of the drives 30, into areas (e.g., 0000-A), and manages them as shown in the table illustrated in part (a) of FIG. 6. The disk array device 20 then changes the drive that stores the data in each area based on the access pattern to each area.

[0024] The IO processing control unit 205 monitors the usage status at regular time intervals. The IO monitoring unit 206 determines whether the access frequency ranking has changed during the monitoring. If the IO monitoring unit 206 determines that the access frequency ranking has not changed during the monitoring, it returns to the determination process. Furthermore, if the IO monitoring unit 206 determines that the access frequency ranking has changed during the monitoring, it moves the area. Furthermore, the IO processing control unit 205 excludes accesses resulting from the movement of this area from the access frequency count so as not to affect the access frequency ranking.

[0025] (Area movement processing) Next, we will explain the area migration process performed by the disk array device 20. Figure 4 shows an example of the processing flow of the area migration process performed by the disk array device 20. The IO monitor 206 of the disk array device 20 analyzes the number of writes, which is performance information, and determines whether or not there is an area that needs to be migrated based on the analysis result (step S21).

[0026] If the IO monitoring unit 206 determines that there is an area that needs to be moved (YES in step S21), the IO processing control unit 205 changes the area with a low write frequency to an area on the drive 30 that is assigned to an OP area with a smaller capacity (step S22). For example, the IO monitoring unit 206 ranks the write frequency for each area based on the usage status. Then, the IO processing control unit 205 leaves the area with a high access frequency on the drive 30 that is assigned to an OP area with a large capacity. In addition, the IO processing control unit 205 moves the area with a low access frequency to an area on the drive 30 that is assigned to an OP area with a smaller capacity.

[0027] For example, the IO monitor 206 checks the number of writes and ranks each area. The IO processing control unit 205 then moves areas with a relatively low access frequency to a drive 30 assigned to a small-capacity OP area.

[0028] More specifically, for example, when the IO processing control unit 205 moves data written in area A to area B, the actual movement is completed by reading the data written in area A and writing it to area B.

[0029] Furthermore, when swapping data written in area A with data written in area B, the IO processing control unit 205 reads the data in area A and temporarily writes and saves it in area C, which is not currently in use. The IO processing control unit 205 reads the data in area B and writes it to area A. Then, the IO processing control unit 205 writes the data in area C (originally written in area A) to area B.

[0030] FIG. 7 is an image diagram of the processing of step S22 performed by the disk array device 20 according to some embodiments of the present disclosure. Specifically, part (a) of FIG. 7 shows data (performance information) accompanied by information indicating access frequency. Part (b) of FIG. 7 shows the access frequency ranking and the areas corresponding to that ranking. Part (c) of FIG. 7 shows the drive 30. The IO processing control unit 205 stores the data (performance information) shown in part (a) of FIG. 7 in the drive 30, as shown in part (c) of FIG. 7, in accordance with the access frequency ranking shown in part (b) of FIG. 7 and the areas corresponding to that ranking.

[0031] Furthermore, if the IO monitor 206 determines that there is no area that requires movement (NO in step S21), the IO processing control unit 205 ends the process without performing the process in step S22.

[0032] FIG. 8 is a conceptual diagram of a process of moving an area performed by the disk array device 20 according to some embodiments of the present disclosure. Specifically, part (a) of FIG. 8 shows data (performance information) accompanied by information indicating access frequency. Part (b) of FIG. 8 shows the access frequency ranking and the areas corresponding to that ranking. Note that the access frequency ranking and the areas corresponding to that ranking shown in part (b) of FIG. 8 are different from the access frequency ranking and the areas corresponding to that ranking shown in part (b) of FIG. 7. Part (c) of FIG. 8 shows the drive 30. The disk array device 20 changes the storage of the data (performance information) shown in part (a) of FIG. 8 in the drive 30, as shown in part (c) of FIG. 8, in accordance with the access frequency ranking and the areas corresponding to that ranking shown in part (b) of FIG. 8.

[0033] The IO monitor 206 changes the threshold for switching drives 30 when there is insufficient space or when a drive 30 is added. For example, the disk array device 20 checks the usage status and dynamically changes the threshold for switching drives 30. Specifically, for example, when a drive 30 is added, the IO monitor 206 first sets the OP area of ​​the drive 30 assigned to the large-capacity OP area. Thereafter, the disk array device 20 checks the read / write ratio. Then, the IO monitor 206 changes the threshold so that, for example, an area with a write ratio of less than 70% is moved to a drive 30 assigned to a medium-capacity OP area. The IO monitor 206 also changes the threshold so that, for example, an area with a write ratio of less than 30% is moved to a drive 30 assigned to a small-capacity OP area.

[0034] (Change process of drive OP area) Next, the process of changing the OP area of ​​the drive 30 performed by the disk array device 20 will be described. Figure 5 shows an example of the process flow of changing the OP area of ​​the drive 30 performed by the disk array device 20. The IO monitor 206 of the disk array device 20 monitors the access status of all of the drives 30. The IO processing control unit 205 then changes the size of the OP area capacity of some of the drives 30 according to the monitoring status. At this time, the IO processing control unit 205 does not reduce the capacity available for storing user data other than the capacity allocated to the OP area of ​​the drive 30. This makes it possible to prevent the amount of data that users can write to the drive 30 from becoming smaller.

[0035] For example, the IO processing control unit 205 analyzes the read / write ratio, which is performance information. Then, the IO processing control unit 205 determines whether or not it is necessary to change the setting of the OP area in the drive 30 based on the analysis result (step S31). If the IO processing control unit 205 determines that it is necessary to change the setting of the OP area in the drive 30 based on the analysis result (YES in step S31), it changes the area to which writing is less frequently performed to an area in the drive 30 that has been assigned as an OP area with a smaller capacity (step S32). Specifically, for example, the IO processing control unit 205 checks the read / write ratio. Then, for example, if the write ratio is 80% or more or less than 20%, the IO processing control unit 205 changes the setting of the OP area in the drive 30 that has been assigned as an OP area with a medium capacity to an OP area with a large capacity or a small capacity.

[0036] The IO processing control unit 205 also determines whether the total capacity of the drives 30 is insufficient for the amount of data stored therein. If the IO processing control unit 205 determines that the total capacity of the drives 30 is insufficient for the amount of data stored therein, a new drive 30 is added. Then, the IO processing control unit 205 changes the OP area of ​​the newly added drive 30 according to the access status. FIG. 9 is an image diagram of a process of changing the OP area performed by the disk array device 20 according to some embodiments of the present disclosure. Specifically, part (a) of FIG. 9 shows that a new drive 30 has been added to a drive 30 assigned to an OP area with a medium capacity. For example, when the write ratio is 80% or more or less than 20%, the OP area of ​​the drive 30 assigned to the medium capacity OP area is changed to an OP area with a large capacity or a small capacity (in the example shown in part (b) of FIG. 9, the OP area of ​​the drive 30 is changed to an OP area with a large capacity).

[0037] (advantage) The processing system 1 according to one embodiment of the present disclosure has been described above. The processing system 1 is a system that aggregates multiple drives 30 that are subject to overprovisioning into one and executes processing. In the processing system 1, a first processing unit changes the capacity of the OP area, which is the overprovisioning area. A second processing unit determines an appropriate capacity for the OP area among the multiple drives based on the access pattern to data stored in the multiple drives. A third processing unit determines a drive from the multiple drives in which to store data based on the determination result by the second processing unit.

[0038] This processing system 1 allows data that is frequently rewritten to be stored in a drive that is resistant to rewriting, and data that is less frequently rewritten to be stored in a drive with a large capacity. As a result, the processing system 1 can store data efficiently. In other words, the processing system 1 can improve convenience.

[0039] In the processing system 1 according to the modified example of the embodiment of the present disclosure, the drives 30 may be grouped by constructing a RAID (Redundant Array of Inexpensive Disks).

[0040] In a processing system 1 according to another modification of the embodiment of the present disclosure, the disk array device 20 may change the threshold for moving the area to reduce the amount of data written when the UsedEndurance of a drive 30 with a large OP area exceeds a certain threshold. The UsedEndurance is a value indicating the consumed lifespan of the drive 30. The larger this value, the shorter the lifespan of the drive 30.

[0041] In the processing system 1 according to another modification of the embodiment of the present disclosure, the drive 30 may be configured using a technology that creates an area called an "SLC buffer" that operates equivalent to an SLC (Single Level Cell) in order to increase capacity, part of which is configured using a technology that creates an area called an "SLC buffer" that operates equivalent to an SLC (Single Level Cell) in order to improve write performance. If there are IOs that exceed this SLC buffer, performance will decrease, so the concept of the present disclosure may also be applied to the size of the SLC buffer, as with the OP area.

[0042] Next, a processing system 1 according to some embodiments of the present disclosure will be described. Fig. 10 is a diagram illustrating an example of the configuration of the processing system 1 according to some embodiments of the present disclosure. The processing system 1 is a processing system that aggregates multiple drives that are subject to overprovisioning into one and executes processing. As shown in Fig. 10, the processing system 1 includes a first processing unit 301, a second processing unit 302, and a third processing unit 303.

[0043] A first processing unit 301 changes the capacity of the OP area, which is the overprovisioned area. A second processing unit 302 determines an appropriate size of the OP area among the multiple drives based on the access pattern to the data stored on the multiple drives. A third processing unit 303 determines a drive from the multiple drives in which to store the data based on the determination result by the second processing unit.

[0044] The first processing unit 301 can be realized, for example, by using the functions of the processing unit XXX illustrated in Fig. 1. The second processing unit 302 can be realized, for example, by using the functions of the processing unit XXX illustrated in Fig. 1. The third processing unit 303 can be realized, for example, by using the functions of the processing unit XXX illustrated in Fig. 1.

[0045] Next, processing performed by the processing system 1 according to some embodiments of the present disclosure will be described. Fig. 11 is a diagram showing an example of a processing flow of the processing system 1 according to some embodiments of the present disclosure. Here, the processing of the processing system 1 will be described with reference to Fig. 11.

[0046] In a processing system 1 that aggregates multiple drives that are targets of overprovisioning into one and executes processing, a first processing unit 301 changes the capacity of the OP area, which is the overprovisioning area (step S101). A second processing unit 302 determines an appropriate size of the OP area among the multiple drives based on an access pattern to data stored in the multiple drives (step S102). A third processing unit 303 determines a drive from the multiple drives in which to store data based on the determination result by the second processing unit (step S103).

[0047] The processing system 1 according to some embodiments of the present disclosure has been described above. This processing system 1 can improve convenience.

[0048] The order of the processes in each embodiment of the present disclosure may be changed as long as the processes are performed appropriately.

[0049] Although each embodiment of the present disclosure has been described, the above-mentioned processing system 1, host 10, disk array device 20, drive 30, and other control devices may have a computer system inside. The above-mentioned processing steps are stored in the form of a program on a computer-readable recording medium, and the above processing is performed by reading and executing this program by a computer. Specific examples of computers are shown below.

[0050] 12 is a schematic block diagram showing the configuration of a computer according to at least one embodiment. As shown in FIG. 12, the computer 5 includes a CPU (Central Processing Unit) 6, a main memory 7, a storage 8, and an interface 9.

[0051] For example, the above-described processing system 1, host 10, disk array device 20, drive 30, and other control devices are each implemented in a computer 5. The operations of each of the above-described processing units are stored in the form of a program in storage 8. CPU 6 reads the program from storage 8, loads it into main memory 7, and executes the above-described processing in accordance with the program. Furthermore, CPU 6 allocates storage areas in main memory 7 corresponding to each of the above-described storage units in accordance with the program.

[0052] Examples of storage 8 include a hard disk drive (HDD), a solid state drive (SSD), a magnetic disk, a magneto-optical disk, a compact disc read-only memory (CD-ROM), a digital versatile disc read-only memory (DVD-ROM), and a semiconductor memory. Storage 8 may be an internal medium directly connected to the bus of computer 5, or an external medium connected to computer 5 via interface 9 or a communication line. In addition, when this program is distributed to computer 5 via a communication line, computer 5 that receives the program may load the program into main memory 7 and execute the above-mentioned processing. In at least one embodiment, storage 8 is a non-transitory tangible storage medium.

[0053] The program may also implement some of the functions described above. Furthermore, the program may be a file that can implement the functions described above in combination with a program already recorded in the computer system, a so-called differential file (differential program).

[0054] Although several embodiments of the present disclosure have been described, these embodiments are merely examples and do not limit the scope of the disclosure. Various additions, omissions, substitutions, and modifications may be made to these embodiments without departing from the spirit of the disclosure.

[0055] Note that part or all of the above-described embodiments can be described as, but are not limited to, the following supplementary notes.

[0056] (Appendix 1) A processing system that performs processing by bundling multiple drives that are targets of overprovisioning into one, a first processing unit that changes the size of the capacity of an OP area that is an overprovisioning area; a second processing unit that determines an appropriate size of the capacity of the OP area in the plurality of drives based on an access pattern to data stored in the plurality of drives; a third processing unit that determines a drive to store data from among the plurality of drives based on a determination result by the second processing unit; A processing system comprising:

[0057] (Appendix 2) a fourth processing unit that adjusts the size of the capacity of the OP region; 2. The processing system of claim 1, comprising:

[0058] (Appendix 3) a fifth processing unit that combines the plurality of drives into one by constructing a RAID (Redundant Array of Inexpensive Disks) using the plurality of drives; 3. The processing system of claim 1 or 2, comprising:

[0059] (Appendix 4) a sixth processing unit that changes a threshold for moving the area in order to suppress the amount of data written when a UsedEndurance of a drive in which the OP area is set large among the plurality of drives exceeds a certain threshold; 4. The processing system of any one of claims 1 to 3, comprising:

[0060] (Appendix 5) A processing method executed by a processing system that executes processing by bundling multiple drives that are targets of overprovisioning into one, Changing the size of the capacity of the OP area, which is the over-provisioning area; determining an appropriate size of the capacity of the OP area in the plurality of drives based on an access pattern to data stored in the plurality of drives; determining a drive to store data from among the plurality of drives based on the determination result; A processing method comprising:

[0061] (Appendix 6) Adjusting the capacity of the OP region; Attachment 5, a processing method comprising:

[0062] (Appendix 7) bundling the plurality of drives into one by constructing a RAID (Redundant Arrays of Inexpensive Disks) with the plurality of drives; 6. The method of claim 5, further comprising:

[0063] (Appendix 8) When the UsedEndurance of a drive in which the OP area is set large among the plurality of drives exceeds a certain threshold, changing the threshold for moving the area to reduce the amount of data written. 8. The processing method according to any one of appendices 5 to 7,

[0064] (Appendix 9) In a processing system that bundles multiple drives that are subject to overprovisioning into one, Changing the size of the capacity of the OP area, which is the over-provisioning area; determining an appropriate size of the capacity of the OP area in the plurality of drives based on an access pattern to data stored in the plurality of drives; determining a drive to store data from among the plurality of drives based on the determination result; A program that executes the following.

[0065] (Appendix 10) Adjusting the capacity of the OP region; 10. The program according to claim 9, which causes the program to execute the above steps.

[0066] (Appendix 11) bundling the plurality of drives into one by constructing a RAID (Redundant Arrays of Inexpensive Disks) with the plurality of drives; 11. The program according to claim 9 or 10, which causes the program to execute the above.

[0067] (Appendix 12) When the UsedEndurance of a drive in which the OP area is set large among the plurality of drives exceeds a certain threshold, changing the threshold for moving the area to reduce the amount of data written. 12. The program according to any one of claims 9 to 11, [Explanation of symbols]

[0068] 1. Processing System 5. Computer 6 CPU 7. Main memory 8. Storage 9. Interface 10. Host 20. Disk array device 30···Drive 201 Host processing control unit 202 Cache processing control unit 203...Cache 204 Group Control Unit 205 IO processing control unit 206...IO monitoring section

Claims

1. A processing system that performs processing by bundling multiple drives that are targets of overprovisioning into one, a first processing unit that changes the size of the capacity of an OP area that is an overprovisioning area; a second processing unit that determines an appropriate size of the capacity of the OP area in the plurality of drives based on an access pattern to data stored in the plurality of drives; a third processing unit that determines a drive to store data from among the plurality of drives based on a determination result by the second processing unit; A processing system comprising:

2. a fourth processing unit that adjusts the size of the capacity of the OP area; The processing system of claim 1 , comprising:

3. a fifth processing unit that aggregates the plurality of drives into one by constructing a RAID (Redundant Arrays of Inexpensive Disks) using the plurality of drives; The processing system of claim 1 , comprising:

4. a sixth processing unit that changes a threshold for moving the area in order to suppress the amount of data written when a UsedEndurance of a drive in which the OP area is set large among the plurality of drives exceeds a certain threshold; The processing system of claim 1 , comprising:

5. A processing method executed by a processing system that executes processing by bundling multiple drives that are targets of overprovisioning into one, comprising: Changing the size of the capacity of the OP area, which is the over-provisioning area; determining an appropriate size of the capacity of the OP area in the plurality of drives based on an access pattern to data stored in the plurality of drives; determining a drive to store data from among the plurality of drives based on the determination result; A processing method comprising:

6. In a processing system that bundles multiple drives that are subject to overprovisioning into one and performs processing, Changing the size of the capacity of the OP area, which is the over-provisioning area; determining an appropriate size of the capacity of the OP area in the plurality of drives based on an access pattern to data stored in the plurality of drives; determining a drive to store data from among the plurality of drives based on the determination result; A program that executes the following.

Citation Information

Patent Citations

  • A method for achieving low write amplification with minimal overprovisioning in storage devices.

    JP2014519112A

  • Memory system

    JP2017027387A

  • Memory control device, storage device, control program of storage device, and control method for storage device

    JP2017162260A

  • Data processing method and apparatus, and flash device

    JP2018527688A

  • Memory system and control method

    JP2019008729A