WO2015121938A1 - データ管理装置及び方法 - Google Patents
データ管理装置及び方法 Download PDFInfo
- Publication number
- WO2015121938A1 WO2015121938A1 PCT/JP2014/053276 JP2014053276W WO2015121938A1 WO 2015121938 A1 WO2015121938 A1 WO 2015121938A1 JP 2014053276 W JP2014053276 W JP 2014053276W WO 2015121938 A1 WO2015121938 A1 WO 2015121938A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- file
- key
- value
- management unit
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0253—Garbage collection, i.e. reclamation of unreferenced memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0608—Saving storage space on storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0643—Management of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0652—Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1041—Resource optimization
- G06F2212/1044—Space efficiency improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/20—Employing a main memory using a specific memory technology
- G06F2212/202—Non-volatile memory
- G06F2212/2022—Flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7202—Allocation control and policies
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7205—Cleaning, compaction, garbage collection, erase control
Definitions
- the present invention relates to a data management apparatus and method, and is particularly suitable for application to a data management apparatus that stores and manages data in an SSD (Solid State Drive) by a KVS (Key-Value Store) method.
- SSD Solid State Drive
- KVS Key-Value Store
- the SSD is a storage device using a semiconductor memory such as a flash memory as a storage medium, and has an advantage that it has excellent access performance and power saving performance and is resistant to vibration and impact compared to a hard disk device.
- a storage area is divided into unit areas called blocks of a predetermined size (for example, 2 [MB]) and managed.
- writing of data to the SSD is performed in units called pages having a size smaller than the block (for example, 4 [kB]), but erasure of written data can be performed only in units of blocks.
- KVS is a method of adding a unique character string or numeric value called a key to data to be saved (value: value) and saving the data as a set with the key, and specifying the corresponding key.
- value data to be stored
- Key data in which Key is added to Value
- Key-value Key-Value
- Patent Document 1 discloses a method for storing data in an SSD using a log structure appending method as a data management method using SSD for KVS. According to this data management method, there is an advantage that a decrease in performance due to random access which is a characteristic of SSD can be reduced.
- Patent Document 1 it is necessary to continue writing data to the SSD, and the write process goes around the storage area of the SSD, and the data needs to be written to a block in which data is already stored. In this case, there is a problem that the above-described garbage collection occurs, and the write performance is reduced accordingly.
- key-value data is temporarily held in a memory in the server device, and the key-value data held in the memory is stored at a predetermined timing in a hard disk device or SSD.
- a hard disk device or SSD There is a configuration in which data is written in a storage device.
- the key-value data not yet written in the storage device among the key-value data held in the memory may be lost. It is necessary to prevent lost data by writing data to a storage device in synchronization with writing to the memory.
- the present invention has been made in consideration of the above points, and an object of the present invention is to propose a data management apparatus and method for reducing the occurrence of garbage collection and preventing the deterioration of the performance of writing data to an SSD.
- the SSD A data management unit for managing the key / value data stored in the file, and a file for appropriately creating a file of a predetermined size in the storage area of the SSD in response to a request from the data management unit, and managing the created file A management unit, wherein the file has a file size that is an integral multiple of a block that is a data erasure unit in the SSD, and the data management unit additionally writes the key / value data to be stored to the file.
- Request to the file manager to write to the file, and update the key in the file.
- the data before updating the value data and the deleted key / value data are invalidated to manage the number of valid key / value data in each file, and the valid key / value data exists. For the missing file, the file management unit is requested to delete the file.
- the data management device in a data management method for storing key value data consisting of a value to be stored and a key unique to the value in an SSD (Solid State Drive), includes A data management unit that manages the key / value data stored in the SSD, and appropriately creates a file of a predetermined size in the storage area of the SSD in response to a request from the data management unit, and manages the created file A file management unit, and the file has a file size that is an integral multiple of a block that is a data erasure unit in the SSD, and the data management unit stores the key / value data to be stored in the file.
- a data management unit that manages the key / value data stored in the SSD, and appropriately creates a file of a predetermined size in the storage area of the SSD in response to a request from the data management unit, and manages the created file
- the file has a file size that is an integral multiple of a block that is a data erasure unit in the SSD, and the data management unit stores the key / value data
- Requests the file manager to write additionally and updates the file in the file A first step of invalidating data before update of the value data and the deleted key / value data, and managing the number of valid key / value data in each file, and the data management unit; However, a second step of requesting the file management unit to delete the file for which the valid key / value data no longer exists is provided.
- garbage collection is performed in the SSD when deleting a file that no longer has valid key / value data. Does not occur.
- the garbage resulting from the write of the key / value data going around the storage area of the SSD since the files for which valid key / value data no longer exist are sequentially deleted, the garbage resulting from the write of the key / value data going around the storage area of the SSD. The occurrence of collection can be reduced.
- the present invention it is possible to realize a data management apparatus and method that can suppress the occurrence of garbage collection in the SSD as much as possible, thus reducing the occurrence of garbage collection and preventing the performance of writing data to the SSD.
- FIG. 1 denotes a data management device according to this embodiment as a whole.
- the data management device 1 is a computer device composed of a personal computer, a workstation, a main frame, or the like, and has a CPU (Central Processing Unit) 3, a memory 4, an SSD 5, A communication control unit 6, an input device 7, and a display device 8 are provided.
- CPU Central Processing Unit
- the CPU 3 is a processor that controls the operation of the entire data management device 1.
- the memory 4 is a semiconductor memory used as a main storage device, and is used not only as a work memory for the CPU 3 but also as a cache memory for temporarily storing key-value data to be read from and written to the SSD 5.
- the SSD 5 is a secondary storage device composed of a non-volatile semiconductor memory such as a flash memory, and is used for storing various programs and various data for a long period of time.
- the communication control unit 6 is composed of, for example, a NIC (Network Interface Card), and performs protocol control during communication with an external device.
- the input device 7 includes, for example, a keyboard and a mouse, and is used when the user performs various operation inputs to the data management device 1.
- the display device 8 includes a liquid crystal display and is used for displaying various screens and various information.
- FIG. 2 shows a logical configuration of the data management apparatus 1 related to the KVS function installed in the data management apparatus 1.
- the data management apparatus 1 includes a KVS 10 and a file system 11 as functions.
- the KVS 10 is a function embodied by the CPU 3 executing a KVS program (not shown) stored in the memory 4.
- the KVS 10 includes a data management unit 12 having a function of managing the key-value data DA stored in the SSD 5.
- the data management unit 12 requests the file system 11 to write the requested key-value data DA to the SSD 5 in response to a write request from the user input via the input device 7, and the key in the SSD 5. -Manage the storage location of Value data. Further, the data management unit 12 specifies a storage location of the Value corresponding to the designated Key on the SSD 5 in response to a read request for the Value designated by the user, and reads out the Value from the SSD 5 as a file system. 11 is requested.
- the file system 11 is a function realized by the CPU 3 executing a file system program (not shown) stored in the memory 4 and includes a file management unit 14.
- the file management unit 14 appropriately creates a file of a predetermined size in the storage area 15 of the SSD 5 in response to a request from the data management unit 12 of the KVS 10 and manages the created file. Then, in response to a request from the data management unit 12, the file management unit 14 writes the requested key-value data DA into the file FL and stores it in the SSD 5.
- the SSD 5 includes a storage area 15 provided by a semiconductor memory such as a flash memory, and a controller 16 that controls reading and writing of data from and to the storage area 15.
- the storage area 15 is managed by the controller 16 while being divided into a plurality of blocks BL of a predetermined size, and each block BL is further divided into a plurality of pages PG and managed. As described above, data is written to the SSD 5 in units of page PG, and data is erased from the SSD 5 in units of blocks BL.
- the data management apparatus 1 creates a file FL having a file size that is an integral multiple of the block BL of the SSD 5 on the storage area 15 of the SSD 5, and additionally writes the key-value data DA to be saved to the file FL.
- one of the features is that the number of valid key-value data DA in each file FL is managed, and the file FL in which the valid key-value data DA no longer exists is sequentially deleted.
- the data management unit 12 of the KVS 10 requests the file system 11 to create a file FL for writing the key-value data DA at the initial stage.
- the file management unit 14 of the file system 11 is requested to additionally write to the file FL.
- the data management unit 12 If the new key-value data DA cannot be added to the file FL, the data management unit 12 requests the file management unit 14 to create a new file FL for writing the key-value data DA. On the other hand, after this, the file management unit 14 is requested to write the key-value data DA requested by the user to the new file FL. Thereafter, the data management unit 12 repeats the same processing.
- the data management unit 12 regards the data before the update of the updated key-value data DA and the deleted key-value data DA as invalidated data as non-invalidated key-value data DA.
- (valid key-value data DA) the location in which file FL is stored is managed using the data management table 13 created on the memory 4 (FIG. 1).
- the data management unit 12 also manages the number of valid keys stored in each file FL (the number of valid key-value data DA) and the free capacity of each file FL using the data management table 13. To do. In this case, when the data management unit 12 requests the file management unit 14 to create a new file FL, the free space of the file FL that has been used for writing the key-value data DA until then is expressed as “ Managed as “0”.
- the data management unit 12 is a file FL having a free space of “0” (that is, a file that is no longer used as a writing destination of new key-value data DA), and stores all the stored key-value data DA. Requesting the file management unit 14 of the file system to delete the file FL that is invalidated due to update or deletion (that is, the file FL in which the number of valid key-value data is “0”) To do.
- the file management unit 14 of the file system 11 deletes the file FL from the SSD5. In this case, garbage collection does not occur in SSD5. Further, in the present data management device 1, since the file FL in which valid key-value data no longer exists is deleted sequentially as described above, the writing of the key-value data DA goes around the storage area 15 of the SSD 5. The occurrence of garbage collection can be reduced. Therefore, according to the data management device 1, occurrence of garbage collection in the SSD 5 can be suppressed as much as possible.
- FIG. 3 shows the configuration of the data management table 13 described above and the data format of the key-value data DA stored in the SSD 5.
- the data management table 13 includes a key-value management table 20 and a file management table 21.
- the key-value management table 20 is a table used for managing the relationship between the key and the value, and includes a key column 20A, a file name column 20B, and an offset column 20C as shown in FIG.
- the Key column 20A stores the Key assigned to each Key-Value data DA written to the SSD 5, and the file name column 20B stores the file FL in which the Value associated with the corresponding Key is written. The file name of is stored.
- the offset column 20C stores an offset amount (for example, in kilobytes) from the head of the corresponding file FL of the Value associated with the corresponding Key.
- the key-value data DA to which the key “Key1” is assigned is stored at the position “128” from the beginning of the file FL “File1”, and the key “Key2” is assigned. It is shown that the key-value data DA is stored at a position “16” from the top of the file FL “File2”.
- the file management table 21 is used to manage the number of keys stored in each file FL stored in the SSD 5 (more precisely, the number of key-value data DA) and the free capacity of each file FL.
- the table includes a file name column 21A, a key number column 21B, and a free capacity column 21C.
- the file name column 21A stores the file name of each file FL created on the SSD 5, and the Key number column 21B stores the number of valid keys stored in the corresponding file FL (more precisely, The number of valid key-value data DA) is stored.
- the free space column 21C stores the current free space (for example, in megabytes) of the corresponding file FL.
- the number of valid keys (the number of valid key-value data DA) is “1”, the free space is “0”, and the file “File2” For FL, the number of valid keys is “2” and the free space is “32”.
- the key-value data DA is padded as necessary with padding data PD so as not to cross the page PG and eventually the block BL in the storage area 15 (FIG. 2) of the SSD 5. Is added and stored in the file FL. Therefore, the data size of the padding data PD is selected so that the data size of the key-value data DA to which the padding data PD is added is the nearest integer multiple of the page PG size (page size) in the SSD 5 as a whole. .
- padding data PD having a data amount of 0.2 times the page size is added to the key-value data DA, and the data of the key-value data DA
- the size is 2.3 times the page size
- padding data PD having a data amount 0.7 times the page size is added to the key-value data DA.
- FIG. 3 shows that the file FL “File1” corresponding to the top entry (row) of the file management table 21 is updated with key-value data DA including “Key1” Key and “Value1” Value data.
- Key-Value data DA consisting of the previous data, data before updating Key-Value data DA consisting of Key data “Key2” and Value data “Value2”, Key data “Key1” and Value data “Value1” It is an example in the case of indicating that the updated data is stored.
- the file FL “File2” corresponding to the second entry of the file management table 21 includes key-value data DA including a key “Key3” and Value data “Value3”, and “Key2”.
- the key-value data DA consisting of the key “Value” and the value data "Value2” was stored, but the key-value data DA "Value2" was subsequently deleted ("Deleted") It is shown.
- FIG. 4 shows a processing procedure of data write processing executed by the data management unit 12 of the KVS 10 when the key-value data DA is written to the file FL on the SSD 5.
- the data management unit 12 gives an instruction to the file management unit 14 of the file system 11 to write the requested key-value data DA into the corresponding file FL on the SSD 5 according to the processing procedure shown in FIG.
- the data management unit 12 starts this data write process, and first refers to the file management table 21 (FIG. 3). Whether the file FL currently used for writing the key-value data DA (hereinafter referred to as a data write destination file as appropriate) FL has enough free space to write the key-value data DA to be saved Is determined (SP1).
- step SP3 the data management part 12 will progress to step SP3, if an affirmation result is obtained by this judgment.
- the data management unit 12 obtains a negative result in the determination at step SP1
- the data management unit 12 changes the free space of the current data write destination file FL in the file management table 21 to “0” and a new data write destination.
- the file management unit 14 of the file system 11 is requested to create the file FL (SP2).
- the file management unit 14 creates a file FL on the SSD 5 having a predetermined size that is an integral multiple of the block size of the SSD 5.
- the file management unit 14 then handles the file FL created at this time as a new data write destination file FL until the next data write destination file FL is created.
- the data management unit 12 transmits the key-value data DA to be saved and the data write request to the file management unit 14 of the file system 11 (SP3).
- the file management unit 14 adds the padding data PD to the key-value data DA given from the data management unit 12 so that the total data amount becomes the nearest integer multiple of the page size of the SSD 5, and then By giving the key-value data DA and its write request to the controller 16 of the SSD 16, the key-value data DA is written in the data write destination file FL.
- the data management unit 12 updates the key number column 21B and the free space column 21C of the entry corresponding to the data write destination file FL in the file management table 21 (SP4). Specifically, the data management unit 12 increases the number of keys stored in the key number column 21B of the entry by “1”, and sets the free capacity stored in the free capacity column 21C to the data write destination at that time. The value is updated by subtracting the key-value data DA written in the file FL.
- the data management unit 12 determines whether or not the key-value data DA written in the data write destination file FL in step SP3 is newly added in the KVS 10 (SP5). If the data management unit 12 obtains a positive result in this determination, it proceeds to step SP9.
- obtaining a negative result in the determination at step SP5 means that the writing of the key-value data DA is an update of the already-written key-value data DA.
- the data management unit 12 refers to the corresponding entry in the key-value management table 20 in order to invalidate the pre-update key-value data DA in the key-value data DA, and the file management table 21.
- the number of keys stored in the Key number column 21B of the entry corresponding to the file FL (hereinafter referred to as the pre-update data storage file) FL in which the key-value data DA before update in FIG. Decrease.
- the data management unit 12 refers to the file management table 21, and as a result of the processing in step SP6, the number of valid keys in the pre-update data storage file FL (the number of valid key-value data DA) is obtained. It is determined whether it is “0” and the free space of the file FL is “0” (SP7). If the data management unit 12 obtains a negative result in this determination, it proceeds to step SP9.
- the data management unit 12 when the data management unit 12 obtains a positive result in the determination at step SP7, it requests the file system 11 to delete the pre-update data storage file FL (SP8).
- the file management unit 14 of the file system 11 that has received this request transmits all the existing TRMI commands to the controller 16 (FIG. 2) of the SSD 5 so that all of the data storage files FL before the update are included. Give instructions to invalidate the page. Further, the SSD 16 controller 16 that has received this TRMI command deletes the key-value data stored in the corresponding page in the SSD 5. As a result, the above-mentioned pre-update data storage file FL is deleted from the SSD 5.
- the data management unit 12 updates the contents of the key-value management table 20 (SP9). Specifically, when the key-value data DA to be stored is newly stored in the SSD 5, the data management unit 12 registers the key-value data DA in the key-value management table 20. In addition, when the writing of the key-value data DA is an update of the key-value data DA already stored in the SSD 5, the data management unit 12, among the entries of the key-value management table 20, The file name stored in the file name column 20B (FIG. 3) of the entry corresponding to the key-value data DA and the offset amount stored in the offset column 20C (FIG. 3) are updated as necessary. Then, the data management unit 12 thereafter ends this data writing process.
- SP9 key-value management table 20
- the data management apparatus 1 creates a file FL having a file size that is an integral multiple of a block in the storage area 15 of the SSD 5, and While the key-value data DA to be saved is written additionally to the FL, the number of valid keys (number of valid key-value data DA) in each file FL is managed, and the number of valid keys is “0”. Since the file FL that has become deleted is sequentially deleted, the occurrence of garbage collection in the SSD 5 can be suppressed as much as possible. In this way, according to the data management apparatus 1, it is possible to reduce the occurrence of garbage collection and to prevent the performance of writing data to the SSD 5 from decreasing.
- the key-value data DA is additionally written to the data write destination file FL as described above, and garbage collection occurs.
- the key-value data DA alone is not deleted from the pre-update data storage file FL.
- the data management device 1 according to the first embodiment there is a possibility that a file FL containing a lot of invalidated key-value data DA exists in the SSD 5, and there is a possibility that the usage efficiency of the SSD 5 is lowered. There is a problem that there is.
- the pre-update data storage in which the data before the key-value data DA is updated is written.
- a predetermined threshold for example, 50 [%] of the file size
- FIG. 5 shows a key-value management table 31 of this embodiment that is used in such a data management apparatus 30 in place of the key-value management table 20 of the first embodiment described above with reference to FIG. .
- the key-value management table 31 includes a key column 31A, a file name column 31B, an offset column 31C, and a data size column 31D.
- the Key column 31A, the file name column 31B, and the offset column 31C store the same information as the Key column 20A, the file name column 20B, and the offset column 20C of the key-value management table 20 of the first embodiment, respectively.
- the data size column 31D stores the data size including the padding data PD (FIG. 3) of the corresponding key-value data DA.
- FIG. 6 shows a file management table 32 of the present embodiment applied in place of the file management table 21 of the first embodiment described above with reference to FIG.
- the file management table 32 includes a file name column 32A, a key number column 32B, a free capacity column 32C, and a total effective data amount column 32D.
- the total valid data amount column 32D stores the total data amount of valid key-value data (including padding data PD) DA in the corresponding file FL (hereinafter referred to as the total valid data amount).
- FIG. 7 shows the data writing process of the present embodiment executed by the data management unit 34 (FIG. 2) of the KVS 33 (FIG. 2) of the present embodiment when writing the key-value data DA into the file FL on the SSD 5. Show the procedure.
- the data writing process of the present embodiment is performed in the same manner as the data writing process of the first embodiment except that the process in step SP13 is different and the processes of steps SP16 to SP19 are added. .
- the data management unit 34 starts this data write process, and steps SP10 to SP12 are changed to steps SP1 to SP3 in FIG. Process in the same way.
- the data management unit 34 updates the file name column 32A, the key number column 32B, the free capacity column 32C, and the total valid data amount column 32D of the entry corresponding to the data write destination file FL in the file management table 32 ( SP13).
- the data management unit 34 determines whether the key-value data DA is newly added in the KVS 33 (SP14). This determination is made by determining whether or not the key of the key-value data DA to be stored is not yet registered in the key-value management table 31. If the data management unit 34 obtains a positive result in this determination, it proceeds to step SP22.
- the data management unit 34 invalidates the data before updating the key-value data DA.
- a file in which data before update of the key-value data DA is stored with reference to the file name column 31B of the entry in which the same key as the key of the -value data DA is stored in the key column 31A (data before update The storage file) FL is specified, and the number of keys stored in the key number column 32B of the entry corresponding to the pre-update data storage file FL in the file management table 32 is decreased by “1”.
- the data size before updating the key-value data DA is specified, and the validity of the same entry in the file management table 32 is determined.
- the data amount column 32D is reduced by the data size before update.
- the data management unit 34 reads the total effective data amount of the valid key-value data DA in the pre-update data storage file FL from the file management table 32, the read total effective data amount, and a preset threshold value Are compared (SP16). Then, the data management unit 34 determines whether or not the total effective data amount is smaller than the threshold based on the comparison result (SP17).
- step SP22 If the data management unit 34 obtains a negative result in this determination, it proceeds to step SP22. On the other hand, when the data management unit 34 obtains a positive result in the determination at step SP17, the file system 11 copies the valid key-value data DA in the pre-update data storage file FL to the data write destination file FL. An instruction is given to the file management unit 14 (SP18). Thus, according to this instruction, the file management unit 14 copies all the valid key-value data DA from the pre-update data storage file FL to the data write destination file FL.
- the data management unit 34 updates the key-value management table 31 and the file management table 32 respectively according to the contents of the data copy performed in step SP18 (SP19). As a result, the number of valid keys (number of key-value data) stored in the key number field 42B of the entry corresponding to the pre-update data storage file FL in the file management table 32 is updated to “0”. .
- the data management unit 34 refers to the file management table 21, and as a result of the processing at step SP19, the number of keys (number of key-value data) of the pre-update data storage file FL becomes “0” and the update is performed. It is determined whether or not the free space of the previous data storage file FL is “0” (SP20). The data management unit 34 always obtains a positive result in this determination.
- the data management unit 34 thereafter processes step SP21 and step SP22 in the same manner as step SP8 and step SP9 of the data writing process of FIG. However, in step SP22, the data management unit 34 updates the data size column 31 of the key-value management table 31 in addition to the processing of step SP9. Then, the data management unit 34 thereafter ends this data writing process.
- the file FL whose total effective data amount is less than the threshold value due to updating of the stored key-value data DA or the like can be deleted each time.
- the data management device 30 in addition to the effect obtained by the data management device 1 of the first embodiment, it is possible to obtain the effect that the utilization efficiency of the SSD 5 can be improved.
- the padding data PD is removed from each of the key-value data DA. 11 to the file management unit 14 (FIG. 2).
- the file management unit 14 to which such an instruction is given deletes the padding data PD added to each valid key-value data DA written in the original file FL, and the key-value data DA
- the padding data PD is added so that the total data size is the nearest integer multiple of the page PG (FIG. 2), and these valid key-value data DA are written together in the data write destination file FL.
- extra padding data PD is added when valid key-value data DA written in the pre-update data storage file FL is copied to the data write destination file FL. Since it can be deleted, in addition to the effect obtained by the data management device 1 of the first embodiment, it is possible to obtain the effect that the utilization efficiency of the SSD 5 can be further improved.
- a logical address handled by a file system is converted into an internal physical address by an SSD controller. Since the contents of this conversion process cannot be recognized from the file system, even if a file size is specified at the time of file creation and a continuous area is secured on the file system, pages in the SSD block may not be secured as a continuous area. . In general, if sequential writing is performed, continuous SSD pages are allocated. However, if data is already written at random, it is not certain whether a continuous area is allocated.
- the SSD 5 files the continuous pages PG (FIG. 2) in the block BL (FIG. 2) with respect to the data management devices 1, 30, 40) according to the first to third embodiments.
- An interface (command) is provided that is allocated to FL and that causes the head of the file FL to be the head of the page PG in the continuous block BL.
- the data management unit 52 (FIG. 2) of the KVS 51 (FIG. 2) performs step SP2 of the data write process described above with reference to FIG. 4 and the data write process described with reference to FIG.
- this command (hereinafter referred to as a continuous area allocation designation command) is transmitted to the file system 63 (FIG. 2).
- the file management unit 54 (FIG. 2) of the file system 53 (FIG. 2) that has received this continuous area allocation designation command transmits a request corresponding to the continuous area allocation designation command to the controller 16 of the SSD 5.
- the file management unit 54 of the file system 53 creates a file FL of a continuous area on the file system 53, and a continuous storage area is secured by the controller 16 as a storage area for the file FL in the SSD 5. Is done.
- the data management apparatus 50 of the present embodiment described above since the file FL is formed on the continuous storage area of the SSD 5, the data write processing step SP8 described above with reference to FIG. 4 and the data described above with reference to FIG.
- data deletion is performed in units of blocks.
- the deletion processing of the file FL can be accelerated. The effect that it is possible can also be acquired.
- the valid key-value data DA in the pre-update data storage file FL in step SP18 of the data write process described above with reference to FIG. Is copied from the pre-update data storage file FL to the data write destination file FL.
- the key-value data DA to be copied may exist on the memory 4 (FIG. 1). In such a case, the key-value data DA to be copied is updated. Copying from the memory 4 to the data writing destination file FL can improve the copying speed rather than copying from the previous data storage file FL to the data writing destination file FL.
- the valid key-value data DA stored in the pre-update data storage file FL is written in step SP18 of the data writing process described above with reference to FIG.
- the key-value data DA exists in the memory 4
- the key-value data DA is copied from the memory 4 to the data write destination file FL.
- the data management unit 62 (FIG. 2) of the KVS 61 (FIG. 2) uses the valid key in the pre-update data storage file FL. It is determined whether or not the value data DA exists on the memory 4.
- the data management unit 62 reads the key-value data DA from the memory 4 for the key-value data DA existing on the memory 4 among the valid key-value data DA, and reads the read key-value data DA.
- DA is transmitted to the file management unit 14 of the file system 11 together with a data write request for writing to the data write destination file FL.
- the file management unit 14 writes the key-value data DA given together with the data write request from the data management unit 62 to the data write destination file FL.
- the data management unit 62 for the key-value data DA that does not exist in the memory 4 among the valid key-value data DA, before update in which data before update of the key-value data DA is stored.
- An instruction is given to the file management unit 14 to copy from the data storage file FL to the data write destination file FL.
- the file management unit 14 copies the key-value data DA written in the pre-update data storage file FL to the data write destination file FL.
- the data management device 60 of the present embodiment from the pre-update data storage file FL in which the pre-update data of the key-value data DA is stored in step SP18 of the data write process described above with reference to FIG.
- the processing load for reading the copy-target key-value data DA from the pre-update data storage file FL can be reduced.
- the data management device 60 of the present embodiment in addition to the effect obtained by the data management device 30 of the second embodiment, there can be obtained an effect that the copy speed can be improved. it can.
Abstract
Description
(1-1)本実施の形態によるデータ管理装置の構成
図1において、1は全体として本実施の形態によるデータ管理装置を示す。このデータ管理装置1は、パーソナルコンピュータや、ワークステーション又はメインフレームなどから構成されるコンピュータ装置であり、内部バス2を介して相互に接続されたCPU(Central Processing Unit)3、メモリ4、SSD5、通信制御部6、入力装置7及び表示装置8を備えて構成される。
次に、本実施の形態のデータ管理装置1におけるデータ管理方式について説明する。本データ管理装置1は、SSD5の記憶領域15上に当該SSD5のブロックBLの整数倍のファイルサイズを有するファイルFLを作成し、保存対象のKey-ValueデータDAを追記的にこのファイルFLに書き込むと共に、各ファイルFLにおける有効なKey-ValueデータDAの数を管理し、当該有効なKey-ValueデータDAが存在しなくなったファイルFLについては逐次削除する点を特徴の1つとしている。
以上のように本実施の形態のデータ管理装置1では、SSD5の記憶領域15上にブロックの整数倍のファイルサイズを有するファイルFLを作成し、当該ファイルFLに保存対象のKey-ValueデータDAを追記的に書き込む一方、各ファイルFLにおける有効なKeyの数(有効なKey-ValueデータDAの数)を管理し、有効なKeyの数が「0」となったファイルFLについては逐次削除するため、SSD5におけるガベージコレクションの発生を極力抑えることができる。かくするにつき、本データ管理装置1によれば、ガベージコレクションの発生を低減し、SSD5へのデータ書込み性能の低下を防止することができる。
上述した第1の実施の形態によるデータ管理装置1では、上述のようにデータ書込み先ファイルFLに追記的にKey-ValueデータDAを書き込み、ガベージコレクションの発生を抑制するため、更新又は削除により無効化されたKey-ValueデータDAについても、そのKey-ValueデータDA単独での更新前データ格納ファイルFLからの削除は行わない。このため、第1の実施の形態によるデータ管理装置1では、無効化されたKey-ValueデータDAを多く含んだファイルFLがSSD5内に存在する可能性があり、SSD5の利用効率が低くなるおそれがあるという課題がある。
上述の第1及び第2の実施の形態によるデータ管理装置30では、Key-ValueデータDAをSSD5に書き込む際、Key-ValueデータDAがページを跨がないようにするため、合計サイズがページサイズの整数倍となるようにKey-ValueデータDAにパディングデータPD(図3)を付加している。このため、かかるデータ管理装置30によると、かかるパディングデータPDの分だけSSD5の利用効率が低下することになる。
一般的なSSDでは、ファイルシステムで取り扱う論理的なアドレスをSSDのコントローラで内部の物理アドレスに変換している。この変換処理の内容はファイルシステムからは認識できないため、ファイル作成時にファイルサイズを指定してファイルシステム上で連続領域を確保したとしても、SSDのブロック内のページが連続領域として確保されない場合がある。一般的には、逐次的な書き込みであれば、連続したSSDのページが割り当てられるが、既にランダムにデータが書き込まれた状態であれば、連続領域が割り当てられるかは確実なものではない。
第2の実施の形態のデータ管理装置40では、図7について上述したデータ書込み処理のステップSP18において、更新前データ格納ファイルFL内の有効なKey-ValueデータDAをデータ書込み先ファイルFLにコピーする際、更新前データ格納ファイルFLからデータ書込み先ファイルFLにコピーしている。
なお上述の第1~第5の実施の形態においては、データ管理装置1,40,50,60,70がSSD5を内部記憶装置として保持する場合について述べたが、本発明はこれに限らず、データ管理装置1,40,50,60,70がSSD5を外部記憶装置として利用する場合にも本発明を適用することができる。
Claims (12)
- 保存対象のデータであるバリューと、当該バリューに固有のキーとからなるキー・バリューデータをSSD(Solid State Drive)に保存するデータ管理装置において、
前記SSDに保存した前記キー・バリューデータを管理するデータ管理部と、
前記データ管理部からの要求に応じて前記SSDの記憶領域上に所定サイズのファイルを適宜作成し、作成した前記ファイルを管理するファイル管理部と
を備え、
前記ファイルは、
前記SSDにおけるデータの消去単位であるブロックの整数倍のファイルサイズを有し、
前記データ管理部は、
保存対象の前記キー・バリューデータを前記ファイルに追記的に書き込むよう前記ファイル管理部に要求すると共に、前記ファイルにおける更新された前記キー・バリューデータの更新前のデータ及び削除された前記キー・バリューデータを無効化して、各前記ファイルにおける有効な前記キー・バリューデータの数をそれぞれ管理し、
有効な前記キー・バリューデータが存在しなくなった前記ファイルについては、当該ファイルを削除するよう前記ファイル管理部に要求する
ことを特徴とするデータ管理装置。 - 前記ファイル管理部は、
保存対象の前記キー・バリューデータを、全体として前記SSDにおけるデータの書込み単位であるページのサイズの直近の整数倍となるようにパディングデータを付加して前記ファイルに書き込む
ことを特徴とする請求項1に記載のデータ管理装置。 - 前記データ管理部は、
前記ファイル内の有効な前記キー・バリューデータのデータ量が予め設定された閾値よりも小さい場合に、当該ファイル内の有効な前記キー・バリューデータをすべて他の前記ファイルにコピーするよう前記ファイル管理部に要求すると共に、コピー元の前記ファイルにおける他の前記ファイルにコピーした各前記キー・バリューデータをすべて無効化する
ことを特徴とする請求項2に記載のデータ管理装置。 - 前記データ管理部は、
削除対象の前記ファイル内の有効な前記キー・バリューデータを他の前記ファイルにコピーする際、各前記キー・バリューデータから前記パディングデータをそれぞれ削除するよう前記ファイル管理部に要求する
ことを特徴とする請求項3に記載のデータ管理装置。 - 前記データ管理部は、
前記ファイルの作成を前記ファイル管理部に要求する際、前記SSD内の連続した記憶領域を確保するよう前記ファイル管理部に要求する
ことを特徴とする請求項1に記載のデータ管理装置。 - 前記SSDに書き込む前記キー・バリューデータを一時的に記憶するメモリを備え、
前記データ管理部は、
前記ファイル内の有効な前記キー・バリューデータを他の前記ファイルにコピーする際、前記メモリに記憶されている前記キー・バリューデータについては、当該キー・バリューデータを前記メモリから読み出してコピー先の他の前記ファイルに書き込むよう前記ファイル管理部に要求する
ことを特徴とする請求項3に記載のデータ管理装置。 - 保存対象のデータであるバリューと、当該バリューに固有のキーとからなるキー・バリューデータをSSD(Solid State Drive)に保存するデータ管理装置によるデータ管理方法において、
前記データ管理装置は、
前記SSDに保存した前記キー・バリューデータを管理するデータ管理部と、
前記データ管理部からの要求に応じて前記SSDの記憶領域上に所定サイズのファイルを適宜作成し、作成した前記ファイルを管理するファイル管理部と
を有し、
前記ファイルは、
前記SSDにおけるデータの消去単位であるブロックの整数倍のファイルサイズを有し、
前記データ管理部が、保存対象の前記キー・バリューデータを前記ファイルに追記的に書き込むよう前記ファイル管理部に要求すると共に、前記ファイルにおける更新された前記キー・バリューデータの更新前のデータ及び削除された前記キー・バリューデータを無効化して、各前記ファイルにおける有効な前記キー・バリューデータの数をそれぞれ管理する第1のステップと、
前記データ管理部が、有効な前記キー・バリューデータが存在しなくなった前記ファイルについては、当該ファイルを削除するよう前記ファイル管理部に要求する第2のステップと
ことを特徴とするデータ管理方法。 - 前記第1のステップにおいて、
前記ファイル管理部は、保存対象の前記キー・バリューデータを、全体として前記SSDにおけるデータの書込み単位であるページのサイズの直近の整数倍となるようにパディングデータを付加して前記ファイルに書き込む
ことを特徴とする請求項7に記載のデータ管理方法。 - 前記第2のステップにおいて、データ管理部は、
前記ファイル内の有効な前記キー・バリューデータのデータ量が予め設定された閾値よりも小さい場合に、当該ファイル内の有効な前記キー・バリューデータをすべて他の前記ファイルにコピーするよう前記ファイル管理部に要求すると共に、コピー元の前記ファイルにおける他の前記ファイルにコピーした各前記キー・バリューデータをすべて無効化する
ことを特徴とする請求項8に記載のデータ管理方法。 - 前記第2のステップにおいて、前記データ管理部は、
削除対象の前記ファイル内の有効な前記キー・バリューデータを他の前記ファイルにコピーする際、各前記キー・バリューデータから前記パディングデータをそれぞれ削除するよう前記ファイル管理部に要求する
ことを特徴とする請求項9に記載のデータ管理方法。 - 前記第1のステップにおいて、前記データ管理部は、
前記ファイルの作成を前記ファイル管理部に要求する際、前記SSD内の連続した前記記憶領域を確保するよう前記ファイル管理部に指示を与える
ことを特徴とする請求項7に記載のデータ管理方法。 - 前記データ管理装置は、
前記SSDに書き込む前記キー・バリューデータを一時的に記憶するメモリを備え、
前記第2のステップにおいて、前記データ管理部は、
前記ファイル内の有効な前記キー・バリューデータを他の前記ファイルにコピーする際、前記メモリに記憶されている前記キー・バリューデータについては、当該キー・バリューデータを前記メモリから読み出してコピー先の他の前記ファイルに書き込むよう前記ファイル管理部に要求する
ことを特徴とする請求項9に記載のデータ管理方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2014/053276 WO2015121938A1 (ja) | 2014-02-13 | 2014-02-13 | データ管理装置及び方法 |
JP2015562598A JP6140311B2 (ja) | 2014-02-13 | 2014-02-13 | データ管理装置及び方法 |
US14/909,615 US9785547B2 (en) | 2014-02-13 | 2014-02-13 | Data management apparatus and method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2014/053276 WO2015121938A1 (ja) | 2014-02-13 | 2014-02-13 | データ管理装置及び方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2015121938A1 true WO2015121938A1 (ja) | 2015-08-20 |
Family
ID=53799707
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2014/053276 WO2015121938A1 (ja) | 2014-02-13 | 2014-02-13 | データ管理装置及び方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9785547B2 (ja) |
JP (1) | JP6140311B2 (ja) |
WO (1) | WO2015121938A1 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108307087A (zh) * | 2016-12-22 | 2018-07-20 | 京瓷办公信息系统株式会社 | 信息处理装置及计算机能够读取的存储介质 |
JP2019194780A (ja) * | 2018-05-01 | 2019-11-07 | 富士通株式会社 | 情報処理装置、データ管理プログラム及びデータ管理方法 |
JP2020524849A (ja) * | 2017-06-22 | 2020-08-20 | マイクロン テクノロジー,インク. | 不揮発性のメモリシステム又はサブシステム |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9804787B2 (en) * | 2015-11-03 | 2017-10-31 | Samsung Electronics Co., Ltd. | Mitigating GC effect in a raid configuration |
US10390114B2 (en) * | 2016-07-22 | 2019-08-20 | Intel Corporation | Memory sharing for physical accelerator resources in a data center |
US10922011B2 (en) * | 2018-04-12 | 2021-02-16 | Samsung Electronics Co., Ltd. | Controllers configured to perform secure deletion, key-value storage devices including said controllers, and methods of operation thereof |
US11372812B2 (en) * | 2018-10-08 | 2022-06-28 | Silicon Motion, Inc. | Mobile device and method capable of earlier determining that a number of files in a directory of an external connected storage device is about to full |
US11188231B2 (en) * | 2019-03-01 | 2021-11-30 | International Business Machines Corporation | Data placement on storage devices |
KR20210075731A (ko) | 2019-12-13 | 2021-06-23 | 삼성전자주식회사 | 스토리지 장치 및 이의 동작 방법 |
KR20210081888A (ko) | 2019-12-24 | 2021-07-02 | 삼성전자주식회사 | 키-밸류 기반으로 데이터를 저장하는 스토리지 장치 및 이의 동작 방법 |
CN112925745B (zh) * | 2021-03-25 | 2023-08-08 | 北京奇艺世纪科技有限公司 | 数据的清理方法及装置、电子设备和计算机可读存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001188701A (ja) * | 1999-10-21 | 2001-07-10 | Matsushita Electric Ind Co Ltd | 半導体メモリカードについてのアクセス装置、コンピュータ読取可能な記録媒体、初期化方法、及び半導体メモリカード |
WO2012020544A1 (ja) * | 2010-08-11 | 2012-02-16 | 日本電気株式会社 | データ処理システム、データ処理方法、およびプログラム |
JP2013200839A (ja) * | 2012-03-26 | 2013-10-03 | Toshiba Corp | 半導体記憶装置、情報処理システムおよび制御方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8621143B2 (en) | 2011-04-15 | 2013-12-31 | Oracle International Corporation | Elastic data techniques for managing cache storage using RAM and flash-based memory |
-
2014
- 2014-02-13 US US14/909,615 patent/US9785547B2/en active Active
- 2014-02-13 JP JP2015562598A patent/JP6140311B2/ja active Active
- 2014-02-13 WO PCT/JP2014/053276 patent/WO2015121938A1/ja active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001188701A (ja) * | 1999-10-21 | 2001-07-10 | Matsushita Electric Ind Co Ltd | 半導体メモリカードについてのアクセス装置、コンピュータ読取可能な記録媒体、初期化方法、及び半導体メモリカード |
WO2012020544A1 (ja) * | 2010-08-11 | 2012-02-16 | 日本電気株式会社 | データ処理システム、データ処理方法、およびプログラム |
JP2013200839A (ja) * | 2012-03-26 | 2013-10-03 | Toshiba Corp | 半導体記憶装置、情報処理システムおよび制御方法 |
Non-Patent Citations (1)
Title |
---|
SHASHANK TIWARI: "NoSQL Programming Jissen Katsuyo Gijutsuho, 1st edition", 17 May 2012, article SHASHANK TIWARI, pages: 345 - 355 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108307087A (zh) * | 2016-12-22 | 2018-07-20 | 京瓷办公信息系统株式会社 | 信息处理装置及计算机能够读取的存储介质 |
JP2020524849A (ja) * | 2017-06-22 | 2020-08-20 | マイクロン テクノロジー,インク. | 不揮発性のメモリシステム又はサブシステム |
JP2022031959A (ja) * | 2017-06-22 | 2022-02-22 | マイクロン テクノロジー,インク. | 不揮発性のメモリシステム又はサブシステム |
US11550381B2 (en) | 2017-06-22 | 2023-01-10 | Micron Technology, Inc. | Non-volatile memory system or sub-system |
JP2019194780A (ja) * | 2018-05-01 | 2019-11-07 | 富士通株式会社 | 情報処理装置、データ管理プログラム及びデータ管理方法 |
US11243877B2 (en) | 2018-05-01 | 2022-02-08 | Fujitsu Limited | Method, apparatus for data management, and non-transitory computer-readable storage medium for storing program |
Also Published As
Publication number | Publication date |
---|---|
US9785547B2 (en) | 2017-10-10 |
US20160188461A1 (en) | 2016-06-30 |
JPWO2015121938A1 (ja) | 2017-03-30 |
JP6140311B2 (ja) | 2017-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6140311B2 (ja) | データ管理装置及び方法 | |
US9798655B2 (en) | Managing a cache on storage devices supporting compression | |
US20160283124A1 (en) | Multi-streamed solid state drive | |
WO2017000658A1 (zh) | 存储系统、存储管理装置、存储器、混合存储装置及存储管理方法 | |
US8521949B2 (en) | Data deleting method and apparatus | |
RU2642349C1 (ru) | Способ для сохранения данных посредством устройства хранения данных и устройство хранения данных | |
JP6076506B2 (ja) | ストレージ装置 | |
US9990304B2 (en) | Multimode storage management system | |
JP2020035300A (ja) | 情報処理装置および制御方法 | |
US7673096B2 (en) | Control apparatus for controlling virtual storage | |
US20180232155A1 (en) | Memory device and host device | |
US11297137B2 (en) | Method and apparatus for performing simple storage service seamless migration using index objects | |
US20160132270A1 (en) | Information processing device, information procesing method, and program | |
JP4561168B2 (ja) | データ処理システムおよび方法並びにその処理プログラム | |
US20180307426A1 (en) | Storage apparatus and storage control method | |
WO2017000821A1 (zh) | 存储系统、存储管理装置、存储器、混合存储装置及存储管理方法 | |
WO2015145667A1 (ja) | ストレージシステム | |
WO2021068517A1 (zh) | 一种存储数据整理方法与装置 | |
US11132134B2 (en) | Flexible over-provisioning of storage space within solid-state storage devices (SSDs) | |
JP7132491B2 (ja) | メモリ制御装置、メモリ制御プログラムおよびメモリ制御方法 | |
JP6988445B2 (ja) | ストレージシステム、制御装置及び制御方法 | |
JP6243884B2 (ja) | 情報処理装置、プロセッサ、および情報処理方法 | |
JP6254986B2 (ja) | 情報処理装置、アクセスコントローラ、および情報処理方法 | |
CN115168317A (zh) | 一种lsm树存储引擎构建方法和系统 | |
JP2010003150A (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: 14882277 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 14909615 Country of ref document: US |
|
ENP | Entry into the national phase |
Ref document number: 2015562598 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 14882277 Country of ref document: EP Kind code of ref document: A1 |