IP Library Granted Patent US 12,056,391
Granted Patent B2
US 12,056,391 · App. 17/923,190 · Granted Aug 6, 2024

SSD-based log data storage method and apparatus, device and medium

Inventor: Baolin Zhao (Jiangsu, CN)
Assignee: INSPUR SUZHOU INTELLIGENT TECHNOLOGY CO., LTD.
G06F3/0656G06F3/0619G06F3/0679
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,056,391
App. No.
17/923,190
Granted
Aug 6, 2024
Kind
B2
Abstract

An SSD-based log data storage method includes: configuring metadata in a running state in log data to be continuously stored in a memory physical address of an SSD; dividing a preset number of buffers for an area where the metadata is continuously stored in the memory physical address; storing update data of the metadata generated during a reading-writing process according to the preset cyclic sequence; defining a mapping table of a memory logical address and a physical address of the log data; in response to the full storage of one buffer, executing an NAND writing operation on data in the buffer region, executing a preset length of NAND writing operation on metadata not written into a NAND in the SSD; in response to the completion of the NAND writing operation, ranking the corresponding buffer last in the preset cyclic sequence and waiting to store the update data of the metadata.

Claims (59)

1. A journal data based on solid state drive saving method, wherein the method comprises:

configuring metadata in an operating state in journal data to be continuously saved in internal-storage physical addresses of a solid state drive;

dividing a region in the internal-storage physical addresses where the metadata are continuously saved into buffer regions of a preset quantity, so that the buffer regions have a preset circulating sequence;

according to the preset circulating sequence, saving updated data of the metadata generated in a reading-writing process;

defining a mapping table between internal-storage logical addresses of the journal data and physical addresses;

in response to one of the buffer regions being full, performing a NAND writing operation to data in the buffer region, and performing the NAND writing operation of a preset length to the metadata in the solid state drive that are not written into the NAND; and

in response to the NAND writing operation being completed, arranging the corresponding buffer region at the end of the preset circulating sequence to wait for saving the updated data of the metadata;

in response to an internal-storage accessing request being received, determining whether the internal-storage accessing request is a journal accessing request; and

in response to determination that the internal-storage accessing request is the journal accessing request, accessing the mapping table, converting an address of the internal-storage accessing request into the physical address, and returning data accessed according to the physical address obtained after the conversion to an accessor.

2. The journal data based on solid state drive saving method according to claim 1 , wherein the method further comprises:

in response to an address-mapping modifying request being received, checking whether a conflict exists; and

in response to a conflict existing, searching for a conflicting mapping item and bringing back the conflicting mapping item to the solid state drive.

3. The journal data based on solid state drive saving method according to claim 2 , wherein the method further comprises:

in response to no conflict existing, applying a new mapping item, adding the new mapping item into the mapping table, and returning an address-mapping modifying state and bringing back the new mapping item.

4. The journal data based on solid state drive saving method according to claim 1 , wherein the method further comprises:

in a power-on process, performing, by the solid state drive, a bad-block scanning operation to the NAND; and

according to the bad-block scanning operation, selecting a plurality of undamaged blocks in the NAND to be used as standby replacing blocks when a RAID group has a bad block.

5. The journal data based on solid state drive saving method according to claim 1 , wherein the operation of, in response to one of the buffer regions being full, performing the NAND writing operation to the data in the buffer region, and performing the NAND writing operation of the preset length to the metadata in the solid state drive that are not written into the NAND further comprises:

configuring the buffer region and the preset length to be positive integer times of a smallest writing unit of the NAND.

6. The journal data based on solid state drive saving method according to claim 1 , wherein the method further comprises:

in response to determination that the accessing request is not the journal accessing request, directly using the request address as the access address, and returning the data accessed according to the access address to the accessor.

7. A computer device, wherein the computer device comprises:

at least one processor; and

a memory, wherein the memory stores a computer program that is executable in the processor, and the processor, when executing the program, implements the operations comprising:

configuring metadata in an operating state in journal data to be continuously saved in internal-storage physical addresses of a solid state drive;

dividing a region in the internal-storage physical addresses where the metadata are continuously saved into buffer regions of a preset quantity, so that the buffer regions have a preset circulating sequence;

according to the preset circulating sequence, saving updated data of the metadata generated in a reading-writing process;

defining a mapping table between internal-storage logical addresses of the journal data and physical addresses;

in response to one of the buffer regions being full, performing a NAND writing operation to data in the buffer region, and performing the NAND writing operation of a preset length to the metadata in the solid state drive that are not written into the NAND; and

in response to the NAND writing operation being completed, arranging the corresponding buffer region at the end of the preset circulating sequence to wait for saving the updated data of the metadata;

in response to an internal-storage accessing request being received, determining whether the internal-storage accessing request is a journal accessing request; and

in response to determination that the internal-storage accessing request is the journal accessing request, accessing the mapping table, converting an address of the internal-storage accessing request into the physical address, and returning data accessed according to the physical address obtained after the conversion to an accessor.

8. The computer device according to claim 7 , wherein the operations further comprises:

in response to an address-mapping modifying request being received, checking whether a conflict exists; and

in response to a conflict existing, searching for a conflicting mapping item and bringing back the conflicting mapping item to the solid state drive.

9. The computer device according to claim 7 , wherein the operations further comprises:

in a power-on process, performing, by the solid state drive, a bad-block scanning operation to the NAND; and

according to the bad-block scanning operation, selecting a plurality of undamaged blocks in the NAND to be used as standby replacing blocks when a RAID group has a bad block.

10. The computer device according to claim 7 , wherein the operation of, in response to one of the buffer regions being full, performing the NAND writing operation to the data in the buffer region, and performing the NAND writing operation of the preset length to the metadata in the solid state drive that are not written into the NAND further comprises:

configuring the buffer region and the preset length to be positive integer times of a smallest writing unit of the NAND.

11. A non-transitory computer-readable storage medium, the computer-readable storage medium storing a computer program, wherein the computer program, when executed by at least one processor, implements the operations comprising:

configuring metadata in an operating state in journal data to be continuously saved in internal-storage physical addresses of a solid state drive;

dividing a region in the internal-storage physical addresses where the metadata are continuously saved into buffer regions of a preset quantity, so that the buffer regions have a preset circulating sequence;

according to the preset circulating sequence, saving updated data of the metadata generated in a reading-writing process;

defining a mapping table between internal-storage logical addresses of the journal data and physical addresses;

in response to one of the buffer regions being full, performing a NAND writing operation to data in the buffer region, and performing the NAND writing operation of a preset length to the metadata in the solid state drive that are not written into the NAND; and

in response to the NAND writing operation being completed, arranging the corresponding buffer region at the end of the preset circulating sequence to wait for saving the updated data of the metadata;

in response to an internal-storage accessing request being received, determining whether the internal-storage accessing request is a journal accessing request; and

in response to determination that the internal-storage accessing request is the journal accessing request, accessing the mapping table, converting an address of the internal-storage accessing request into the physical address, and returning data accessed according to the physical address obtained after the conversion to an accessor.

12. The non-transitory computer-readable storage medium according to claim 11 , wherein the operations further comprises:

in response to an address-mapping modifying request being received, checking whether a conflict exists.

13. The non-transitory computer-readable storage medium according to claim 12 , wherein the operations further comprises:

in response to a conflict existing, searching for a conflicting mapping item and bringing back the conflicting mapping item to the solid state drive.

14. The non-transitory computer-readable storage medium according to claim 11 , wherein the operations further comprises:

in a power-on process, performing, by the solid state drive, a bad-block scanning operation to the NAND.

15. The non-transitory computer-readable storage medium according to claim 14 , wherein the operations further comprises:

according to the bad-block scanning operation, selecting a plurality of undamaged blocks in the NAND to be used as standby replacing blocks when a RAID group has a bad block.

16. The non-transitory computer-readable storage medium according to claim 11 , wherein the operation of, in response to one of the buffer regions being full, performing the NAND writing operation to the data in the buffer region, and performing the NAND writing operation of the preset length to the metadata in the SSD that are not written into the NAND further comprises:

configuring the buffer region and the preset length to be positive integer times of a smallest writing unit of the NAND.

Assignments (2)
LICENSE Recorded Jun 30, 2026
From: IEIT SYSTEMS CO., LTD
To: AIVRES SYSTEMS INC.
Reel/Frame 075857/0939 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 3, 2022
From: ZHAO, BAOLIN
To: INSPUR SUZHOU INTELLIGENT TECHNOLOGY CO., LTD.
Reel/Frame 061880/0378 →
Priority Claims (1)
CN 202010380420.2 · May 8, 2020 · national
Continuity (1)
Related Publication 20230185480A1 · Jun 15, 2023