CN-121996155-A - Management method and device for full flash array electricity-retaining memory and storage medium
Abstract
The embodiment of the invention provides a management method, a device and a storage medium of a full flash array power-saving memory, which relate to the field of memory management and comprise the steps of setting a power-saving memory space for each controller, wherein the power-saving memory space comprises a memory root object and a memory management module, the memory root object is used for storing starting initialization information and configuration information of the controller, and the memory management module comprises an object description area, a data root object area and a data object area; the method comprises the steps of dividing a data root object area and a data object area into at least one memory segment, wherein each memory segment corresponds to a physical memory address, the data root object area comprises an effective bitmap used for recording the effectiveness of a controller, storing description information of the memory segments in the data root object area and the data object area by using an object description area, and regulating and controlling the full flash array according to the working state of the controller, wherein each object description corresponds to one memory segment. The management method improves the processing efficiency of the full flash array.
Inventors
- LIU ZHAOLIANG
- HE ZHEN
- SONG XIANGUANG
- CHEN LEI
- WANG DECHENG
Assignees
- 曙光信息产业股份有限公司
- 曙光信息产业(北京)有限公司
Dates
- Publication Date
- 20260508
- Application Date
- 20251219
Claims (10)
- 1. A method for managing a full flash array power-saving memory, the full flash array comprising a plurality of controllers, the method comprising: setting a power-saving memory space for each controller, wherein the power-saving memory space comprises a memory root object and a memory management module, the memory root object is used for storing starting initialization information and configuration information of the controller, and the memory management module comprises an object description area, a data root object area and a data object area; Dividing the data root object area and the data object area into at least one memory segment respectively, wherein each memory segment corresponds to a physical memory address, and the data root object area comprises an effective bitmap used for recording the effectiveness of the controller; storing description information of the data root object area and the memory segment in the data object area by using the object description area, wherein each object description corresponds to one memory segment; And regulating and controlling the full flash array according to the working state of the controller.
- 2. The method according to claim 1, wherein said regulating said full flash array according to an operation state of said controller comprises: When all controllers are in a normal working state, key information is synchronously written into a data root object area of the corresponding controller, and an effective bitmap of the corresponding controller is in an effective state; when a certain controller is used as the main control of the full flash array, the authority of the object description area of all other controllers is modified for the controller; When all controllers fail at the same time, the marking state of the effective bitmap in the data root object area is invalid, and the full flash array is in an indistinguishable state.
- 3. The method of managing as set forth in claim 2, wherein said regulating said full flash array according to an operating state of said controller further comprises: When any controller is restarted after failure, the failure controller initiates a key information reading request to other effective controllers in the cluster, wherein the key information comprises data root object zone metadata, object mapping relation and transaction logs; the effective controller transmits the key information to the fault controller in a mode of combining incremental synchronization and verification through a high-speed data synchronization channel; And the fault controller performs integrity verification on the key information by using a double hash verification algorithm, and simultaneously restores the object index by using a hierarchical index reconstruction mechanism to complete alignment construction of the full data root object area.
- 4. A method of managing according to claim 3, characterized in that said alignment construction comprises: The memory management module counts memory segments in the capacity expansion area and sends a memory unit ID set to a memory proxy module, and the memory proxy module degrades memory units in the memory unit ID set; the memory management module polls the memory segments of the capacity expansion areas of each controller to release to obtain empty memory units, and the memory management module aligns the empty memory units.
- 5. The method of managing as set forth in claim 1, further comprising: Each controller stores object description areas of other controllers, the object description areas are isolated from each other through a hardware-level memory isolation mechanism, and the memory isolation mechanism adopts dual protection of page table-level access control and hardware access monitoring; When the memory management module is migrated, each controller copies the effective area related to memory management in the object description area of the front main control controller to the object description area of the new main control controller by adopting an incremental copying and description area mapping redirection technology, the new main control controller marks the front main control object description area as a historical read-only state after copying is completed, and the object description area of the new main control is marked as a writable state.
- 6. The method of claim 1, wherein, The description information of each memory segment in the object description area at least comprises a region identifier of the memory segment, a physical memory starting address corresponding to the memory segment, a use state of the memory segment and capacity information of the memory segment; The area identifier of the memory segment comprises a memory unit ID, verification information, a state, a reserved identifier and a copy number.
- 7. The method of claim 1, wherein, The data object area comprises all memory segments which can be allocated to the service module for use by each controller and a memory segment occupation bitmap, and the memory segment occupation bitmap is used for recording the use condition of all memory segments in the current control.
- 8. The method of managing as set forth in claim 1, further comprising: and adjusting the number of the memory segments and the size of each memory segment of the data root object area according to the user requirements.
- 9. A management device for a full flash array power-preserving memory, the full flash array comprising a plurality of controllers, the device comprising: The first processing module is used for setting a power-saving memory space for each controller, wherein the power-saving memory space comprises a memory root object and a memory management module, the memory root object is used for storing starting initialization information and configuration information of the controller, and the memory management module comprises an object description area, a data root object area and a data object area; The second processing module is used for dividing the data root object area and the data object area into at least one memory segment respectively, each memory segment corresponds to a physical memory address, and the data root object area comprises an effective bitmap used for recording the effectiveness of the controller; the third processing module is used for storing the description information of the memory segments in the data root object area and the data object area by utilizing the object description area, and each object description corresponds to one memory segment; and the fourth processing module is used for regulating and controlling the full flash array according to the working state of the controller.
- 10. A machine-readable storage medium having stored thereon instructions for causing a machine to perform the method of managing full flash array power save memory of any of the preceding claims 1-8.
Description
Management method and device for full flash array electricity-retaining memory and storage medium Technical Field The invention relates to the field of memory management, in particular to a management method, a device and a storage medium of a full flash array electricity-retaining memory. Background In a full flash array storage system, 2 or 4 controllers are generally configured, and the memory of each controller is mainly used for storing key data structures and cache logs in the running process of the system. In order to improve the reliability of the system, the related technology adopts a memory segment multi-copy mechanism to synchronously write the data image into other controllers, the data is stored in a memory to be regarded as finishing persistence, when one controller fails, the data in the power-saving memory can be persistence to a disk by means of the power supply of a standby power supply module, and after the system recovers the power supply, the data is recovered from the disk to the power-saving memory, so that the system is recovered to a state before the failure, and the data is ensured not to be lost. In the full flash array software system, each memory user has randomness on the memory requirement, and parameters such as a controller where the memory exists, the number of copies, the memory requirement and the like are not fixed. Therefore, the memory on each controller needs to be divided into intervals and managed uniformly to store the system data of different stages, and meanwhile, multi-copy memory segment management service needs to be provided to ensure that the memory segments can rotate efficiently during the system operation. However, the conventional controller memory management scheme has a plurality of defects that on one hand, the memory of the conventional controller is uniformly managed by the operating system, a memory user needs to finish operations such as application, reading, writing, releasing and the like of the memory by himself, and the memories among different controllers are relatively independent, so that an effective redundancy protection means is lacked. Because the number of business module processes in the full flash array software system is large and the business module processes are distributed on different controllers, the controllers and the processes can possibly encounter various fault scenes, memory leakage is easily caused, long-time stable operation of the full flash array software system is not facilitated, meanwhile, the framework that each module independently manages the memory also increases the software maintenance difficulty, not only the maintenance cost is increased, but also the interaction cost among the modules is excessively high. On the other hand, in the traditional scheme, the operations of memory allocation, release, reading and writing and the like all depend on interfaces provided by an operating system, and garbage memory recovery is mainly completed by the operating system, but the actual service scene is more complex. The main function of the full flash array is to provide short-time power supply when the controller is abnormally powered down, ensure that the system completes the task without termination before the power down, store the entry information for guiding the starting of the operating system, various data structures when each module operates and the client data which is not written into the disk in the memory, the data needs to be sequentially persisted to the power-saving hard disk in a short time, and after the power of the controller is restored, each software module in the array needs to restore the original memory layout to ensure that the array is restored to the state before the power down. However, the conventional memory management method relying on an operating system generally performs memory allocation in the whole memory pool, cannot perform unified classification management on various data, cannot provide redundancy protection for multiple copies of multiple controllers, and is difficult to ensure high availability of the full flash array storage system when facing extreme scenes such as controller faults, abnormal power failure and the like. Disclosure of Invention The embodiment of the invention aims to provide a management method, a device and a storage medium for a full flash array power-preserving memory. In order to achieve the above object, an embodiment of the present invention provides a method for managing a full flash array power-saving memory, where the full flash array includes a plurality of controllers, the method includes: setting a power-saving memory space for each controller, wherein the power-saving memory space comprises a memory root object and a memory management module, the memory root object is used for storing starting initialization information and configuration information of the controller, and the memory management module comprises an object description area, a data r