WO2015054897A1 - 数据存储方法、数据存储装置和存储设备 - Google Patents
数据存储方法、数据存储装置和存储设备 Download PDFInfo
- Publication number
- WO2015054897A1 WO2015054897A1 PCT/CN2013/085485 CN2013085485W WO2015054897A1 WO 2015054897 A1 WO2015054897 A1 WO 2015054897A1 CN 2013085485 W CN2013085485 W CN 2013085485W WO 2015054897 A1 WO2015054897 A1 WO 2015054897A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- operation information
- file operation
- controller
- file
- data
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 82
- 238000013500 data storage Methods 0.000 title claims abstract description 28
- 238000012545 processing Methods 0.000 claims abstract description 193
- 230000006870 function Effects 0.000 claims description 37
- 238000004891 communication Methods 0.000 claims description 13
- 238000011084 recovery Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 7
- 238000012217 deletion Methods 0.000 description 5
- 230000037430 deletion Effects 0.000 description 5
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006386 memory function Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1435—Saving, restoring, recovering or retrying at system level using file system or storage system metadata
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1441—Resetting or repowering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1666—Error detection or correction of the data by redundancy in hardware where the redundant component is memory or memory area
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2089—Redundant storage control functionality
- G06F11/2092—Techniques of failing over between control units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2015—Redundant power supplies
Definitions
- the present invention relates to storage technologies, and more particularly to a data storage method, a data storage device, and a storage device. Background technique
- the data written to the storage device needs to be atomic.
- the so-called atomicity refers to the complete operation of a transaction, and the data related to the transaction is either all written or not written at all.
- the atomicity of data is guaranteed on the disk, and the data in the cache is usually not atomic, that is, only the data stored in the disk can be considered as reliable data and can be provided to the host.
- a storage device fails, you need to restore the data in the cache first, and then write the data in the cache to the disk.
- the data in the cache is written to the disk, the data written to the disk is guaranteed by the log means.
- Atomic When a host sends an access request to a storage device to request access to the data, it also needs to obtain atomic data from the disk and then provide it to the host, which extends the time it takes to process the access request sent by the host.
- Embodiments of the present invention provide a data storage method, apparatus, and storage device to improve the efficiency of a host to access data.
- the embodiment of the present invention provides a data storage method, where the method is applied to a storage system, where the storage system includes a storage device and a host, the storage device includes a first controller, and the first control The device includes a cache protection area and a first write cache, and the cache protection area has a data protection function, and the method includes:
- the first controller receives the file processing request, splits the file processing request into multiple file operations, and performs file processing on each file operation to generate a plurality of file operation information;
- Data information is obtained based on the plurality of file operation information, and the data information is written to the first write cache for the host to access the data information.
- the writing the all the multiple file operation information to the cache protection area includes:
- the writing the multiple file operation information to the cache protection area includes:
- the storage device includes a memory, and the memory includes a protection area;
- the method further includes:
- the plurality of file operation information is saved in a protected area of the memory by a power down protection program.
- the storage device includes a memory, and the memory includes a protection area;
- the method further includes:
- the plurality of file operation information is saved in a protected area of the memory by a power down protection program.
- the storage device includes a second controller, where the second controller includes a second write cache;
- the method further includes: the first controller transmitting the plurality of file operation information to the second controller, so that the second controller obtains the file processing request corresponding to the plurality of file operation information Data information, and the data information is written to the second write cache.
- an embodiment of the present invention provides a data storage method, where the method is applied to a storage system, where the storage system includes a storage device and a host, and the storage device includes a first controller, a second controller, and The second controller includes a write cache, and the method includes:
- the second controller obtains data information according to the file operation information, and writes the data information into a write cache, so that when the first controller fails, the host accesses the data information or performs execution on the memory.
- the file processing requests the corresponding operation.
- the sending the multiple file operation information to the second controller includes: sending, by the first controller, the second controller An image message, the first image message includes the plurality of file operation information.
- the sending, by the sending, the multiple file operation information to the second controller includes:
- the first controller sends a plurality of second image messages to the second controller, each of the The second image message includes one of the plurality of file operation information.
- the second controller includes a cache protection area, where the cache protection area has a data protection function; and the second controller obtains the operation information according to the file Data information, the method before the data information is written into the write cache further includes:
- the second controller writes the file operation information to the cache protection area.
- the method further includes:
- the second controller obtains data information according to the file operation information, and writing the data information to the write cache includes:
- the second controller obtains the data information according to the plurality of file operation information saved in the cache protection area, and writes the data information into the write cache.
- the second controller when the second controller writes the file operation information to the cache protection area, includes: operating for each file The information applies for storage space in the cache protection area;
- the second controller when the second controller writes the file operation information to the cache protection area, includes: The operation information is sent to the cache protection area;
- an embodiment of the present invention provides a data storage apparatus, including: a file processing module, configured to receive a file processing request, split the file processing request into multiple file operations, and respectively operate on each file Perform file processing to generate multiple file operation information;
- a writing module configured to write all the file operation information into the cache protection area
- a recovery module configured to restore the multiple in the cache protection area when the first controller fails and then powers on File operation information
- the writing module is further configured to obtain data information according to the plurality of file operation information, and write the data information into the first write cache, so that the host accesses the data information.
- the writing module is configured to: apply for a storage space in the cache protection area for each file operation information
- the writing module is configured to: sequentially send each file operation information to the cache protection area;
- the protection module is further included;
- the protection module is configured to: when the first controller is faulty, determine, according to the data structure corresponding to the cache protection area, that the plurality of file operation information is included in the cache protection area;
- the plurality of file operation information is saved in a protected area of the memory by a power-down protection program.
- the protection module is further included;
- the protection module is configured to: when the first controller fails, determine, according to the flag, that the plurality of file operation information is included in the cache protection area; and save the multiple file operation information by using a power failure protection program In the protected area of the memory.
- the method further includes: a sending module, where the sending module is configured to send the multiple file operation information to the second controller, so that the second controller is configured according to The plurality of file operation information obtains data information corresponding to the file processing request, and writes the data information to a second write cache of the second controller.
- an embodiment of the present invention provides a storage device, where the storage device includes a first controller, a second controller, and a memory, where the second controller includes a write cache.
- the first controller is configured to receive a file processing request, split the file processing request into multiple file operations, and perform file processing on each file operation to generate a plurality of file operation information;
- the operation information is sent to the second controller;
- the second controller is configured to obtain data information according to the file operation information, and write the data information into a write cache, where the host accesses the data information or the memory when the first controller fails. An operation corresponding to the file processing request is performed.
- the first controller is configured to send a first image message to the second controller, where the first image message includes the multiple file Operational information.
- the first controller is specifically configured to send, by the second controller, a plurality of second image messages, where each of the second image messages includes One of the plurality of file operation information is described.
- the second controller is further configured to write the file operation information to the cache protection area.
- the second controller is specifically configured to apply for a storage space in the cache protection area for each file operation information; save the file operation information in the storage space of the application; The plurality of file operation information is saved in the corresponding storage space; and the data in the storage space in which the plurality of file operation information is stored is stored in a data structure corresponding to the cache protection area.
- the second controller is specifically configured to send each file operation information to the cache protection area in sequence; And the plurality of file operation information is sent to the cache protection area; the mark corresponding to the plurality of file operation information received in the cache protection area is set, and the mark is used to indicate that the plurality of file operation information has been All are written to the cache protection area.
- an embodiment of the present invention provides a storage device, including:
- processor a processor, a memory, a system bus, and a communication interface, wherein the processor, the memory, and the communication interface are connected by the system bus and complete communication with each other;
- the communication interface is configured to communicate with a storage device
- the memory is configured to store a computer execution instruction
- the processor is configured to execute the computer to execute an instruction, and execute the data storage method according to the first aspect.
- all the file operation information corresponding to the file processing request are written into the cache protection area, and the cache protection area has a data protection function.
- the first controller fails and is powered on, Recovering the plurality of file operation information in the cache protection area, and obtaining the data information according to the plurality of file operation information, writing the first write cache, because the plurality of file operation information is all written to the cache protection area Therefore, when the first controller fails and then powers up, the file operation information recovered in the cache protection area is also complete, so the data information obtained according to the multiple file operation information is atomic, and Direct access to the host.
- the data information in the first write cache is not atomic, the data in the memory is atomic, so the data information in the first write cache in the prior art The data cannot be directly accessed by the host, and the corresponding data must be read from the memory to be provided to the host.
- the embodiment of the present invention improves the efficiency of the host accessing data.
- FIG. 1 is a schematic diagram of an application network architecture of a data storage method according to an embodiment of the present invention
- FIG. 2 is a flowchart of a data storage method according to an embodiment of the present invention
- FIG. 3 is a schematic diagram of a data structure according to an embodiment of the present disclosure.
- FIG. 4 is a schematic diagram of an application network architecture of another data storage method according to an embodiment of the present invention.
- FIG. 5 is a flowchart of another data storage method according to an embodiment of the present invention.
- FIG. 6 is a schematic structural diagram of a data storage device according to an embodiment of the present invention
- FIG. 7 is a schematic structural diagram of a storage device according to an embodiment of the present invention.
- FIG. 8 is a schematic structural diagram of another storage device according to an embodiment of the present invention.
- FIG. 1 is a schematic structural diagram of a storage system according to an embodiment of the present invention.
- the storage system includes at least one application server 11 (illustrated as three), at least one controller 22, and a memory 33.
- the application server 11 (also referred to as a host) can include any computing device known in the art, such as a server, desktop computer, and the like.
- Controller 22 can include a processor and a cache (not shown).
- the processor is used to perform various operations of the file processing request, such as creating a file operation, opening a file operation, reading a file operation, writing a file operation, etc.
- the cache is a memory existing in the controller, and the capacity is smaller than the hard disk but the speed is It is much higher than the hard disk.
- it can be a random access memory (RAM), which is mainly used to store programs or data for short-term use.
- RAM random access memory
- a file system and other applications such as a power-down protection module, a mirror processing module, and the like are also installed, wherein the power-down protection module is configured to use the BBU or other backup battery to cache the data in the system when the system is powered off.
- the image processing module is used to process data sent by other controllers 22 through the mirroring channel.
- the cache may include a temporary cache and a write cache.
- the temporary cache is used to temporarily save the data corresponding to the file processing request, metadata, etc., and it does not have the data protection function; and the write cache is used to save the data to be written into the memory, and has the data protection function.
- Temporary cache does not have data protection function. When the system is faulty or the system is powered off, all the data saved in the temporary cache will be lost. The system cannot be restored after the system is powered on again.
- the write cache has data protection.
- the function means that the data stored in the write cache will not be lost due to system failure or system power failure.
- the data protection function can be a power-down protection function.
- the power-down protection function means that after the system is powered off, it can still be powered by a battery back-up (BBU) or other power supply mode, so that the write buffer has sufficient power.
- BBU battery back-up
- the data protection function may also be a reset cache function, and the reset cache function is to continuously supply power to the write cache, and does not write and store data in the write cache when the system is powered off. Operation of the device, when the system is powered on again, the data in the write cache is not initialized, so the data stored in the write cache is still the data stored before the system is powered down. Similarly, for the write cache with this function. Say, the data stored in it can also be considered reliable and will not be lost.
- the data protection function may also be other functions that ensure that data in the write cache is not lost, and is not limited herein.
- the temporary cache and the write cache may be located in the same physical entity, or may be located in different physical entities, which is not limited herein.
- the temporary cache and the write cache are located in different physical entities, the temporary cache does not have data protection function.
- the power-down protection module may decide to provide no power-down protection for the data stored in the temporary cache, and provide power-down protection for the data stored in the write cache.
- a cache protection area can be created in the write cache, and the cache protection area also has data protection.
- the data or the information obtained according to the data may be first written into the cache protection area, and the information obtained by determining the data or according to the data is successfully written.
- the data is written to the write cache.
- a buffer space may be divided into a cache protection area in the cache, or another independent cache may be used as a cache protection area, which is not limited herein.
- the write cache refers to a cache that does not include a cache protected area.
- the form of saving data in the cache protection area can be different from temporary cache and write cache.
- the temporary cache and the write cache may save data in units of data pages.
- the size of a data page may be 4k or 8k or 16k, which is not limited herein. Take the data page size as 4k. When the data size is 8k, two data pages are required.
- the cache protection area can be in the form of a data structure such as a control chain, a linked list, or a tree. Save the data, no restrictions here. Therefore, it can be understood that since the cache protection area saves the data in a different form from the write buffer, the storage space occupied by the cache protection area for storing the same data is relatively small.
- the memory 33 may include a storage device known in the art, such as a Hard Disk Drive (HDD), a Solid State Drive (SSD), or a Direct Access Storage Device (DASD).
- HDD Hard Disk Drive
- SSD Solid State Drive
- DASD Direct Access Storage Device
- the controller 22 and the memory 33 may be collectively referred to as a storage device.
- the system referred to in the embodiments of the present invention refers to a storage system
- the memory referred to in the embodiments of the present invention refers to a non-volatile memory
- FIG. 2 it is a flowchart of a data storage method according to an embodiment of the present invention.
- the method is applied to a storage system, where the storage system includes a storage device and a host.
- the storage device includes a first controller and a memory, the first controller includes a temporary cache, a cache protection area, and a first write cache, and the method includes: Step 21: The first controller receives a file processing request.
- the file processing request is sent by an application server (also referred to as a host), and the operation type may be a file request, a file request, a file request, a file request, etc., and the data saved in the memory.
- the file processing request for modification is not limited herein. Different file processing requests may include different parameters, for example, a write file request including a file ID, an offset of the file (off set ), a file length ( l eng th ), and a file to be written. Parameters such as data.
- Step 22 Split the file processing request into multiple file operations, process each file operation separately, generate multiple file operation information, and write to the temporary cache.
- the file system For a storage device with a file system, the file system often needs to split the file processing request into multiple file operations according to the type of operation of the file processing request, and separately process the file processing request. For example, for a write file request, it needs to be split into a modified number. According to the file operation, and a file operation to modify the metadata; for example, for a file request, it needs to be split into a file operation to modify the parent directory, and a file operation to create the file; The file rename request needs to be split into a file operation that modifies the source directory, and a file operation that modifies the target directory.
- the file system splits the file into multiple file operations according to the operation type of the file processing request, and records the number of all data and metadata corresponding to the file processing request when processing.
- the first controller actually performs semantic conversion or other file processing for each file operation split by the file processing request in turn, and each time a file operation is processed, the file operation is performed.
- the data and metadata corresponding to the file operation are written into the temporary cache. Therefore, when the last file operation is completed and the corresponding data and metadata are written into the temporary cache, all the data and metadata corresponding to the file processing request are also All are written to the temporary cache. Therefore, the data and metadata stored in the temporary cache in the embodiment of the present invention are all data and metadata corresponding to the file processing request.
- the plurality of file operation information in the embodiment of the present invention is all data and metadata corresponding to the file processing request.
- the file operation information generated by the different file processing requests is also different.
- the file operation information may be the data to be written and the metadata and the like carried in the write file request;
- the file processing request is a modify file request, the file operation The information may be the data to be written and the metadata and the like carried in the modified file request;
- the file processing request is a file creation request, the file operation information may be directory information and metadata thereof;
- the file operation information may be special page data for releasing the file space, data of the corresponding directory after deletion, metadata thereof, and the like.
- the generated file operation information may include a file ID, an offset of the file (off set), a file length (l ength ), and a write. Incoming time and data to be written, etc.
- the temporary cache is only used for temporarily accessing data, and the data stored in the temporary cache is discrete, and the data is not managed by using a specific data structure, and is saved in the temporary cache. Data cannot be directly provided to the application server.
- Step 23 Write the plurality of file operation information into the cache protection area.
- the first controller may write file operation information such as file ID, offset, length, time to be written, data to be written, and the like to the cache protection area.
- the cache protection area has a data protection function. When the file operation information is successfully written into the cache protection area, the file operation information is not lost due to a system failure or the like.
- the writing the plurality of file operation information to the cache protection area means writing all of the plurality of file operation information to the cache protection area, that is, the file All data and metadata corresponding to the processing request are to be written into the cache protection area.
- the cache protection area may use a certain data structure to save data.
- the data in the cache protection area may be managed in the form of a control chain, where the control chain includes multiple control headers, and each control head corresponds to one file processing request, and each control head is under A plurality of slots are mounted, and each slot is used to store each data or each metadata corresponding to the file processing request.
- the file operation information may be traversed.
- a slot is requested in the control chain for the first data (for example, a file ID), and the first data is written into the slot after the application is successful;
- Data for example, offset
- the control header corresponding to the processing request is added to the control chain.
- control header corresponding to the file processing request When the control header corresponding to the file processing request is added to the control chain, it is indicated that all data and metadata corresponding to the file processing request have been successfully written into the cache protection area.
- the data in the cache protection area may be managed in the form of a binary tree, where the binary tree includes multiple root nodes, and each root node corresponds to one file processing request, and each root node corresponds to one file processing request, and each root node corresponds to one file processing request.
- a plurality of leaf nodes are mounted under the root node, and each leaf node is used to store each data or each metadata corresponding to the file processing request.
- the file operation information may be traversed, firstly, applying a leaf node in the binary tree for the first data (for example, the file ID), and writing the first data to the leaf node after the application succeeds; Data (for example, off se t ) to apply for a leaf node, the second data is written to the leaf node after the application is successful; and so on, until the last data in the file operation information is written to the leaf node,
- the root node corresponding to the file processing request can then be added to the binary tree.
- control chain or the binary tree cache protection area can save the data structure of the data, and can also be saved by using a data structure such as a B-tree, a B+ tree, or a red-black tree, which is not limited herein. .
- the cache protection area does not need to save data in a data structure such as a control chain or a binary tree.
- the first controller may traverse the file operation information, first apply for a storage space in the cache protection area for the first data (for example, a file ID), and write the first data to the cache protection area after the application is successful.
- a storage space in the cache protection area for the second data for example, off se t
- a flag for example, t rue
- another flag for example, fa l s e
- fa l s e may also be set when all the data and metadata corresponding to the file processing request have not been written into the cache protection area.
- the file system when the file system splits the file processing request into multiple file operations, and separately processes the data, it can count and record all the data and the quantity included in the file operation information. According to the number, and a software module of a counter or other similar function is set in the first controller, the initial value of the counter is 0.
- Each data included in the file operation information is sequentially written into the storage space of the cache protection area to which the application is applied, and each time a data is successfully written, the value of the counter is incremented by 1, when the value of the counter is equal to the file recorded.
- all the data and metadata included in the operation information are used, all the data and metadata corresponding to the file processing request are successfully written into the cache protection area.
- the writing the multiple file operation information to the cache protection area refers to performing an action of writing the plurality of file operation information into the cache protection area, that is, It is not necessary to consider whether all the data and metadata corresponding to the file processing request are all written into the cache protection area.
- the file processing request processing is deemed to be defeated.
- Step 24 When the first controller fails, copy the file operation information saved in the cache protection area to the protected area of the memory through the power-down protection program.
- the cache protection area has a data protection function
- the file operation information saved in the cache protection area can be copied to the protection area of the memory through the power-down protection program, so the cache protection The file operation information saved in the zone will not be lost due to the failure of the first controller.
- the protected area of the memory refers to a storage space in the memory dedicated to storing data written by the power-down protection program.
- the file operation information may be found by using a data structure corresponding to the cache protection area (for example, a control chain), and the file operation information may be found by using a flag containing true, which is not limited herein.
- step 24 also differs in the specific implementation.
- step 2 3 executes the first implementation manner (when the plurality of file operation information is all written to the cache protection area)
- the file saved in the cache protection area may not be operated.
- step 242 Copy the file operation information saved in the cache protection area to the protected area of the memory.
- the method 242 may further include: before the step 242 is performed, the method is performed in the second embodiment (excluding whether all the data and the metadata corresponding to the file processing request are all written in the cache protection area).
- Step 241 Determine whether the file operation information includes all data and metadata corresponding to the file processing request.
- step 242 is performed: copying the file operation information saved in the cache protection area to the protected area of the memory by the power-down protection program.
- the file operation information saved in the cache protection area is not subjected to the power-down protection processing.
- step 24 is an optional step in the embodiment of the present invention.
- the data protection function can be a reset memory function in addition to the power-down protection function.
- the cache protection area has the function of resetting the memory, even if the first controller fails, the cache protection area can continue to supply power.
- the data in the buffer protection area may not be initialized. The saved data will not be lost.
- determining whether the file operation information includes all data and metadata corresponding to the file processing request may be:
- the file operation information includes all data and metadata corresponding to the file processing request.
- the file operation information when the file operation information includes a mark of t rue, it indicates that the file operation information includes all data and metadata corresponding to the file processing request.
- step 23 when step 23 is performed, regardless of whether all data and metadata corresponding to the file processing request are all written into the cache protection area, the file operation information may not be included. All the data and metadata corresponding to the file processing request are determined, and step 242 is directly executed: the file operation information saved in the cache protection area is copied to the protected area of the memory by the power-down protection program.
- the plurality of file operation information written in the cache protection area may be all data and metadata corresponding to the file processing request;
- the plurality of file operation information written in the cache protection area may be an address in which all data and metadata corresponding to the file processing request are saved in the temporary cache.
- Step 25 When the first controller fails and then powers on, the plurality of file operation information is restored in the cache protection area.
- step 252 may be performed: the file operation of saving the protected area of the memory The information is copied to the cache protection area.
- step 23 when the step 23 is performed, the second implementation manner is performed. (After considering that the file processing step 24 determines that the file operation information includes all data and metadata corresponding to the file processing request, When the file operation information saved in the cache protection area is copied to the protected area of the memory, step 252 can be performed: copying the file operation information saved by the protected area of the memory to the cache protection area.
- step 25 may include:
- Step 251 Determine whether the file operation information saved by the protected area of the memory includes all data and metadata corresponding to the file processing request, and when it is determined that the file operation information includes all data and elements corresponding to the file processing request.
- step 252 is executed: the file operation information saved in the protected area of the memory is copied to the cache protection area by the power-down protection program.
- determining whether the file operation information includes all data and metadata corresponding to the file processing request may be:
- the file operation information includes all data and metadata corresponding to the file processing request.
- the file operation information saved in the protected area of the memory includes one A mark (for example, t rue ), when the file operation information includes a mark of t rue, the file operation information is included to include all data and metadata corresponding to the file processing request.
- a mark for example, t rue
- Step 26 Obtain data information according to the plurality of file operation information, and write the data information to the first write cache for the host or the memory to access the data information.
- the data information may be obtained according to the multiple file operation information saved in the cache protection area, where the data information may be all data and metadata corresponding to the file processing request, or may be all the data. And the metadata is saved in the address of the cache protected area. After obtaining the data information, the data information can be written to the first write cache.
- the first write cache saves all forms of data and metadata corresponding to the file processing request, and may be cache protected. All data and metadata corresponding to the file processing request saved by the area are in different forms.
- the first write cache may store data in the form of a page
- the second cache protected area may hold data in the form of a data structure such as a control chain.
- the data information obtained according to the plurality of file operation information and written into the first write cache is also all data and metadata corresponding to the file processing request, or all data and metadata are saved in the cache protection area.
- the address of. That is, the data corresponding to the file processing request written in the first write cache is data satisfying atomicity requirements. Therefore, the data information can be accessed by the host or the memory.
- the host accessing the data information means that the host sends a file access request to the first controller, where the file access request is used to access data corresponding to the file processing request.
- the file access request may be required to access the write file request corresponding to the data to be written, and after receiving the file access request, the first controller may The data to be written stored in the first write cache is sent to the host.
- the memory accessing the data information refers to writing all data and metadata corresponding to the file processing request stored in the first write cache to the memory. Since the capacity of the first write cache is smaller than that of the hard disk, when the data stored in the first write cache reaches a certain threshold, the stored data needs to be written into the memory.
- the multiple file operation information saved in the cache protection area may be deleted.
- all the file operation information corresponding to the file processing request are written into the cache protection area, and the cache protection area has a data protection function.
- the first controller fails and is powered on, Recovering the plurality of file operation information in the cache protection area, and obtaining the data information according to the plurality of file operation information, writing the first write cache, because the plurality of file operation information is all written to the cache protection area Therefore, when the first controller fails and then powers up, the file operation information recovered in the cache protection area is also complete, so the data information obtained according to the multiple file operation information is atomic, and Direct access to the host or memory.
- the data information in the first write cache is not atomic, so the data in the memory is atomic, so the data information in the first write cache in the prior art cannot be directly accessed by the host, and must be The corresponding data is read from the memory to be provided to the host, and the embodiment of the present invention improves the efficiency of the host accessing data compared with the prior art.
- the first controller may further obtain all data and metadata corresponding to the file processing request according to the data information in the first write cache, and the data and metadata. Write to memory. Since the capacity of the first write cache is limited, it is usually possible to write the data in the first write cache to a memory when it reaches a certain threshold.
- the unwritten memory information may be saved, and used to indicate which data is currently not written. Memory. If the first controller fails during the process of writing the data and the metadata into the memory, the unwritten memory information may be written into the protection area of the memory by using a power-down protection program, and when the power is turned on again, Obtained according to the unwritten memory information Data that has not been written to the memory is continuously written to the memory that has not been written to the memory. Therefore, it is possible to avoid rewriting the data that has been written to the memory again, which improves the efficiency of writing data.
- the embodiment of the present invention can also be applied to a storage system including two controllers. As shown in FIG. 4, the storage system includes at least one application server 11 (illustrated as three), two controllers 22, and Memory 33.
- the structures and functions of the application server 11, the controller 22, and the memory 33 are similar to those described in the above embodiments, and are not described herein again.
- the embodiment of the present invention may include two controllers 22 having the same physical structure and functions, and all of which can receive the file processing request sent by the application server 11 and access the storage in the memory 33. data. Also, the two controllers 22 can communicate with each other, for example, by mirroring channels or by other means.
- the two controllers 22 are divided into a first controller and a second controller, wherein the first controller includes a write cache called a first write cache, and the second controller includes a write cache called a second. Write cache.
- the hardware structure of the second write cache is similar to the hardware structure of the first write cache.
- the attribute of the second write cache is mirror, which is used to receive the first The data sent by a controller, at this time, the data in the second write cache is not provided to the host, nor is it written to the memory.
- the second controller is the master controller and the first controller is the slave controller
- the attribute of the second write cache is local, and the data in the second write cache can be provided to the host or written to the memory.
- the embodiment of the present invention may further include:
- the first controller sends the plurality of file operation information to the second controller.
- the first controller may send the multiple file operation information to the second controller after the step 22, where the multiple file operation information may be all data and metadata corresponding to the file processing request.
- the first controller may send a mirror message to the second controller, where the mirror message includes the multiple file operation information; or, the first controller splits the file processing request into multiple files.
- the operation when processing each file operation separately, may send a mirror message to the second controller after processing one file operation and generating corresponding data, and the image message includes data corresponding to a file operation.
- an acknowledge message may be sent to the second controller to inform the second controller that the plurality of file operation information has been sent.
- the first controller may send the multiple file operation information to the second controller after step 23.
- the sending manner may be: sending a mirroring message to the second controller, where the mirroring message includes the multiple file operation information; or sending multiple mirroring messages to the second controller, where each mirroring message includes a file operation
- the first controller may send an acknowledgement message to the second controller to inform the second controller that the plurality of file operation information has been sent.
- the first controller may send the multiple file operation information to the second controller after step 24.
- the specific transmission method is similar to that described above, and will not be described here.
- the second controller may first write the multiple file operation information into the cache protection area, and after the plurality of file operation information is successfully written into the cache protection area, the data is further Information is written to the second write cache.
- the data information refers to all data and metadata corresponding to the file processing request, or all data and metadata corresponding to the file processing request are stored in an address in the cache protection area. It should be noted that the cache protection area here refers to the cache protection area included in the second controller.
- the data information held in the second write cache is consistent with the data information held in the first write cache.
- the second controller changes the attribute of the second write cache to local, and can take over the first controller to continue working. For example, based on the data information in the second write cache, The memory performs an operation corresponding to the file processing request, or provides data information in the second write cache to the host.
- the second controller when the first controller fails, the second controller needs to first read the log information from the memory, obtain the data information according to the log information, and then provide the data information to the host.
- the second controller when the first control fails, the second controller can directly provide the data information in the second write cache to the host.
- the embodiment of the present invention improves the efficiency of the host accessing data.
- the method is applied to a storage system, where the storage system includes a storage device and a host, and the storage device includes a first controller, a second controller, and a memory.
- the second controller includes a write cache and a cache protection area, and the write cache and the cache protection area both have data protection functions.
- the method includes:
- Step 51 The first controller receives the file processing request, splits the file processing request into multiple file operations, and performs file processing on each file operation to generate a plurality of file operation information.
- the file processing request is sent by an application server (also referred to as a host), and the operation type thereof may be a file processing request for writing a file request, modifying a file request, creating a file request, deleting a file request, and the like, and modifying the data held in the memory.
- an application server also referred to as a host
- Different file processing requests may include different parameters, for example, a write file request including a file ID, a file offset (of f se t ), a file length ( l ength ), and a to-be-written Enter data and other parameters.
- the file system For a storage device with a file system, the file system often needs to split the file processing request into multiple file operations according to the type of operation of the file processing request, and separately process the file processing request. For example, for a write file request, it needs to be split into a file operation that modifies the data, and a file operation that modifies the metadata; for example, for a file creation request, it needs to be split into a modified parent directory. File operations, and a create file For example, for a file rename request, it needs to be split into a file operation that modifies the source directory, and a file operation that modifies the target directory.
- the file system splits the file into multiple file operations according to the operation type of the file processing request, and records the number of all data and metadata corresponding to the file processing request when processing.
- the first controller actually performs semantic conversion or other file processing for each file operation split by the file processing request in turn, and each time a file operation is processed, the file operation is performed.
- the data and metadata corresponding to the file operation are written into the temporary cache. Therefore, when the last file operation is completed and the corresponding data and metadata are written into the temporary cache, all the data and metadata corresponding to the file processing request are also All are written to the temporary cache. Therefore, the data and metadata stored in the temporary cache in the embodiment of the present invention are all data and metadata corresponding to the file processing request.
- the plurality of file operation information in the embodiment of the present invention is all data and metadata corresponding to the file processing request.
- the file operation information generated by the different file processing requests is also different.
- the file operation information may be the data to be written and the metadata and the like carried in the write file request;
- the file processing request is a modify file request, the file operation The information may be the data to be written and the metadata and the like carried in the modified file request;
- the file processing request is a file creation request, the file operation information may be directory information and metadata thereof;
- the file operation information may be special page data for releasing the file space, data of the corresponding directory after deletion, metadata thereof, and the like.
- the generated file operation information may include a file ID, an offset of the file (off set), a file length (l ength ), and a write. Incoming time and data to be written, etc.
- Step 52 Send the multiple file operation information to the second controller.
- the first controller may send a mirror message to the second controller, where the mirror is cancelled.
- the information includes the plurality of file operation information; or, the first controller splits the file processing request into a plurality of file operations, and when processing each file operation separately, the file operation may be processed each time And generating the corresponding data, sending a mirror message to the second controller, where the mirror message includes data corresponding to a file operation, and after the first controller sends the last mirror message to the second controller, The second controller sends an acknowledgement message to inform the second controller that the plurality of file operation information has been sent.
- Step 53 The second controller writes all the file operation information into the cache protection area.
- the second controller may write file operation information such as file ID, offset, length, time to be written, data to be written, and the like to the cache protection area.
- the cache protection area has a data protection function. When the file operation information is successfully written into the cache protection area, the file operation information is not lost due to a system failure or the like.
- the writing the plurality of file operation information into the cache protection area means that all the file operation information is written into the cache protection area, that is, the file processing request corresponds to All data and metadata are written to the cache protection area.
- the cache protection area may use a certain data structure to save data.
- the data in the cache protection area may be managed in the form of a control chain, where the control chain includes multiple control headers, and each control head corresponds to one file processing request, and each control head is under A plurality of slots are mounted, and each slot is used to store each data or each metadata corresponding to the file processing request.
- the file operation information may be traversed.
- a slot is requested in the control chain for the first data (for example, a file ID), and the first data is written into the slot after the application is successful;
- Data for example, offset
- the control header corresponding to the processing request is added to the control chain.
- the data in the cache protection area may be managed in the form of a binary tree, where the binary tree includes multiple root nodes, each root node corresponding to one file processing request, and multiple root nodes are mounted under each root node.
- a leaf node, each leaf node is used to store each data or each metadata corresponding to the file processing request.
- the file operation information may be traversed, firstly, applying a leaf node in the binary tree for the first data (for example, the file ID), and writing the first data to the leaf node after the application succeeds; Data (for example, off se t ) to apply for a leaf node, the second data is written to the leaf node after the application is successful; and so on, until the last data in the file operation information is written to the leaf node,
- the root node corresponding to the file processing request can then be added to the binary tree.
- control chain or the binary tree cache protection area can save the data structure of the data, and can also be saved by using a data structure such as a B-tree, a B+ tree, or a red-black tree, which is not limited herein. .
- the cache protection area does not need to save data in a data structure such as a control chain or a binary tree.
- the first controller may traverse the file operation information, first apply for a storage space in the cache protection area for the first data (for example, a file ID), and write the first data to the cache protection area after the application is successful.
- a storage space in the cache protection area for the second data for example, off se t
- a flag (eg, t rue ) may be set in the file operation information saved by the cache protection area to indicate that all data and metadata corresponding to the file processing request have been successfully written into the cache protection area.
- a flag eg, t rue
- To set another tag for example, fa lse ).
- the file system splits the file processing request into a plurality of file operations, and separately processes the data
- the number of all data and metadata included in the file operation information may be counted and recorded, and in the second A counter or other software module of similar function is set in the controller, and the initial value of the counter is 0.
- Each data included in the file operation information is sequentially written into the storage space of the cache protection area to which the application is applied, and each time a data is successfully written, the value of the counter is incremented by 1, when the value of the counter is equal to the file recorded.
- all the data and metadata included in the operation information are used, all the data and metadata corresponding to the file processing request are successfully written into the cache protection area.
- Step 54 The second controller obtains data information according to the file operation information, and writes the data information into the write cache.
- the data information may be all data and metadata corresponding to the file processing request, or may be an address in which all data and metadata corresponding to the file processing request are stored in the cache protection area.
- the second controller may provide the data information saved in the write cache to the host, or perform operations corresponding to the file processing request on the memory, such as file creation, file deletion, file writing, etc. .
- step 53 is an optional step, when the second controller fails to write data information to the write cache, and may also recover according to multiple file operation information saved in the cache protection area. Data information, and write to the write cache.
- the embodiment of the present invention may further include:
- the second controller fails, determining, according to the flag, that the plurality of file operation information is included in the cache protection area; and the plurality of file operation letters are determined by a power failure protection program The information is saved in the protected area of the memory.
- Step 23 to Step 26 of the previous embodiment refer to Step 23 to Step 26 of the previous embodiment, and details are not described herein.
- the embodiment of the present invention may further include: the first controller writes the multiple file operation information into a cache protection area of the first controller, and when the first controller fails and is powered on, the first controller may be in the first And recovering the plurality of file operation information in a cache protection area of a controller, obtaining data information according to the file operation information, and writing the data information to a write cache of the first controller.
- the first controller writes the multiple file operation information into a cache protection area of the first controller, and when the first controller fails and is powered on, the first controller may be in the first And recovering the plurality of file operation information in a cache protection area of a controller, obtaining data information according to the file operation information, and writing the data information to a write cache of the first controller.
- the atomicity of the data is guaranteed in the memory, and the data in the write buffer cannot be directly provided to the host, so when the first controller fails, the second controller needs to read the corresponding from the memory.
- the first controller sends the plurality of file operation information to the host before the failure occurs, according to the log information, and the data information is recovered in the write buffer according to the log information.
- a second controller the second controller obtains the data information according to the plurality of file operation information, and writes the write buffer, so when the first controller fails, the second controller can directly write the cache
- the data is provided to the host or the corresponding operation of the file processing request is performed on the memory.
- An embodiment of the present invention provides a data storage device, as shown in FIG. 6, including:
- the file processing module 61 is configured to receive a file processing request, split the file processing request into multiple file operations, and perform file processing on each file operation to generate a plurality of file operation information;
- the writing module 62 is configured to write all the file operation information into the cache protection area, and the recovery module 63 is configured to restore the cache protection area when the first controller fails and then powers on. Describe a plurality of file operation information
- the writing module 62 is further configured to obtain data information according to the multiple file operation information, And writing the data information to the first write cache for the host to access the data information.
- the writing module 62 is specifically configured to:
- the writing module 62 is specifically configured to:
- the plurality of file operation information received in the cache protection area is marked as completed data, and the completed data is used to indicate that the plurality of file operation information has all been written into the cache protection area.
- the device may further include:
- the protection module 64 is configured to: when the first controller fails, determine, according to the data structure corresponding to the cache protection area, that the plurality of file operation information is included in the cache protection area; The file operation information is saved in the protected area of the memory.
- the protection module 64 is configured to: when the first controller fails, determine, according to the flag, that the plurality of file operation information is included in the cache protection area; and the plurality of file operation information is determined by a power failure protection program Saved in the protected area of the memory.
- the device may further include:
- the deleting module 65 is configured to delete the multiple file operation information saved in the cache protection area, and the device may further include:
- the sending module 66 is configured to send the multiple file operation information to the second controller, so that the second controller obtains the file processing request corresponding according to the multiple file operation information. Data information, and the data information is written to the second write cache of the second controller.
- the device provided by the embodiment of the present invention may be configured in the first controller described in the foregoing embodiment, and is used to perform the data storage method described in the foregoing embodiments. For a detailed description of the function of each module, refer to the method embodiment. Description, no longer repeat here.
- FIG. 7 is a storage device according to an embodiment of the present invention, where the storage device includes a first controller 71, a second controller 72, and a memory, where the second controller includes a write cache.
- the first controller 71 is configured to receive a file processing request, split the file processing request into multiple file operations, and perform file processing on each file operation to generate a plurality of file operation information; File operation information is sent to the second controller 72;
- the first controller 71 is specifically configured to send the first mirror message to the second controller 72, where the first image message includes the multiple file operation information.
- the first controller 72 is specifically configured to send, by the second controller 72, a plurality of second image messages, where each of the second image messages includes one of the plurality of file operation information. information.
- the second controller 72 is configured to obtain data information according to the file operation information, and write the data information into a write cache, so that when the first controller 71 fails, the host accesses the data information or The memory performs operations corresponding to the file processing request.
- the second controller 72 is further configured to write the file operation information to the cache protection area.
- the second controller 72 is configured to apply for a storage space in the cache protection area for each file operation information; save the file operation information in the storage space of the application; The file operation information is saved in the corresponding storage space; and the data in the storage space in which the plurality of file operation information is saved is saved in the data structure corresponding to the cache protection area.
- the second controller 72 is configured to sequentially send each file operation information to the cache protection area; determining that the plurality of file operation information have been sent to the cache protection area; And a mark corresponding to the plurality of file operation information received in the cache protection area, where the mark is used to indicate that the plurality of file operation information has all been written into the cache protection area.
- the second controller 72 is further configured to determine, according to the data structure corresponding to the cache protection area, the plurality of file operation information in the cache protection area; and operate the multiple files by using a power failure protection program. Information is stored in the protected area of the memory.
- the second controller 72 is further configured to determine, according to the flag, that the plurality of file operation information is included in the cache protection area; and save the multiple file operation information in the memory by a power failure protection program. Protected area.
- the storage device provided by the embodiment of the present invention may be disposed in a storage device including at least two controllers described in the foregoing embodiments, for performing the data storage method described in the foregoing embodiments, and detailed description of each controller function. For details, refer to the description in the method embodiment, and details are not described herein again.
- the storage device provided by the embodiment of the present invention includes:
- the processor 101, the memory 102, the system bus (the cartridge) 105, and the communication interface 103 are connected by the system bus 105 and communicate with each other.
- Processor 101 may be a single core or multi-core central processing unit, or a particular integrated circuit, or one or more integrated circuits configured to implement embodiments of the present invention.
- the memory 102 can be a high speed RAM memory or a non-volatile memory such as at least one hard disk memory.
- Communication interface 103 is used to communicate with the storage device.
- Memory 102 is used to store computer execution instructions 1021. Specifically, the program code may be included in the computer execution instruction 1021.
- the processor 101 executes the computer execution instructions 1021, and the method flow described in FIG. 2 can be performed.
- the disclosed apparatus and method may be implemented in other manners.
- the device embodiments described above are only schematic.
- the division of the modules is only a logical function division.
- there may be another division manner for example, multiple modules or components may be combined or Can be integrated into another device, or some features can be ignored, or not executed.
- the coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some communication interface, device or module, and may be in electrical, mechanical or other form.
- the modules described as separate components may or may not be physically separated.
- the components displayed as modules may or may not be physical sub-modules, that is, may be located in one place, or may be distributed to multiple network sub-modules. on. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of the embodiment.
- each functional module in each embodiment of the present invention may be integrated into one processing module, or each module may exist physically separately, or two or more modules may be integrated into one module.
- a person skilled in the art may understand that all or part of the steps of implementing the above embodiments may be completed by hardware, or may be instructed by a program to execute related hardware, and the program may be stored in a computer readable storage medium.
- the storage medium mentioned may be a read only memory, a magnetic disk or an optical disk or the like.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Library & Information Science (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Retry When Errors Occur (AREA)
Abstract
Description
Claims
Priority Applications (12)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201380001618.3A CN103765373B (zh) | 2013-10-18 | 2013-10-18 | 数据存储方法、数据存储装置和存储设备 |
ES13886629.8T ES2625124T3 (es) | 2013-10-18 | 2013-10-18 | Método de almacenamiento de datos, aparato de almacenamiento de datos y dispositivo de almacenamiento |
HUE16199426A HUE039896T2 (hu) | 2013-10-18 | 2013-10-18 | Adattárolási eljárás, adattároló berendezés, és tárolókészülék |
PCT/CN2013/085485 WO2015054897A1 (zh) | 2013-10-18 | 2013-10-18 | 数据存储方法、数据存储装置和存储设备 |
DK16199426.4T DK3206128T3 (en) | 2013-10-18 | 2013-10-18 | DATA STORAGE PROCEDURE, DATA STORAGE AND STORAGE DEVICE |
ES16199426.4T ES2676057T3 (es) | 2013-10-18 | 2013-10-18 | Método de memorización de datos, aparato de memorización de datos y dispositivo de memorización |
JP2015555550A JP6264666B2 (ja) | 2013-10-18 | 2013-10-18 | データ格納方法、データストレージ装置、及びストレージデバイス |
EP13886629.8A EP2879040B1 (en) | 2013-10-18 | 2013-10-18 | Data storage method, data storage apparatus, and storage device |
EP16199426.4A EP3206128B1 (en) | 2013-10-18 | 2013-10-18 | Data storage method, data storage apparatus, and storage device |
AU2013403132A AU2013403132B2 (en) | 2013-10-18 | 2013-10-18 | Data storage method, data storage apparatus, and storage device |
CA2893304A CA2893304C (en) | 2013-10-18 | 2013-10-18 | Data storage method, data storage apparatus, and storage device |
US14/583,321 US9996421B2 (en) | 2013-10-18 | 2014-12-26 | Data storage method, data storage apparatus, and storage device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2013/085485 WO2015054897A1 (zh) | 2013-10-18 | 2013-10-18 | 数据存储方法、数据存储装置和存储设备 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/583,321 Continuation US9996421B2 (en) | 2013-10-18 | 2014-12-26 | Data storage method, data storage apparatus, and storage device |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2015054897A1 true WO2015054897A1 (zh) | 2015-04-23 |
Family
ID=50531053
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2013/085485 WO2015054897A1 (zh) | 2013-10-18 | 2013-10-18 | 数据存储方法、数据存储装置和存储设备 |
Country Status (10)
Country | Link |
---|---|
US (1) | US9996421B2 (zh) |
EP (2) | EP3206128B1 (zh) |
JP (1) | JP6264666B2 (zh) |
CN (1) | CN103765373B (zh) |
AU (1) | AU2013403132B2 (zh) |
CA (1) | CA2893304C (zh) |
DK (1) | DK3206128T3 (zh) |
ES (2) | ES2676057T3 (zh) |
HU (1) | HUE039896T2 (zh) |
WO (1) | WO2015054897A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017024951A1 (zh) * | 2015-08-07 | 2017-02-16 | 华为技术有限公司 | 数据存储方法以及存储系统 |
CN109213693A (zh) * | 2017-06-30 | 2019-01-15 | 伊姆西Ip控股有限责任公司 | 存储管理方法、存储系统和计算机程序产品 |
CN115378930A (zh) * | 2021-05-17 | 2022-11-22 | 成都鼎桥通信技术有限公司 | 文件分发方法及装置 |
CN116155700A (zh) * | 2023-02-27 | 2023-05-23 | 北京奇艺世纪科技有限公司 | 数据调取方法、装置、电子设备及存储介质 |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9471448B2 (en) * | 2014-12-10 | 2016-10-18 | Intel Corporation | Performing an atomic write operation across multiple storage devices |
CN105205015B (zh) * | 2015-09-29 | 2019-01-22 | 北京联想核芯科技有限公司 | 一种数据存储方法及存储设备 |
GB2546510B (en) * | 2016-01-20 | 2018-09-26 | Advanced Risc Mach Ltd | Vector atomic memory update instruction |
CN106776381A (zh) * | 2016-12-23 | 2017-05-31 | 郑州云海信息技术有限公司 | 一种存储系统掉电保护方法及系统 |
US10884632B2 (en) | 2018-11-08 | 2021-01-05 | International Business Machines Corporation | Techniques for determining the extent of data loss as a result of a data storage system failure |
CN109815071A (zh) * | 2019-01-04 | 2019-05-28 | 珠海妙存科技有限公司 | 一种基于Linux系统的存储介质掉电测试方法 |
CN110532138A (zh) * | 2019-09-16 | 2019-12-03 | 杭州和利时自动化有限公司 | 一种控制器故障恢复方法、装置、设备及可读存储介质 |
US11360778B2 (en) * | 2019-12-11 | 2022-06-14 | Oracle International Corporation | Dynamic insights extraction and trend prediction |
CN111447268B (zh) * | 2020-03-24 | 2022-11-25 | 中国建设银行股份有限公司 | 文件结构转换方法、装置、设备和存储介质 |
CN112328432A (zh) * | 2020-11-09 | 2021-02-05 | 杭州安恒信息技术股份有限公司 | 文件事务管理方法、系统、存储介质及计算机设备 |
CN114003562B (zh) * | 2021-12-29 | 2022-03-22 | 苏州浪潮智能科技有限公司 | 一种目录遍历方法、装置、设备及可读存储介质 |
CN115657956B (zh) * | 2022-11-02 | 2023-08-22 | 中国科学院空间应用工程与技术中心 | 一种应对缓存数据丢失的元数据一致性写入方法和系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102035881A (zh) * | 2010-11-19 | 2011-04-27 | 清华大学 | 一种云端存储系统的数据缓存方法 |
CN103020227A (zh) * | 2012-12-13 | 2013-04-03 | 中国银行股份有限公司 | 计算机设备中的数据处理方法和系统 |
CN103049220A (zh) * | 2012-12-19 | 2013-04-17 | 华为技术有限公司 | 存储控制方法、存储控制装置和固态存储系统 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5761406A (en) * | 1992-07-31 | 1998-06-02 | Fujitsu Limited | Method of controlling data transfer and a safe shutdown in a hierarchical cache system during power cut-off |
US5828823A (en) * | 1995-03-01 | 1998-10-27 | Unisys Corporation | Method and apparatus for storing computer data after a power failure |
JP3559016B2 (ja) * | 2001-11-30 | 2004-08-25 | 株式会社東芝 | ディスクアレイシステム、ディスクアレイシステムにおけるロジカルユニットの引き継ぎ方法及び連携制御コントローラ |
US7076606B2 (en) | 2002-09-20 | 2006-07-11 | Quantum Corporation | Accelerated RAID with rewind capability |
US7836339B2 (en) * | 2003-03-31 | 2010-11-16 | Intel Corporation | Computer memory power backup |
JP4124348B2 (ja) * | 2003-06-27 | 2008-07-23 | 株式会社日立製作所 | 記憶システム |
JP2005115857A (ja) | 2003-10-10 | 2005-04-28 | Sony Corp | ファイル記憶装置 |
JP4519563B2 (ja) * | 2004-08-04 | 2010-08-04 | 株式会社日立製作所 | 記憶システム及びデータ処理システム |
US20060212644A1 (en) * | 2005-03-21 | 2006-09-21 | Acton John D | Non-volatile backup for data cache |
US8583865B1 (en) * | 2007-12-21 | 2013-11-12 | Emc Corporation | Caching with flash-based memory |
EP2249243B1 (en) * | 2008-02-08 | 2014-06-18 | Fujitsu Limited | Backup method, disc array device, and controller |
CN101286086B (zh) * | 2008-06-10 | 2010-08-11 | 杭州华三通信技术有限公司 | 硬盘掉电保护方法、装置以及硬盘和硬盘掉电保护系统 |
WO2010016115A1 (ja) * | 2008-08-06 | 2010-02-11 | 富士通株式会社 | ディスクアレイ装置の制御ユニット、データ転送装置及び復電処理方法 |
JP5365236B2 (ja) | 2009-02-16 | 2013-12-11 | 日本電気株式会社 | ストレージシステム |
JP5387776B2 (ja) * | 2010-07-27 | 2014-01-15 | 富士通株式会社 | 割込制御方法、マルチコアプロセッサシステム、および割込制御プログラム |
JP5742362B2 (ja) * | 2011-03-28 | 2015-07-01 | 富士通株式会社 | 退避処理装置 |
JP6135276B2 (ja) * | 2013-04-23 | 2017-05-31 | 富士通株式会社 | ストレージ装置、制御装置、および制御プログラム |
-
2013
- 2013-10-18 CA CA2893304A patent/CA2893304C/en active Active
- 2013-10-18 WO PCT/CN2013/085485 patent/WO2015054897A1/zh active Application Filing
- 2013-10-18 ES ES16199426.4T patent/ES2676057T3/es active Active
- 2013-10-18 EP EP16199426.4A patent/EP3206128B1/en active Active
- 2013-10-18 ES ES13886629.8T patent/ES2625124T3/es active Active
- 2013-10-18 HU HUE16199426A patent/HUE039896T2/hu unknown
- 2013-10-18 EP EP13886629.8A patent/EP2879040B1/en active Active
- 2013-10-18 AU AU2013403132A patent/AU2013403132B2/en active Active
- 2013-10-18 CN CN201380001618.3A patent/CN103765373B/zh active Active
- 2013-10-18 DK DK16199426.4T patent/DK3206128T3/en active
- 2013-10-18 JP JP2015555550A patent/JP6264666B2/ja active Active
-
2014
- 2014-12-26 US US14/583,321 patent/US9996421B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102035881A (zh) * | 2010-11-19 | 2011-04-27 | 清华大学 | 一种云端存储系统的数据缓存方法 |
CN103020227A (zh) * | 2012-12-13 | 2013-04-03 | 中国银行股份有限公司 | 计算机设备中的数据处理方法和系统 |
CN103049220A (zh) * | 2012-12-19 | 2013-04-17 | 华为技术有限公司 | 存储控制方法、存储控制装置和固态存储系统 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017024951A1 (zh) * | 2015-08-07 | 2017-02-16 | 华为技术有限公司 | 数据存储方法以及存储系统 |
CN109213693A (zh) * | 2017-06-30 | 2019-01-15 | 伊姆西Ip控股有限责任公司 | 存储管理方法、存储系统和计算机程序产品 |
CN109213693B (zh) * | 2017-06-30 | 2023-05-05 | 伊姆西Ip控股有限责任公司 | 存储管理方法、存储系统和计算机程序产品 |
CN115378930A (zh) * | 2021-05-17 | 2022-11-22 | 成都鼎桥通信技术有限公司 | 文件分发方法及装置 |
CN116155700A (zh) * | 2023-02-27 | 2023-05-23 | 北京奇艺世纪科技有限公司 | 数据调取方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
EP2879040A1 (en) | 2015-06-03 |
JP6264666B2 (ja) | 2018-01-24 |
EP2879040B1 (en) | 2017-03-01 |
US9996421B2 (en) | 2018-06-12 |
ES2625124T3 (es) | 2017-07-18 |
ES2676057T3 (es) | 2018-07-16 |
JP2016513306A (ja) | 2016-05-12 |
CN103765373B (zh) | 2015-12-30 |
AU2013403132A1 (en) | 2015-06-11 |
AU2013403132B2 (en) | 2016-11-24 |
EP2879040A4 (en) | 2016-04-27 |
CA2893304A1 (en) | 2015-04-23 |
DK3206128T3 (en) | 2018-08-20 |
US20150121130A1 (en) | 2015-04-30 |
CA2893304C (en) | 2017-04-11 |
HUE039896T2 (hu) | 2019-02-28 |
CN103765373A (zh) | 2014-04-30 |
EP3206128B1 (en) | 2018-05-09 |
EP3206128A1 (en) | 2017-08-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2015054897A1 (zh) | 数据存储方法、数据存储装置和存储设备 | |
US20230117542A1 (en) | Remote Data Replication Method and System | |
US8689047B2 (en) | Virtual disk replication using log files | |
US9910777B2 (en) | Enhanced integrity through atomic writes in cache | |
US11422703B2 (en) | Data updating technology | |
US20110055471A1 (en) | Apparatus, system, and method for improved data deduplication | |
WO2015010327A1 (zh) | 数据发送方法、数据接收方法和存储设备 | |
US10860447B2 (en) | Database cluster architecture based on dual port solid state disk | |
WO2015085530A1 (zh) | 数据复制方法及存储系统 | |
US9785642B2 (en) | Reducing a backup time of a backup of data files | |
JP6133396B2 (ja) | 計算機システム、サーバ、及び、データ管理方法 | |
JP2012507788A (ja) | ストレージ・エリア・ネットワークを使用してコンピュータシステムを復旧するための方法およびシステム | |
WO2015085529A1 (zh) | 数据复制方法、数据复制装置和存储设备 | |
WO2018076633A1 (zh) | 一种远程数据复制方法、存储设备及存储系统 | |
WO2015035814A1 (zh) | 一种写数据方法及存储设备 | |
WO2022033269A1 (zh) | 数据处理的方法、设备及系统 | |
CN109416617B (zh) | 异构存储系统之间的复制 | |
JP6376626B2 (ja) | データ格納方法、データストレージ装置、及びストレージデバイス | |
JP2009129282A (ja) | データ記憶装置、データバックアップ方法およびデータバックアッププログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
REEP | Request for entry into the european phase |
Ref document number: 2013886629 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2013886629 Country of ref document: EP |
|
ENP | Entry into the national phase |
Ref document number: 2893304 Country of ref document: CA |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 13886629 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2013403132 Country of ref document: AU Date of ref document: 20131018 Kind code of ref document: A |
|
ENP | Entry into the national phase |
Ref document number: 2015555550 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |