WO2022048108A1 - 存储器管理算法的自适应调整方法、系统、设备及介质 - Google Patents
存储器管理算法的自适应调整方法、系统、设备及介质 Download PDFInfo
- Publication number
- WO2022048108A1 WO2022048108A1 PCT/CN2021/074789 CN2021074789W WO2022048108A1 WO 2022048108 A1 WO2022048108 A1 WO 2022048108A1 CN 2021074789 W CN2021074789 W CN 2021074789W WO 2022048108 A1 WO2022048108 A1 WO 2022048108A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- memory management
- memory
- management algorithm
- time period
- data read
- Prior art date
Links
- 230000015654 memory Effects 0.000 title claims abstract description 623
- 238000000034 method Methods 0.000 title claims abstract description 61
- 238000003860 storage Methods 0.000 claims abstract description 21
- 230000003044 adaptive effect Effects 0.000 claims description 50
- 238000004590 computer program Methods 0.000 claims description 4
- 238000007726 management method Methods 0.000 description 295
- 238000013500 data storage Methods 0.000 description 18
- 238000004891 communication Methods 0.000 description 13
- 238000004519 manufacturing process Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 238000001514 detection method Methods 0.000 description 3
- 239000007787 solid Substances 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
- G06F3/0607—Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
Definitions
- the present application relates to the technical field of data storage, and in particular, to an adaptive adjustment method, system, terminal device and computer storage medium of a memory management algorithm.
- the memory used for data reading and writing is equipped with a memory management algorithm to ensure that the memory normally completes data reading and writing.
- the memory management algorithm is usually a general algorithm uniformly configured by the memory manufacturer when the memory leaves the factory.
- many memories based on general memory management algorithms cannot guarantee optimal data read and write performance in relatively special application scenarios.
- a set of management algorithms can be specially designed for the user according to the special scene of the user's use of the memory, which can make the memory perform optimally in the special scene, but once there is a user's use of the memory, the scene cannot be finally determined. , the manufacturer will directly choose to configure a general management algorithm for the memory.
- the existing manufacturers configure a general memory management algorithm for the memory. Due to the particularity of the user's use of the memory, it is impossible to guarantee that the memory always maintains the optimal performance of data read and write.
- the main purpose of the present application is to provide an adaptive adjustment method, device, terminal device and computer storage medium for a memory management algorithm, aiming to solve the problem in the prior art that manufacturers configure a general memory management algorithm for the memory and cannot guarantee that the memory always Technical issues that maintain optimal data read and write performance.
- the present application provides an adaptive adjustment method for a memory management algorithm, and the adaptive adjustment method for the memory management algorithm includes:
- the memory management algorithm currently applied by the memory is adjusted to the optimal memory management algorithm within the preset application time period.
- step of continuously collecting the data reading and writing features of the memory includes:
- the data read and write characteristics of the memory are continuously collected in the first time segment within the preset application time period;
- the step of continuously collecting the data reading and writing features of the memory in the first time segment within the preset application time period includes:
- Parse the data read/write task based on a memory management algorithm applied by the memory in the first time period to collect the data read/write feature.
- the preset memory management algorithm is a plurality of memory management algorithms stored in the local end of the memory or in the cloud, and the cloud is connected in communication with the memory,
- the optimal memory management algorithm applied in the second time section of the preset application time period is matched, wherein the preset application time period applying a time period equal to the first time segment superimposing the second time segment; or,
- the step of matching the optimal memory management algorithm of the memory in the preset application time period from the preset memory management algorithm according to the data reading and writing characteristics also includes:
- the target memory management algorithm corresponding to the application scenario is determined as the optimal memory management algorithm applied by the memory in the second time period.
- the method further includes:
- the memory management algorithm is customized according to the data read/write feature, and the customized memory management algorithm is used as the target memory management algorithm corresponding to the application scenario.
- step of matching the optimal memory management algorithm of the memory in the preset application time period from the preset memory management algorithm according to the data reading and writing characteristics it also includes:
- step of adjusting the memory management algorithm currently applied by the memory to the optimal memory management algorithm within the preset application time period includes:
- the local end switches the first memory management algorithm to the optimal memory management algorithm.
- the optimal memory management algorithm downloads the optimal memory management algorithm from a preset cloud and switch the first memory management algorithm to the optimal memory management algorithm algorithm.
- the present application also provides an adaptive adjustment system for a memory management algorithm, and the adaptive adjustment system for the memory management algorithm includes:
- the acquisition module is used to continuously collect the data read and write characteristics of the memory
- a matching module configured to match the optimal memory management algorithm of the memory in the preset application time period from the preset memory management algorithm according to the data read and write characteristics
- An adjustment module configured to adjust the memory management algorithm currently applied by the memory to the optimal memory management algorithm within the preset application time period.
- Each functional module of the self-adaptive adjustment system of the memory management algorithm of the present application implements the steps of the self-adaptive adjustment method of the memory management algorithm as described above during operation.
- the present application also provides a terminal device, the terminal device includes: a memory, a processor, and an adaptive adjustment of a memory management algorithm stored in the memory and running on the processor
- the program when the self-adaptive adjustment program of the memory management algorithm is executed by the processor, implements the steps of the self-adaptive adjustment method of the memory management algorithm as described above.
- the present application also provides a computer storage medium, where a computer program is stored on the computer storage medium, and when the computer program is executed by a processor, the above-mentioned adaptive adjustment method of the memory management algorithm is implemented. step.
- the self-adaptive adjustment method, system, terminal device and computer storage medium of the memory management algorithm proposed in the present application by continuously collecting the data read and write characteristics of the memory; matching the memory from the preset memory management algorithm according to the data read and write characteristics; The optimal memory management algorithm in a preset application time period; the memory management algorithm currently applied by the memory is adjusted to the optimal memory management algorithm in the preset application time period.
- the memory management algorithm currently being applied by the memory is switched and adjusted to the matched optimal memory management algorithm, so that the memory can apply the optimal memory management algorithm until the next preset The start time node of the application time period.
- the present application is based on performing data reading during the use of the acquisition memory.
- Write data read and write characteristics and then based on the data read and write characteristics, adaptive matching can make the memory achieve high performance in the current application environment.
- the problem that the memory cannot be guaranteed to maintain optimal data read and write performance also saves the high production guidance cost of the memory brought by individually customizing the production memory based on specific application scenarios, and avoids the limitations of the memory usage environment.
- FIG. 1 is a schematic structural diagram of the hardware operation of a terminal device involved in a solution according to an embodiment of the present application
- FIG. 2 is a schematic flowchart of an embodiment of an adaptive adjustment method for a memory management algorithm of the present application
- FIG. 3 is a schematic flowchart of a refinement of step S200 in an embodiment of an adaptive adjustment method for a memory management algorithm of the present application;
- FIG. 4 is a schematic diagram of a module structure of an adaptive adjustment system of a memory management algorithm of the present application.
- FIG. 1 is a schematic structural diagram of a hardware operating environment of a terminal device involved in an embodiment of the present application.
- FIG. 1 can be a schematic structural diagram of a hardware operating environment of a terminal device.
- the terminal device in this embodiment of the present application may be a data storage control terminal, a PC, a portable computer and other terminal devices.
- the terminal device may include: a processor 1001 , such as a CPU, a network interface 1004 , a user interface 1003 , a memory 1005 , and a communication bus 1002 .
- the communication bus 1002 is used to realize the connection and communication between these components.
- the user interface 1003 may include a display screen (Display), an input unit such as a keyboard (Keyboard), and the optional user interface 1003 may also include a standard wired interface and a wireless interface.
- the network interface 1004 may include a standard wired interface and a wireless interface (eg, a WI-FI interface).
- the memory 1005 may be high-speed RAM memory, or may be non-volatile memory, such as disk memory.
- the memory 1005 may also be a storage device independent of the aforementioned processor 1001 .
- the structure of the terminal device shown in FIG. 1 does not constitute a limitation on the terminal device, and may include more or less components than those shown in the figure, or combine some components, or arrange different components.
- the memory 1005 as a computer storage medium may include an operating system, a network communication module, a user interface module, and a processing program for distributed tasks.
- the operating system is a program that manages and controls hardware and software resources of a sample terminal device, a processing program that supports distributed tasks, and the running of other software or programs.
- the user interface 1003 is mainly used for data communication with each terminal;
- the network interface 1004 is mainly used to connect to the background server and perform data communication with the background server;
- the processor 1001 can be used to call the memory 1005
- the adaptive tuner of the memory management algorithm stored in the and does the following:
- Detecting status information of the data storage medium wherein the status information includes: bad physical block distribution status and physical block availability status;
- the memory management algorithm currently applied by the memory is adjusted to the optimal memory management algorithm within the preset application time period.
- processor 1001 can call the adaptive adjustment program of the memory management algorithm stored in the memory 1005, and also perform the following operations:
- the data read and write characteristics of the memory are continuously collected in the first time segment within the preset application time period;
- the processor 1001 can call the adaptive adjustment program of the memory management algorithm stored in the memory 1005, and also perform the following operations:
- Parse the data read/write task based on a memory management algorithm applied by the memory in the first time period to collect the data read/write feature.
- the preset memory management algorithm is a plurality of memory management algorithms stored in the local end of the memory or in the cloud, the cloud is connected to the memory in communication, and the processor 1001 can call the memory management algorithm stored in the memory 1005. , which also does the following:
- the optimal memory management algorithm applied in the second time section of the preset application time period is matched, wherein the preset application time period applying a time period equal to the first time segment superimposing the second time segment; or,
- processor 1001 can call the adaptive adjustment program of the memory management algorithm stored in the memory 1005, and also perform the following operations:
- the target memory management algorithm corresponding to the application scenario is determined as the optimal memory management algorithm applied by the memory in the second time period.
- the processor 1001 may call the self-adaptive adjustment program of the memory management algorithm stored in the memory 1005, and after executing the determination of the application scenario in which the memory is located within the preset application time period according to the data read and write characteristics, , and also do the following:
- the memory management algorithm is customized according to the data read/write feature, and the customized memory management algorithm is used as the target memory management algorithm corresponding to the application scenario.
- the processor 1001 can call the self-adaptive adjustment program of the memory management algorithm stored in the memory 1005, and when executing the memory management algorithm from the preset memory management algorithm according to the data read and write characteristics, match the memory in the preset application time period. After the optimal memory management algorithm, the following operations are also performed:
- processor 1001 can call the adaptive adjustment program of the memory management algorithm stored in the memory 1005, and also perform the following operations:
- the local end switches the first memory management algorithm to the optimal memory management algorithm.
- the optimal memory management algorithm downloads the optimal memory management algorithm from a preset cloud and switch the first memory management algorithm to the optimal memory management algorithm algorithm.
- FIG. 2 is a schematic flowchart of a first embodiment of an adaptive adjustment method for a memory management algorithm of the present application.
- the embodiments of the present application provide embodiments of the adaptive adjustment method of the memory management algorithm. It should be noted that although the logical sequence is shown in the flowchart, in some cases, it may be executed in a sequence different from that here. steps shown or described.
- the adaptive adjustment method of the memory management algorithm in the embodiment of the present application is applied to the above-mentioned terminal device for controlling data storage.
- the terminal device in the embodiment of the present application may be a data storage medium itself, a data storage control terminal, a PC, a portable computer and other terminal devices, There is no specific restriction here.
- Step S100 continuously collecting data read and write features of the memory
- the data read and write features may specifically include: the proportion of read data, the proportion of stored and written data, the amount of data read and written, and the data hot and cold status of read and written data. It should be understood that, based on different design requirements of practical applications, in other embodiments, the data read/write feature may of course also include other types of features.
- the self-adaptive adjustment method of the memory management algorithm in the embodiment of the present application does not The type and number of features are specifically limited.
- the terminal equipment currently used to control data reading and writing in the process of controlling the memory to perform data reading and writing, according to the preset application time period, continuously collects the memory execution data from the start time node of the preset application time period.
- Data read and write characteristics such as the proportion of read data of read and write tasks, the proportion of stored and written data, the amount of data read and written, or the hot and cold status of data read and written.
- the preset application time period may be specifically set by the terminal device based on the configuration input by the staff through the user graphical interface of the front-end visual output in advance.
- Algorithm (for the convenience of description and understanding, the memory management algorithms in the following specific implementation examples are directly replaced by "FTL algorithm") under the time period for cyclic collection of data read and write features.
- the terminal device reads the system time to It is judged whether the start time node of the next time period has been reached, and when it is judged, it starts to continuously collect various data read and write characteristics that exist in the memory performing data storage tasks under its currently applied memory management algorithm.
- the data read and write characteristics of the memory are continuously collected, which may include:
- Step S101 continuously collecting data read/write characteristics of the memory in a first time section within a preset application time period.
- the terminal device From the start time node of each preset application time period, the terminal device continuously collects the memory in the first time period and performs data read and write tasks based on the currently applied memory management algorithm, the proportion of the existing read data Or data read and write characteristics such as the proportion of stored and written data, the amount of data read and written, and the hot and cold status of data read and written.
- step S101 may include:
- Step S1011 continuously detect the data read and write tasks received by the memory in the first time section of the preset application time period
- the terminal device After the terminal device detects that the current system time reaches the start time node of the next preset application time period, it starts to continuously detect the data owner connected to the memory in the first time section of the preset application time period.
- the data read and write tasks issued.
- the terminal device sets the preset application time period to 09:00 am to 23:59 pm every day based on the configuration operation preset by the staff, and the terminal device detects the current
- the system time reaches 09:00, that is, when the start time node of the application time period "09:00 am to 23:59 pm" is reached, the first time segment of the application time period - "09 am : 00 to 10:00 in the morning, continuously detect the data read and write tasks issued by the data owner-host connected to the currently controlled storage.
- the first time segment of the preset application time period can be set according to the specific needs of actual use.
- the first time period accounts for the overall proportion of the preset application time period, that is, high performance corresponds to a small proportion, and low performance corresponds to a large proportion.
- the preset application time period can of course also be set to be different from other time periods exemplified in this embodiment.
- the adaptive adjustment method of the management algorithm is not limited to the specific duration and the like of the preset application time period.
- the data read/write task issued by the data owner to the memory may specifically be a data storage task or a data read task
- the memory may specifically be any mature SSD (Solid State). Disk or Solid State Drive) solid state hard disk or other mechanical hard disk
- the data reading and writing tasks can of course also be other tasks different from those described in this embodiment.
- the memory can of course be other memories that are different from those described in this embodiment.
- the self-adaptive adjustment method of the memory management algorithm in the embodiment of the present application does not carry out the data reading and writing tasks and the type of the memory. Specific restrictions.
- Step S1012 Parse the data read/write task based on a memory management algorithm applied by the memory in the first time period to collect the data read/write feature.
- the terminal device uses the memory for the first time of the preset application time period for each detected data read and write task.
- the memory management algorithm that is being applied in the internal memory directly analyzes the data read and write tasks to collect the proportion of read data, the proportion of stored and written data, the amount of data read and written, or the hot and cold status of data read and written. Write features.
- the terminal device detects a data read and write task issued by the data owner-host to the memory, Therefore, the terminal device uses the FTL algorithm 1 that is being applied by the memory at the current time node, based on the existing mature data task analysis method, to analyze whether the data read/write task is a data storage task or a data read task, and whether the data read/write task is in the data read/write task.
- Data read and write characteristics such as the data volume of the indicated data to be read and written, and the hot and cold status of the data.
- Step S200 matching the optimal memory management algorithm of the memory in a preset application time period from a preset memory management algorithm according to the data read and write characteristics;
- the number of preset memory management algorithms may be multiple, and when different preset memory management algorithms are applied to the memory, the memory can make the memory read and write data for different data read and write.
- the characteristics show better performance.
- the preset FTL algorithm 1 can use the entire memory for data reading and writing when the memory has a large proportion of data read and write data. Therefore, when the proportion of the stored and written data is relatively large, the memory can show higher performance of performing data reading and writing (for example, completing the overall data storage and writing more quickly).
- the terminal device After the terminal device continuously collects the data read and write characteristics such as the proportion of read data, the proportion of stored and written data, the amount of read and written data, or the cold and hot status of the read and written data, the An optimal memory management algorithm that enables the memory to perform data read and write tasks with the data read and write characteristics and shows the optimal performance of data read and write is matched among the plurality of preset memory management algorithms.
- the preset memory management algorithm is a plurality of memory management algorithms stored in the local end of the memory or in the cloud, and the cloud is connected to the memory in communication, please refer to FIG. 3 .
- the above step S200 may include:
- Step S201 according to the data reading and writing characteristics, among the multiple memory management algorithms at the local end of the memory, match the optimal memory management algorithm applied in the second time section of the preset application time period, wherein the The preset application time period is equal to the superposition of the first time segment and the second time segment;
- the terminal device After the terminal device continuously collects the data read and write characteristics existing in the current data read and write tasks performed by the memory in the first time segment of the preset application time period, the terminal device immediately controls the memory among the multiple memory management algorithms stored on the local end. , to match an optimal memory management that enables the memory to perform the data read/write task with the data read/write feature in the second time segment following the preset application time period, and shows the optimal performance of data read/write algorithm.
- the superimposition of the first time period with the second time period is equal to the entire preset application time period.
- the preset application time period is set to "09:00 am to 23:00 pm. 59" and the first time segment is "09:00 am to 10:00 am", then the second time segment is "10:01 am to 23:59 pm”.
- the terminal device detects the data within the preset application time period—the first time period from 09:00 am to 23:59 pm—09:00 am to 10:00 am. It has the data read and write tasks issued to the memory and determines that in the current application time period - 09:00 am to 23:59 pm, the memory performs data read and write tasks that have the characteristics of data read and write with a large proportion of stored and written data.
- the terminal device immediately issues a control instruction to the memory, so that the memory matches the FTL algorithm 2, FTL algorithm 3, FTL algorithm 4 and FTL algorithm 5 stored at the local end to match a memory that can make the memory in the application time period-
- the second time period from 09:00 am to 23:59 pm - from 10:01 am to 23:59 pm, when executing data read and write tasks issued by the data owner-host, the overall operation will focus on data storage Therefore, the optimal memory management algorithm (such as FTL algorithm 3) for the data reading and writing task can be completed more quickly and efficiently.
- Step S202 uploading the data read and write features to the cloud, so that the cloud can match the data in the preset application time period among multiple memory management algorithms in the cloud according to the data read and write features.
- the optimal memory management algorithm applied during the second time period is the optimal memory management algorithm applied during the second time period.
- the cloud may specifically be any server or other terminal that communicates with the storage device and the terminal device itself.
- the terminal device can also store multiple preset memory management algorithms in the cloud connected to the memory. In the case of a preset memory management algorithm, the cloud is controlled to execute the matching process of the optimal memory management algorithm.
- the terminal device After the terminal device continuously collects the data read and write characteristics of the current data read and write tasks performed by the memory in the first time segment of the preset application time period, the terminal device immediately controls the cloud that is connected to the memory in communication, and the data stored in the cloud is stored in the cloud.
- a data read/write task with the data read/write feature is matched to enable the memory to execute the data read/write task with the data read/write feature in the second time period following the preset application time period, and the data read/write is optimal. Performance-optimized memory management algorithms.
- the terminal device detects the data within the preset application time period—the first time period from 09:00 am to 23:59 pm—09:00 am to 10:00 am. It has the data read and write tasks issued to the memory and determines that in the current application time period - 09:00 am to 23:59 pm, the memory performs data read and write tasks that have the characteristics of data read and write with a large proportion of stored and written data. Therefore, the terminal device immediately issues a control command carrying the data read/write feature to the cloud that establishes a communication connection with the memory, so that the cloud can perform the stored FTL algorithm 2, FTL algorithm 3, FTL algorithm 4 and FTL algorithm 5 in the stored data.
- the terminal device immediately issues a control command carrying the data read/write feature to the cloud that establishes a communication connection with the memory, so that the cloud can perform the stored FTL algorithm 2, FTL algorithm 3, FTL algorithm 4 and FTL algorithm 5 in the stored data.
- Step S300 adjusting the memory management algorithm currently applied by the memory to the optimal memory management algorithm within the preset application time period.
- the terminal device matches the optimal memory management algorithm that can enable the memory to perform data read and write tasks with the data read and write characteristics from a plurality of preset memory management algorithms, and shows the optimal performance of data read and write
- the current In the preset application time period the memory management algorithm currently being applied by the memory is switched and adjusted to the optimal memory management algorithm that has been matched, so that the memory can read and write data for the received data within the preset application time period. Shows the best data read and write performance.
- the adaptive adjustment method of the memory management algorithm may also include:
- Step S400 detecting whether the first memory management algorithm currently applied by the memory within the preset application time period is the optimal memory management algorithm.
- the terminal device After the terminal device matches the optimal memory management algorithm that can enable the memory to perform data reading and writing tasks with the data reading and writing characteristics from a plurality of preset memory management algorithms, and shows the optimal performance of data reading and writing, it will preferentially detect the memory management algorithm. Whether the first memory management algorithm being applied by the memory in the first time section of the current preset application time period is the determined optimal memory management algorithm.
- the terminal device detects by detecting a preset application time period—the first time period from 09:00 am to 23:59 pm—from 09:00 am to 10:00 am.
- the data read and write tasks performed by the memory have the characteristics of data read and write with a large proportion of the stored and written data, so as to control the memory to match the FTL algorithm 2, FTL algorithm 3, FTL algorithm 4 and FTL algorithm 5 stored in the local end.
- the terminal device After 3 is used as the optimal memory management algorithm, the terminal device immediately detects whether the first FTL algorithm being applied in the memory in the first time period - 09:00 am to 10:00 am is the FTL algorithm 3 .
- adjusting the memory management algorithm currently applied by the memory to the optimal memory management algorithm within the preset application time period may include:
- Step S301 if it is detected that the first memory management algorithm is not the optimal memory management algorithm, switch the first memory management algorithm to the optimal memory management algorithm at the local end;
- the terminal device When the terminal device detects whether the first memory management algorithm being applied by the memory in the first time period of the current preset application time period is the determined optimal memory management algorithm, if it detects that the first memory management algorithm is not determined to be good the optimal memory management algorithm, the terminal device then controls the memory at the local end to directly switch and adjust the first memory management algorithm to the optimal memory management algorithm, so that the memory is within the second time period of the preset application time period It can show the optimal data read and write performance for the received data read and write tasks.
- FTL algorithm 1 that is, the first FTL algorithm 1.
- FTL algorithm - FTL algorithm 1 is not the terminal device control memory in the local end of FTL algorithm 2, FTL algorithm 3, FTL algorithm 4 and FTL algorithm 5, according to the data read and write characteristics of the larger proportion of stored and written data to match.
- the optimal memory management algorithm-FTL algorithm 3 thus, the terminal device immediately controls the memory to stop the first FTL algorithm-FTL algorithm 1 being applied at the local end, and switches to apply the optimal memory management algorithm-FTL algorithm 3, so that the memory During the second time period of the application time period - 09:00 am to 23:59 pm - 10:01 am to 23:59 pm, based on the management of the FTL algorithm, it is possible to execute the data owner-host under the management When sending data read and write tasks, the overall operation will focus on data storage to complete the data read and write tasks more quickly and efficiently.
- the terminal device detects that the first memory management algorithm is FTL algorithm 1, not the determined optimal memory management algorithm-FTL algorithm 3.
- the terminal device can also use FTL in the memory by applying FTL algorithm 3. After Algorithm 1 completes the currently executing data read/write task, stop FTL Algorithm 1, and switch to apply the optimal memory management algorithm-FTL Algorithm 3.
- Step S302 if it is detected that the first memory management algorithm is not the optimal memory management algorithm, download the optimal memory management algorithm from a preset cloud and switch the first memory management algorithm to the optimal memory management algorithm.
- Optimal memory management algorithms Optimal memory management algorithms.
- the terminal device When the terminal device detects whether the first memory management algorithm being applied by the memory in the first time period of the current preset application time period is the determined optimal memory management algorithm, if it detects that the first memory management algorithm is not determined to be good the optimal memory management algorithm, the terminal device then controls the memory to download the optimal memory management algorithm from the cloud that establishes a communication connection with the memory, and then switches the first memory management algorithm to the optimal memory management algorithm, so that the memory is It is assumed that optimal data read and write performance can be exhibited for the received data read and write tasks within the second time period of the application time period.
- FTL algorithm 1 that is, the first FTL algorithm
- FTL Algorithm-FTL Algorithm 1 is not the cloud where the terminal device controls the connection with the storage.
- the terminal device currently used to control data reading and writing, in the process of controlling the memory to perform data reading and writing, according to the preset application time period continues from the start time node of the preset application time period.
- the data read and write characteristics such as the proportion of read data, the proportion of stored and written data, the amount of read and written data, or the cold and hot status of the read and written data in the memory for performing data read and write tasks are collected; After the memory performs data read and write tasks such as the proportion of read data, the proportion of stored and written data, the amount of data read and written, or the hot and cold status of data read and written, it is then managed from multiple preset memories.
- the algorithm matches an optimal memory management algorithm that enables the memory to perform data reading and writing tasks with the data reading and writing characteristics, and shows the optimal performance of data reading and writing; the terminal device matches from multiple preset memory management algorithms After finding the optimal memory management algorithm that enables the memory to perform the data read and write tasks with the data read and write characteristics and shows the optimal performance of data read and write, the memory management algorithm that is currently being applied by the memory in the current preset application time period is further managed. Algorithm, switch and adjust to the optimal memory management algorithm that has been matched, so that the memory can show optimal data read and write performance for the received data read and write tasks within the preset application time period.
- the present application performs continuous data reading and writing feature collection during the use of the memory, according to the preset application time period from the start time node of the preset application time period and performing data reading and writing for the memory, and then, based on the collected data.
- the data read and write characteristics of the memory in the preset application time period, and the preset memory management algorithm is matched to a suitable memory so that the memory can obtain the optimal memory with high performance in the current preset application time period. management algorithm, and finally, within the current preset application time period, switch and adjust the memory management algorithm currently being applied by the memory to the matched optimal memory management algorithm for the memory to apply the optimal memory management algorithm until the next The start time node of the preset application time period.
- the present application is based on performing data reading during the use of the acquisition memory.
- Write data read and write characteristics and then based on the data read and write characteristics, adaptive matching can make the memory achieve high performance in the current application environment.
- the problem that the memory cannot be guaranteed to maintain optimal data read and write performance also saves the high production guidance cost of the memory brought by individually customizing the production memory based on specific application scenarios, and avoids the limitations of the memory usage environment.
- a second embodiment of the adaptive adjustment method of the memory management algorithm of the present application is proposed.
- the above-mentioned step S200 matches the optimal memory management algorithm of the memory in the preset application time period from the preset memory management algorithm, and may further include:
- Step S203 determining the application scenario in which the memory is located within the preset application time period according to the data reading and writing characteristics
- the application scenario may specifically be an application scenario that is independently defined in advance according to the configuration operation input by the staff and corresponds to the data reading and writing characteristics existing in the memory performing data reading and writing tasks, such as , the staff can pre-define the proportion of the stored and written data, and the corresponding configuration memory is mainly used for the application scenario of data storage - the driving recorder stores real-time video data, and the staff can also pre-scale according to the proportion of the read data. , and the corresponding configuration memory is mainly used for the application scenario of data reading - the system server distributes and processes data based on client requests.
- the terminal device can of course also configure other application scenarios different from those listed and described in this embodiment according to the configuration operation definition input by the staff.
- the self-adaptive adjustment method of the memory management algorithm in the embodiment does not specifically limit the number and type of the application scenarios.
- the terminal device After the terminal device continuously collects the data read and write features existing in the current data read and write tasks performed by the memory in the first time segment of the preset application time period, it determines the preconfigured application scenario, which corresponds to the data read and write features.
- the application scenario is determined, and the application scenario is determined as the application scenario in which the memory is located in the current preset time period.
- the terminal device will pre-read data by the staff based on the proportion of read data, the proportion of stored and written data, the amount of data read and written, or the hot and cold status of data read and written.
- Write features and independently define the application scenarios corresponding to the configured data read and write features, and generate a list of correspondence between data read and write features and application scenarios, and then, on the terminal device through the preset application time period - am 09 : The first time period from 00 to 23:59 in the evening - from 09:00 in the morning to 10:00 in the morning, detect the data read and write tasks issued by the data owner to the memory and determine the current application time period - 09:00 in the morning At 23:59 in the evening, after the memory performs the data read/write task and there is a data read/write feature with a large proportion of stored and written data, traverse the correspondence list to determine the corresponding data read/write feature with a large proportion of stored data.
- the application scenario is: the driving recorder stores real-time video data, and the terminal device determines the application scenario - the driving recorder stores the real-time video data as the application where the memory is located in the application time period - 09:00 am to 23:59 pm Scenes.
- Step S204 determining the target memory management algorithm corresponding to the application scenario as the optimal memory management algorithm applied by the memory in the second time period.
- the terminal device After the terminal device determines the application scenario corresponding to the read and write characteristics of the collected data from the preconfigured application scenarios, and determines the application scenario as the application scenario in which the memory is located within the current preset time period, the terminal The device then determines the target memory management algorithm in each memory management algorithm that corresponds to the application scenario in which the memory is located within the current preset time period as a target memory management algorithm that can make The memory executes the data read/write task with the data read/write feature in the second time section following the preset application time period, and exhibits an optimal memory management algorithm with optimal data read/write performance.
- the terminal device will be pre-determined by the staff based on data such as the proportion of read data, the proportion of stored and written data, the amount of data read and written, or the hot and cold status of data read and written.
- Read and write features and independently define the application scenarios corresponding to the configured data read and write features, generate a list of correspondence between data read and write features and application scenarios, and simultaneously add the corresponding application scenarios to the corresponding relationship list.
- a corresponding FTL algorithm that enables the memory to obtain optimal performance for the execution of data read and write tasks in this application scenario.
- the driving recorder stores the real-time video data
- the application scenario-the driving recorder stores the real-time video.
- the algorithm is: FTL algorithm 3, so that the terminal device determines the FTL algorithm 3 to make the memory in the second time period of the application time period - 09:00 am to 23:59 pm - 10:01 am to 23:59 pm
- the overall operation will focus on data storage, so that the optimal memory management algorithm can complete the data read and write tasks more quickly and efficiently.
- the memory management in this embodiment of the present application is performed.
- the adaptive adjustment method of the algorithm may also include:
- Step S205 detecting the target memory management algorithm corresponding to the application scenario
- Step S206 if the target memory management algorithm is not detected, customize the memory management algorithm according to the data read-write feature, and use the customized memory management algorithm as the target memory management algorithm corresponding to the application scenario;
- the terminal device determines the application scenario corresponding to the read and write characteristics of the collected data, and determines the application scenario as the application scenario where the memory is located in the current preset time period, and then immediately According to the correspondence between the pre-established application scenarios and the memory management algorithm, the target memory management algorithm corresponding to the application scenario where the memory is located in the current preset time period is detected from each memory management algorithm. When the target memory management algorithm is not detected, the terminal device then automatically or based on staff input configuration operations to customize a memory that enables the memory to execute the data read in the second time period following the preset application time period. The data read and write tasks of the write characteristics, and the memory management algorithm showing the optimal performance of data read and write, and the customized memory management algorithm is determined as the target memory management algorithm corresponding to the application scenario.
- the terminal device continuously collects the data read and write features existing in the current data read and write tasks performed by the memory in the first time section of the preset application time period, it is determined that the preconfigured application scenario is compatible with the data.
- the application scenario corresponding to the read-write feature is determined, and the application scenario is determined as the application scenario in which the memory is located in the current preset time period.
- the target memory management algorithm corresponding to the application scenario in which the memory is located in the current preset time period is determined to be able to enable the memory to execute the data read with the data in the second time section following the preset application time period.
- the data read and write tasks of write characteristics, and the optimal memory management algorithm that shows the optimal performance of data read and write.
- the suitable memory is matched so that the memory can obtain high performance in the application scenario of the current preset application time period.
- the optimal memory management algorithm for performance so that the memory can automatically switch the currently applied memory management algorithm to the matched optimal memory management algorithm.
- the present application is based on performing data reading during the use of the acquisition memory.
- Write data read and write characteristics and then based on the data read and write characteristics, adaptive matching can make the memory achieve high performance in the current application environment.
- the problem that the memory cannot be guaranteed to maintain optimal data read and write performance also saves the high production guidance cost of the memory brought by individually customizing the production memory based on specific application scenarios, and avoids the limitations of the memory usage environment.
- the terminal device has not developed an optimal memory management algorithm that can achieve high performance of the memory for the application scenarios corresponding to the data read and write features in advance, so the terminal device cannot determine the memory based on the corresponding relationship between the application scenario and the storage algorithm.
- the terminal device immediately customizes the memory automatically or based on the operation of the staff to perform the data reading and writing tasks with the data reading and writing characteristics in the application scenario, and shows the data Read and write the memory management algorithm with optimal performance, so that the memory can maintain the optimal data read and write performance in the subsequent application of the customized memory management algorithm. In this way, the intelligence for adaptive adjustment of the memory management algorithm is improved.
- an embodiment of the present application also proposes an adaptive adjustment system for a memory management algorithm.
- the adaptive adjustment system for the memory management algorithm includes:
- the acquisition module is used to continuously collect the data read and write characteristics of the memory
- a matching module configured to match the optimal memory management algorithm of the memory in the preset application time period from the preset memory management algorithm according to the data read and write characteristics
- An adjustment module configured to adjust the memory management algorithm currently applied by the memory to the optimal memory management algorithm within the preset application time period.
- the collection module is further configured to: continuously collect data read and write features of the memory in a first time segment within a preset application time period;
- the acquisition module includes:
- a first detection unit configured to continuously detect data read and write tasks received by the memory within the first time section of the preset application time period
- a parsing and collecting unit configured to parse the data reading and writing tasks based on a memory management algorithm applied by the memory in the first time period to collect and obtain the data reading and writing characteristics.
- the preset memory management algorithm is a plurality of memory management algorithms stored in the local end of the memory or in the cloud, the cloud is in communication connection with the memory, and the matching module includes:
- a first matching unit configured to match the optimal memory management algorithm applied in the second time section of the preset application time period among the multiple memory management algorithms on the local end of the memory according to the data read and write characteristics , wherein the preset application time period is equal to the first time segment superimposed on the second time segment;
- the second matching unit is used for uploading the data read and write features to the cloud, so that the cloud can match the preset data among the multiple memory management algorithms in the cloud according to the data read and write features.
- the matching module further includes:
- a scenario determination unit configured to determine the application scenario in which the memory is located within the preset application time period according to the data read/write feature
- the third matching unit is configured to determine the target memory management algorithm corresponding to the application scenario as the optimal memory management algorithm applied by the memory in the second time period.
- the matching module further includes:
- a second detection unit configured to detect the target memory management algorithm corresponding to the application scenario
- the algorithm customization unit is configured to customize the memory management algorithm according to the data reading and writing characteristics if the target memory management algorithm is not detected, and use the customized memory management algorithm as the target memory management algorithm corresponding to the application scenario.
- the self-adaptive adjustment system for the memory management algorithm in the embodiment of the present application further includes:
- a detection module configured to detect whether the first memory management algorithm currently applied by the memory within the preset application time period is the optimal memory management algorithm.
- the adjustment module includes:
- a first adaptive adjustment unit configured to switch the first memory management algorithm to the optimal memory management algorithm at the local end if it is detected that the first memory management algorithm is not the optimal memory management algorithm ;
- a second adaptive adjustment unit configured to download the optimal memory management algorithm from a preset cloud and manage the first memory management algorithm if it is detected that the first memory management algorithm is not the optimal memory management algorithm The algorithm switches to the optimal memory management algorithm.
- an embodiment of the present application also proposes a terminal device, the terminal device includes: a memory, a processor, and an adaptive adjustment program for a memory management algorithm that is stored on the memory and can run on the processor, the memory
- the adaptive adjustment program of the management algorithm when executed by the processor, implements the steps of the adaptive adjustment method of the memory management algorithm as described above.
- the steps implemented when the self-adaptive adjustment program of the memory management algorithm running on the processor is executed may refer to the various embodiments of the self-adaptive adjustment method of the memory management algorithm of the present application, which will not be repeated here.
- an embodiment of the present application also proposes a computer storage medium, which is applied to a computer.
- the computer storage medium may be a non-volatile computer-readable computer storage medium, and an adaptive adjustment program of a memory management algorithm is stored on the computer storage medium. , when the self-adaptive adjustment program of the memory management algorithm is executed by the processor to realize the steps of the above-mentioned self-adaptive adjustment method of the memory management algorithm.
- the steps implemented when the self-adaptive adjustment program of the memory management algorithm running on the processor is executed may refer to the various embodiments of the self-adaptive adjustment method of the memory management algorithm of the present application, which will not be repeated here.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本申请公开了一种存储器管理算法的自适应调整方法、系统、终端设备及计算机存储介质,通过持续采集存储器的数据读写特征;根据所述数据读写特征从预设存储器管理算法中匹配所述存储器在预设应用时间周期的最优存储器管理算法;在所述预设应用时间周期内将所述存储器当前应用的存储器管理算法调整至所述最优存储器管理算法。
Description
本申请要求于2020年9月2日申请的、申请号为202010918275.9的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
本申请涉及数据存储技术领域,尤其涉及一种存储器管理算法的自适应调整方法、系统、终端设备及计算机存储介质。
时下,应用于数据读写的存储器中配套有确保存储器正常完成数据读写的存储器管理算法,该存储器管理算法通常是由存储器的生产厂商在存储器出厂时统一配置的通用算法。但是,由于不同的用户针对存储器应用场景的不同,众多存储器基于通用的存储器管理算法无法在比较特殊的应用场景下保证最优的数据读写性能表现。
尽管现有技术中能够根据用户使用存储器的特殊场景,专门为用户定制设计一套能够令存储器在该特殊场景下发挥最优性能表现的管理算法,但是,一旦存在用户使用存储器的场景无法最终确定,则生产厂商则会直接选择为存储器配置通用的管理算法。
综上,现有生产厂商针对存储器配置通用的存储器管理算法,因为用户对存储器使用场景的特殊性,而无法保证存储器始终保持有数据读写的最优性能表现。
本申请的主要目的在于提供一种存储器管理算法的自适应调整方法、装置、终端设备及计算机存储介质,旨在解决现有技术中,生产厂商针对存储器配置通用的存储器管理算法,无法保证存储器始终保持有最优数据读写性能表现的技术问题。
为实现上述目的,本申请提供一种存储器管理算法的自适应调整方法,所述存储器管理算法的自适应调整方法包括:
持续采集存储器的数据读写特征;
根据所述数据读写特征从预设存储器管理算法中匹配所述存储器在预设应用时间周期的最优存储器管理算法;
在所述预设应用时间周期内将所述存储器当前应用的存储器管理算法调整至所述最优存储器管理算法。
进一步地,所述持续采集存储器的数据读写特征的步骤,包括:
在预设应用时间周期内的第一时间区段持续采集存储器的数据读写特征;
所述在预设应用时间周期内的第一时间区段持续采集存储器的数据读写特征的步骤包括:
持续检测所述存储器在所述预设应用时间周期的第一时间区段内接收到的数据读写任务;
基于所述存储器在所述第一时间区段内应用的存储器管理算法解析所述数据读写任务以采集得到所述数据读写特征。
进一步地,所述预设存储器管理算法为存储在所述存储器本端或者云端的多个存储器管理算法,所述云端与所述存储器通信连接,
所述根据所述数据读写特征从预设存储器管理算法中匹配所述存储器在预设应用时间周期的最优存储器管理算法的步骤,包括:
根据所述数据读写特征在所述存储器本端的多个存储器管理算法中,匹配在所述预设应用时间周期的第二时间区段内应用的最优存储器管理算法,其中,所述预设应用时间周期等于所述第一时间区段叠加所述第二时间区段;或者,
将所述数据读写特征上传至所述云端,以供所述云端根据所述数据读写特征在所述云端的多个存储器管理算法中,匹配在所述预设应用时间周期的第二时间区段内应用的最优存储器管理算法。
进一步地,所述根据所述数据读写特征从预设存储器管理算法中匹配所述存储器在预设应用时间周期的最优存储器管理算法的步骤,还包括:
根据所述数据读写特征确定所述存储器在所述预设应用时间周期内所处的应用场景;
将所述应用场景对应的目标存储器管理算法确定为所述存储器在所述第二时间区段内应用的最优存储器管理算法。
进一步地,在所述根据所述数据读写特征确定所述存储器在所述预设应用时间周期内所处的应用场景的步骤之后,还包括:
检测所述应用场景对应的目标存储器管理算法;
若未检测到所述目标存储器管理算法,则根据所述数据读写特征定制存储器管理算法,并将定制的存储器管理算法作为所述应用场景对应的目标存储器管理算法。
进一步地,在所述根据所述数据读写特征从预设存储器管理算法中匹配所述存储器在预设应用时间周期的最优存储器管理算法的步骤之后,还包括:
检测所述预设应用时间周期内所述存储器当前应用的第一存储器管理算法是否为所述最优存储器管理算法。
进一步地,所述在所述预设应用时间周期内将所述存储器当前应用的存储器管理算法调整至所述最优存储器管理算法的步骤,包括:
若检测到所述第一存储器管理算法不为所述最优存储器管理算法,则在本端将所述第一存储器管理算法切换至所述最优存储器管理算法;或者,
若检测到所述第一存储器管理算法不为所述最优存储器管理算法,则从预设云端下载所述最优存储器管理算法并将所述第一存储器管理算法切换至所述最优存储器管理算法。
此外,为实现上述目的,本申请还提供一种存储器管理算法的自适应调整系统,所述存储器管理算法的自适应调整系统包括:
采集模块,用于持续采集存储器的数据读写特征;
匹配模块,用于根据所述数据读写特征从预设存储器管理算法中匹配所述存储器在预设应用时间周期的最优存储器管理算法;
调整模块,用于在所述预设应用时间周期内将所述存储器当前应用的存储器管理算法调整至所述最优存储器管理算法。
本申请存储器管理算法的自适应调整系统的各功能模块在运行时实现如上述中的存储器管理算法的自适应调整方法的步骤。
此外,为实现上述目的,本申请还提供一种终端设备,所述终端设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的存储器管理算法的自适应调整程序,所述存储器管理算法的自适应调整程序被所述处理器执行时实现如上述中的存储器管理算法的自适应调整方法的步骤。
此外,为实现上述目的,本申请还提供一种计算机存储介质,所述计算机存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述的存储器管理算法的自适应调整方法的步骤。
本申请提出的存储器管理算法的自适应调整方法、系统、终端设备以及计算机存储介质,通过持续采集存储器的数据读写特征;根据所述数据读写特征从预设存储器管理算法中匹配所述存储器在预设应用时间周期的最优存储器管理算法;在所述预设应用时间周期内将所述存储器当前应用的存储器管理算法调整至所述最优存储器管理算法。
本申请通过在存储器的使用过程中,按照预设应用时间周期自该预设应用时间周期的开始时间节点及针对存储器执行数据读写进行持续的数据读写特征采集,然后,基于采集到存储器在该预设应用时间周期内的数据读写特征,在预设存储器管理算法当中匹配出一个适用该存储器以令该存储器在当前预设应用时间周期内,能够获得高性能表现的最优存储器管理算法,最后,在当前的预设应用时间周期以内,将该存储器当前正在应用的存储器管理算法切换调整至匹配出的最优存储器管理算法,以供存储器应用该最优存储器管理算法直至下一个预设应用时间周期的开始时间节点。
相比于现有仅在存储器上配置通用的存储器管理算法或者预先根据用户指定的存储器应用场景来专门为该存储器定制一个存储器管理算法的方式,本申请基于在采集存储器在使用过程中执行数据读写的数据读写特征,然后基于该数据读写特征自适应的匹配能够令存储器在当前应用环境下达到高性能表现的最优存储器管理算法,如此,不仅解决了针对存储器配置通用的存储器管理算法无法保证存储器保持最优的数据读写性能表现的问题,还节省了基于特定应用场景单独定制生产存储器带来的存储器高昂的生产指导成本和规避了该存储器使用环境的局限性。
图1是本申请实施例方案涉及终端设备的硬件运行的结构示意图;
图2是本申请一种存储器管理算法的自适应调整方法一实施例的流程示意图;
图3是本申请一种存储器管理算法的自适应调整方法一实施例中步骤S200的细化流程示意图;
图4是本申请一种存储器管理算法的自适应调整系统的模块结构示意图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
如图1所示,图1是本申请实施例方案涉及终端设备的硬件运行环境的结构示意图。
需要说明的是,图1即可为终端设备的硬件运行环境的结构示意图。本申请实施例终端设备可以是数据存储控制终端,PC,便携计算机等终端设备。
如图1所示,该终端设备可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的终端设备结构并不构成对终端设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及分布式任务的处理程序。其中,操作系统是管理和控制样本终端设备硬件和软件资源的程序,支持分布式任务的处理程序以及其它软件或程序的运行。
在图1所示的终端设备中,用户接口1003主要用于与各个终端进行数据通信;网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;而处理器1001可以用于调用存储器1005中存储的存储器管理算法的自适应调整程序,并执行以下操作:
检测数据存储介质的状态信息,其中,所述状态信息包括:坏物理块分布状态和物理块可用状态;
持续采集存储器的数据读写特征;
根据所述数据读写特征从预设存储器管理算法中匹配所述存储器在预设应用时间周期的最优存储器管理算法;
在所述预设应用时间周期内将所述存储器当前应用的存储器管理算法调整至所述最优存储器管理算法。
进一步地,处理器1001可以调用存储器1005中存储的存储器管理算法的自适应调整程序,还执行以下操作:
在预设应用时间周期内的第一时间区段持续采集存储器的数据读写特征;
处理器1001可以调用存储器1005中存储的存储器管理算法的自适应调整程序,还执行以下操作:
持续检测所述存储器在所述预设应用时间周期的第一时间区段内接收到的数据读写任务;
基于所述存储器在所述第一时间区段内应用的存储器管理算法解析所述数据读写任务以采集得到所述数据读写特征。
进一步地,所述预设存储器管理算法为存储在所述存储器本端或者云端的多个存储器管理算法,所述云端与所述存储器通信连接,处理器1001可以调用存储器1005中存储的存储器管理算法的自适应调整程序,还执行以下操作:
根据所述数据读写特征在所述存储器本端的多个存储器管理算法中,匹配在所述预设应用时间周期的第二时间区段内应用的最优存储器管理算法,其中,所述预设应用时间周期等于所述第一时间区段叠加所述第二时间区段;或者,
将所述数据读写特征上传至所述云端,以供所述云端根据所述数据读写特征在所述云端的多个存储器管理算法中,匹配在所述预设应用时间周期的第二时间区段内应用的最优存储器管理算法。
进一步地,处理器1001可以调用存储器1005中存储的存储器管理算法的自适应调整程序,还执行以下操作:
根据所述数据读写特征确定所述存储器在所述预设应用时间周期内所处的应用场景;
将所述应用场景对应的目标存储器管理算法确定为所述存储器在所述第二时间区段内应用的最优存储器管理算法。
进一步地,处理器1001可以调用存储器1005中存储的存储器管理算法的自适应调整程序,在执行根据所述数据读写特征确定所述存储器在所述预设应用时间周期内所处的应用场景之后,还执行以下操作:
检测所述应用场景对应的目标存储器管理算法;
若未检测到所述目标存储器管理算法,则根据所述数据读写特征定制存储器管理算法,并将定制的存储器管理算法作为所述应用场景对应的目标存储器管理算法。
进一步地,处理器1001可以调用存储器1005中存储的存储器管理算法的自适应调整程序,在执行根据所述数据读写特征从预设存储器管理算法中匹配所述存储器在预设应用时间周期的最优存储器管理算法之后,还执行以下操作:
检测所述预设应用时间周期内所述存储器当前应用的第一存储器管理算法是否为所述最优存储器管理算法。
进一步地,处理器1001可以调用存储器1005中存储的存储器管理算法的自适应调整程序,还执行以下操作:
若检测到所述第一存储器管理算法不为所述最优存储器管理算法,则在本端将所述第一存储器管理算法切换至所述最优存储器管理算法;或者,
若检测到所述第一存储器管理算法不为所述最优存储器管理算法,则从预设云端下载所述最优存储器管理算法并将所述第一存储器管理算法切换至所述最优存储器管理算法。
基于上述的结构,提出本申请存储器管理算法的自适应调整方法的各个实施例。
请参照图2,图2为本申请存储器管理算法的自适应调整方法第一实施例的流程示意图。
本申请实施例提供了存储器管理算法的自适应调整方法的实施例,需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请实施例存储器管理算法的自适应调整方法应用于上述对数据存储进行控制的终端设备,本申请实施例终端设备可以是数据存储介质本身,数据存储控制终端,PC,便携计算机等终端设备,在此不做具体限制。
本实施例存储器管理算法的自适应调整方法包括:
步骤S100,持续采集存储器的数据读写特征;
需要说明的是,在本实施例中,所述数据读写特征具体可以包括:读取数据的比重、存写数据的比重、读写数据的数据量大小以及读写数据的数据冷热状态。应当理解的是,基于实际应用的不同设计需要,在其他实施方式当中该数据读写特征当然也可以包括其他类型的特征,本申请实施例存储器管理算法的自适应调整方法,并不对数据读写特征的种类以及数量进行具体限定。
当前用于对数据读写进行控制的终端设备,在控制存储器执行数据读写的过程中,按照预设应用时间周期,自该预设应用时间周期的开始时间节点就持续的采集该存储器执行数据读写任务的读取数据的比重、存写数据的比重、读写数据的数据量大小或者读写数据的数据冷热状态等数据读写特征。
需要说明的是,在本实施例中,预设应用时间周期具体可以为终端设备基于工作人员预先通过前端可视化输出的用户图形界面所输入的配置来设置的、一个针对存储器在存储器管理算法-FTL算法(为便于描述和理解,下文具体实施举例中的存储器管理算法均直接以“FTL算法”来代替进行说明)下的数据读写特征进行循环采集的时间周期,终端设备通过读取系统时间来判断是否到达了下一个时间周期的开始时间节点,并在判断到是时开始持续的采集存储器在其当前所应用存储器管理算法下执行数据存储任务而存在的各种数据读写特征。
进一步地,在一种可行的实施例中,上述步骤S100,持续采集存储器的数据读写特征,可以包括:
步骤S101,在预设应用时间周期内的第一时间区段持续采集存储器的数据读写特征。
终端设备自每一个预设应用时间周期的开始时间节点起,在第一时间区段内先持续的采集存储器基于当前应用的存储器管理算法执行数据读写任务时,所存在的读取数据的比重或者存写数据的比重、读写数据的数据量大小以及读写数据的数据冷热状态等数据读写特征。
进一步地,在一种可行的实施例中,步骤S101,可以包括:
步骤S1011,持续检测所述存储器在所述预设应用时间周期的第一时间区段内接收到的数据读写任务;
终端设备通过检测当前的系统时间达到下一个预设应用时间周期的开始时间节点之后,开始在该预设应用时间周期的第一时间区段内,持续的检测从与存储器相连接的数据拥有方所下发的数据读写任务。
具体地,例如,在本实施例中,终端设备基于工作人员预设输入的配置操作将预设应用时间周期设置为每天的上午09:00至晚上23:59,则终端设备在每天检测到当前的系统时间到达09:00时,即到达了该应用时间周期“上午09:00至晚上23:59”的开始时间节点时,随即开始在该应用时间周期的第一时间区段-“上午09:00至上午10:00”内,持续的检测与当前控制的存储器相连接的数据拥有方-host方所下发的数据读写任务。
需要说明的是,在本实施例中,预设应用时间周期的第一时间区段可以根据实际使用的具体需要进行设置,如,基于终端设备采集分析存储器数据读写特征的性能高低,对应设置该第一时间区段占该预设应用时间周期的整体比例大小,即,性能高则对应占比较小而性能低则占比较大。应当理解的是,基于实际应用的不同设计需要,在其他可行的实施方式当中,预设应用时间周期当然也可以设置为不同于本实施例中所举例阐述的其他时间周期,本申请实施例存储器管理算法的自适应调整方法,并不针对该预设应用时间周期的具体时长等进行限定。
此外,本实施例中,数据拥有方向存储器下发的数据读写任务具体可以是数据存储任务或者数据读取任务,存储器具体可以为任意成熟的SSD(Solid State
Disk或Solid State Drive)固态硬盘或者其他机械硬盘,应当理解的是,基于实际应用的不同设计需要,在其他可行的实施方式中,该数据读写任务当然也可以是其他不同于本实施例所举例进行说明的任务,该存储器当然也可以是其他不同于本实施例所举例进行说明的存储器,本申请实施例存储器管理算法的自适应调整方法,并不对该数据读写任务以及存储器的类型进行具体限定。
步骤S1012,基于所述存储器在所述第一时间区段内应用的存储器管理算法解析所述数据读写任务以采集得到所述数据读写特征。
终端设备在持续检测从与存储器相连接的数据拥有方所下发的数据读写任务的过程中,针对每一次检测到的数据读写任务,均利用存储器在预设应用时间周期的第一时间内所正在应用的存储器管理算法,直接解析该数据读写任务以采集得到读取数据的比重、存写数据的比重、读写数据的数据量大小或者读写数据的数据冷热状态等数据读写特征。
具体地,例如,在本实施例中,终端设备在应用时间周期“上午09:00至晚上23:59”的开始时间节点,检测到了数据拥有方-host方向存储器下发的数据读写任务,从而终端设备通过该存储器在当前时间节点正在应用的FTL算法1,基于现有成熟的数据任务解析方式,解析该数据读写任务为数据存储任务还是数据读取任务、以及该数据读写任务中所指示的待读写数据的数据量大小、数据冷热状态等数据读写特征。
步骤S200,根据所述数据读写特征从预设存储器管理算法中匹配所述存储器在预设应用时间周期的最优存储器管理算法;
需要说明的是,在本实施例中,预设存储器管理算法的数量可以为多个,且不同的预设存储器管理算法在被应用于存储器时,能够令存储器针对数据读写面向不同数据读写特征表现出较优的性能,例如,预设FTL算法1,能够在存储器存在存写数据的比重较大的数据读写特征时,将存储器整体用于数据读写的运行进程侧重于数据的存写,从而使存储器针对在该存写数据的比重较大时,能够表现出执行数据读写的更高性能(如,更加快速的完成整体数据存写)。
终端设备持续的采集到存储器执行数据读写任务的读取数据的比重、存写数据的比重、读写数据的数据量大小或者读写数据的数据冷热状态等数据读写特征之后,随即从多个预设存储器管理算法中匹配出一个能够使存储器执行具有该数据读写特征的数据读写任务,而表现出数据读写最优性能的最优存储器管理算法。
进一步地,在一种可行的实施例中,所述预设存储器管理算法为存储在所述存储器本端或者云端的多个存储器管理算法,所述云端与所述存储器通信连接,请参照图3,上述步骤S200,可以包括:
步骤S201,根据所述数据读写特征在所述存储器本端的多个存储器管理算法中,匹配在所述预设应用时间周期的第二时间区段内应用的最优存储器管理算法,其中,所述预设应用时间周期等于所述第一时间区段叠加所述第二时间区段;
终端设备在预设应用时间周期的第一时间区段持续采集到存储器当前执行数据读写任务所存在的数据读写特征之后,终端设备随即控制存储器在本端所存储的多个存储器管理算法当中,匹配出一个能够使存储器在该预设应用时间周期接下来的第二时间区段内执行具有该数据读写特征的数据读写任务,而表现出数据读写最优性能的最优存储器管理算法。
需要说明的是,在本实施例中,第一时间区段叠加第二时间区段即等于整个预设应用时间周期,例如,预设应用时间周期被设置为“上午09:00至晚上23:59”且第一时间区段为“上午09:00至上午10:00”,则第二时间区段即为“上午10:01至晚上23:59”。
具体地,例如,在本实施例中,终端设备通过在预设应用时间周期-上午09:00至晚上23:59的第一时间区段-上午09:00至上午10:00内,检测数据拥有方向存储器下发的数据读写任务并确定出在当前应用时间周期-上午09:00至晚上23:59内,存储器执行数据读写任务存在存写数据的比重较大的数据读写特征,从而,终端设备随即向存储器下发控制指令,以令存储器在本端所存储的FTL算法2、FTL算法3、FTL算法4以及FTL算法5中,匹配出一个能够令存储器在该应用时间周期-上午09:00至晚上23:59的第二时间区段-上午10:01至晚上23:59内,执行数据拥有方-host方下发的数据读写任务时,整体运行将侧重于数据存储从而能够更加快速高效的完成该数据读写任务的最优存储器管理算法(如FTL算法3)。
步骤S202,将所述数据读写特征上传至所述云端,以供所述云端根据所述数据读写特征在所述云端的多个存储器管理算法中,匹配在所述预设应用时间周期的第二时间区段内应用的最优存储器管理算法。
需要说明的是,在本实施例中,所述云端具体可以为任意与存储器及终端设备本身进行通信连接的服务器或者其他终端。终端设备除了可以在存储器本端即存储有多个预设存储器管理算法的情形下,控制存储器在本端进行最优存储器管理算法的匹配过程,终端设备还可以在与存储器相连接的云端存储多个预设存储器管理算法的情形下,控制该云端执行最优存储器管理算法的匹配过程。
终端设备在预设应用时间周期的第一时间区段持续采集到存储器当前执行数据读写任务所存在的数据读写特征之后,终端设备随即控制与存储器通信连接的云端,在该云端所存储的多个存储器管理算法当中,匹配出一个能够使存储器在该预设应用时间周期接下来的第二时间区段内执行具有该数据读写特征的数据读写任务,而表现出数据读写最优性能的最优存储器管理算法。
具体地,例如,在本实施例中,终端设备通过在预设应用时间周期-上午09:00至晚上23:59的第一时间区段-上午09:00至上午10:00内,检测数据拥有方向存储器下发的数据读写任务并确定出在当前应用时间周期-上午09:00至晚上23:59内,存储器执行数据读写任务存在存写数据的比重较大的数据读写特征,从而,终端设备随即向与存储器建立通信连接的云端下发携带有该数据读写特征的控制指令,以令云端在所存储的FTL算法2、FTL算法3、FTL算法4以及FTL算法5中,匹配出一个能够令存储器在该应用时间周期-上午09:00至晚上23:59的第二时间区段-上午10:01至晚上23:59内,执行数据拥有方-host方下发的数据读写任务时,整体运行将侧重于数据存储从而能够更加快速高效的完成该数据读写任务的最优存储器管理算法(如FTL算法3)。
步骤S300,在所述预设应用时间周期内将所述存储器当前应用的存储器管理算法调整至所述最优存储器管理算法。
终端设备在从多个预设存储器管理算法中匹配出能够使存储器执行具有该数据读写特征的数据读写任务,而表现出数据读写最优性能的最优存储器管理算法之后,进一步将当前预设应用时间周期内存储器当前正在应用的存储器管理算法,切换调整至已经匹配出的该最优存储器管理算法,从而使得该存储器在该预设应用时间周期内针对接收到的数据读写任务能够表现出最优的数据读写性能。
进一步地,在一种可行的实施例中,在上述步骤S200,在所述预设应用时间周期内将所述存储器当前应用的存储器管理算法调整至所述最优存储器管理算法之后,本申请实施例存储器管理算法的自适应调整方法,还可以包括:
步骤S400,检测所述预设应用时间周期内所述存储器当前应用的第一存储器管理算法是否为所述最优存储器管理算法。
终端设备在从多个预设存储器管理算法中匹配出能够使存储器执行具有该数据读写特征的数据读写任务,而表现出数据读写最优性能的最优存储器管理算法之后,优先检测该存储器在当前预设应用时间周期的第一时间区段内正在应用的第一存储器管理算法是否为确定的最优存储器管理算法。
具体地,例如,在本实施例中,终端设备通过在预设应用时间周期-上午09:00至晚上23:59的第一时间区段-上午09:00至上午10:00内,检测到存储器执行数据读写任务存在存写数据的比重较大的数据读写特征,从而控制存储器在本端所存储的FTL算法2、FTL算法3、FTL算法4以及FTL算法5中,匹配出FTL算法3作为最优存储器管理算法之后,终端设备随即检测到存储器在第一时间区段-上午09:00至上午10:00内正在应用的第一FTL算法是否为该FTL算法3。
进一步地,在一种可行的实施例中,上述步骤S300,在所述预设应用时间周期内将所述存储器当前应用的存储器管理算法调整至所述最优存储器管理算法,可以包括:
步骤S301,若检测到所述第一存储器管理算法不为所述最优存储器管理算法,则在本端将所述第一存储器管理算法切换至所述最优存储器管理算法;
终端设备在检测存储器在当前预设应用时间周期的第一时间区段内正在应用的第一存储器管理算法是否为确定的最优存储器管理算法时,若检测到该第一存储器管理算法不是确定好的最优存储器管理算法,则终端设备随即控制存储器在本端直接将该第一存储器管理算法切换调整至最优存储器管理算法,从而使存储器在该预设应用时间周期的第二时间区段内针对接收到的数据读写任务能够表现出最优的数据读写性能。
具体地,例如,在本实施例中,若终端设备检测到存储器在第一时间区段-上午09:00至上午10:00内正在应用的第一FTL算法为:FTL算法1,即该第一FTL算法-FTL算法1并不是终端设备控制存储器在本端的FTL算法2、FTL算法3、FTL算法4以及FTL算法5中,根据存写数据的比重较大的数据读写特征来匹配出的最优存储器管理算法-FTL算法3,从而,终端设备立即控制存储器在本端停止正在应用的第一FTL算法-FTL算法1,并切换应用该最优存储器管理算法-FTL算法3,以令存储器在该应用时间周期-上午09:00至晚上23:59的第二时间区段-上午10:01至晚上23:59内,基于该FTL算法的管理,能够在执行数据拥有方-host方下发的数据读写任务时,将整体运行侧重于数据存储从而更加快速高效的完成该数据读写任务。
需要说明的是,在本实施例中,终端设备在检测第一存储器管理算法为FTL算法1,而不是确定好的最优存储器管理算法--FTL算法3,终端设备还可以在存储器通过应用FTL算法1执行完当前正在执行的数据读写任务之后,再停止FTL算法1,并切换应用该最优存储器管理算法-FTL算法3。
步骤S302,若检测到所述第一存储器管理算法不为所述最优存储器管理算法,则从预设云端下载所述最优存储器管理算法并将所述第一存储器管理算法切换至所述最优存储器管理算法。
终端设备在检测存储器在当前预设应用时间周期的第一时间区段内正在应用的第一存储器管理算法是否为确定的最优存储器管理算法时,若检测到该第一存储器管理算法不是确定好的最优存储器管理算法,则终端设备随即控制存储器从与存储器建立通信连接的云端下载最优存储器管理算法,然后将第一存储器管理算法切换调整至最优存储器管理算法,从而使存储器在该预设应用时间周期的第二时间区段内针对接收到的数据读写任务能够表现出最优的数据读写性能。
具体地,例如,在本实施例中,若终端设备检测到存储器在第一时间区段-上午09:00至上午10:00内正在应用的第一FTL算法为:FTL算法1,即该第一FTL算法-FTL算法1并不是终端设备控制与存储器相连接的云端,从FTL算法2、FTL算法3、FTL算法4以及FTL算法5中,根据存写数据的比重较大的数据读写特征来匹配出的最优存储器管理算法-FTL算法3,从而,终端设备控制存储器在本端停止正在应用的第一FTL算法-FTL算法1,并向与该存储器通信连接的云端上传服务请求以下载最优存储器管理算法-FTL算法3,待下载完毕之后即切换应用该最优存储器管理算法-FTL算法3,以令存储器在该应用时间周期-上午09:00至晚上23:59的第二时间区段-上午10:01至晚上23:59内,基于该FTL算法的管理,能够在执行数据拥有方-host方下发的数据读写任务时,将整体运行侧重于数据存储从而更加快速高效的完成该数据读写任务。
在本实施例中,当前用于对数据读写进行控制的终端设备,在控制存储器执行数据读写的过程中,按照预设应用时间周期,自该预设应用时间周期的开始时间节点就持续的采集该存储器执行数据读写任务的读取数据的比重、存写数据的比重、读写数据的数据量大小或者读写数据的数据冷热状态等数据读写特征;终端设备持续的采集到存储器执行数据读写任务的读取数据的比重、存写数据的比重、读写数据的数据量大小或者读写数据的数据冷热状态等数据读写特征之后,随即从多个预设存储器管理算法中匹配出一个能够使存储器执行具有该数据读写特征的数据读写任务,而表现出数据读写最优性能的最优存储器管理算法;终端设备在从多个预设存储器管理算法中匹配出能够使存储器执行具有该数据读写特征的数据读写任务,而表现出数据读写最优性能的最优存储器管理算法之后,进一步将当前预设应用时间周期内存储器当前正在应用的存储器管理算法,切换调整至已经匹配出的该最优存储器管理算法,从而使得该存储器在该预设应用时间周期内针对接收到的数据读写任务能够表现出最优的数据读写性能。
从而,本申请通过在存储器的使用过程中,按照预设应用时间周期自该预设应用时间周期的开始时间节点及针对存储器执行数据读写进行持续的数据读写特征采集,然后,基于采集到存储器在该预设应用时间周期内的数据读写特征,在预设存储器管理算法当中匹配出一个适用该存储器以令该存储器在当前预设应用时间周期内,能够获得高性能表现的最优存储器管理算法,最后,在当前的预设应用时间周期以内,将该存储器当前正在应用的存储器管理算法切换调整至匹配出的最优存储器管理算法,以供存储器应用该最优存储器管理算法直至下一个预设应用时间周期的开始时间节点。
相比于现有仅在存储器上配置通用的存储器管理算法或者预先根据用户指定的存储器应用场景来专门为该存储器定制一个存储器管理算法的方式,本申请基于在采集存储器在使用过程中执行数据读写的数据读写特征,然后基于该数据读写特征自适应的匹配能够令存储器在当前应用环境下达到高性能表现的最优存储器管理算法,如此,不仅解决了针对存储器配置通用的存储器管理算法无法保证存储器保持最优的数据读写性能表现的问题,还节省了基于特定应用场景单独定制生产存储器带来的存储器高昂的生产指导成本和规避了该存储器使用环境的局限性。
进一步地,基于上述本申请存储器管理算法的自适应调整方法的第一实施例,提出本申请存储器管理算法的自适应调整方法的第二实施例,在本申请存储器管理算法的自适应调整方法的第二实施例中,上述步骤S200,根据所述数据读写特征从预设存储器管理算法中匹配所述存储器在预设应用时间周期的最优存储器管理算法,还可以包括:
步骤S203,根据所述数据读写特征确定所述存储器在所述预设应用时间周期内所处的应用场景;
需要说明的是,在本实施例中,应用场景具体可以为预先根据工作人员输入的配置操作而自主定义的、与存储器执行数据读写任务所存在的数据读写特征相对应的应用场景,例如,工作人员可以预先根据存写数据的比重较大,而对应配置存储器主要用于数据存储的应用场景-行车记录仪存储实时录像数据,以及,工作人员还可以预先根据读取数据的比重较大,而对应配置存储器主要用于数据读取的应用场景-系统服务器基于客户端请求分发处理数据等。应当理解的是,基于实际应用的不同设计需要,在其他可行的实施方式中,终端设备当然也可以根据工作人员输入的配置操作定义配置其他不同于本实施例所列举说明的应用场景,本申请实施例存储器管理算法的自适应调整方法并不针对该应用场景的数量和类型等进行具体限定。
终端设备在预设应用时间周期的第一时间区段持续采集到存储器当前执行数据读写任务所存在的数据读写特征之后,确定预先配置的应用场景中,与该数据读写特征相对应的应用场景,并将该应用场景确定为存储器在当前预设时间周期内所处的应用场景。
具体地,例如,在本实施例中,终端设备将预先由工作人员基于读取数据的比重、存写数据的比重、读写数据的数据量大小或者读写数据的数据冷热状态等数据读写特征,而自主定义配置的各数据读写特征相对应的应用场景,生成一个数据读写特征与应用场景之间的对应关系列表,然后,在终端设备通过在预设应用时间周期-上午09:00至晚上23:59的第一时间区段-上午09:00至上午10:00内,检测数据拥有方向存储器下发的数据读写任务并确定出在当前应用时间周期-上午09:00至晚上23:59内,存储器执行数据读写任务存在存写数据的比重较大的数据读写特征之后,遍历该对应关系列表从而确定出该存储数据的比重比较大的数据读写特征所对应的应用场景为:行车记录仪存储实时录像数据,并且,终端设备将该应用场景-行车记录仪存储实时录像数据确定为存储器在应用时间周期-上午09:00至晚上23:59所处的应用场景。
步骤S204,将所述应用场景对应的目标存储器管理算法确定为所述存储器在所述第二时间区段内应用的最优存储器管理算法。
终端设备在从预先配置的应用场景中,确定出与采集到的数据读写特征相对应的应用场景,并将该应用场景确定为存储器在当前预设时间周期内所处的应用场景之后,终端设备随即根据预先建立的应用场景与存储器管理算法之间的对应关系,将各存储器管理算法中与存储器在当前预设时间周期内所处的应用场景相对应的目标存储器管理算法,确定为能够使存储器在该预设应用时间周期接下来的第二时间区段内执行具有该数据读写特征的数据读写任务,而表现出数据读写最优性能的最优存储器管理算法。
具体地,例如,在本实施例中,终端设备在将预先由工作人员基于读取数据的比重、存写数据的比重、读写数据的数据量大小或者读写数据的数据冷热状态等数据读写特征,而自主定义配置的各数据读写特征相对应的应用场景,生成数据读写特征与应用场景之间的对应关系列表的同时,同步在该对应关系列表中为各应用场景添加上一个对应的能够使存储器在该应用场景中,针对数据读写任务的执行能够获得最优性能表现的FTL算法。然后,在通过遍历对应关系列表确定出与存写数据的比重比较大的数据读写特征所对应的应用场景为:行车记录仪存储实时录像数据,并将该应用场景-行车记录仪存储实时录像数据确定为存储器在应用时间周期-上午09:00至晚上23:59所处的应用场景之后,继续从该对应关系列表中检测与该应用场景-行车记录仪存储实时录像数据相对应的目标FTL算法为:FTL算法3,从而,终端设备将该FTL算法3确定为令存储器在该应用时间周期-上午09:00至晚上23:59的第二时间区段-上午10:01至晚上23:59内,执行数据拥有方-host方下发的数据读写任务时,整体运行将侧重于数据存储从而能够更加快速高效的完成该数据读写任务的最优存储器管理算法。
进一步地,在一种可行的实施例中,在上述步骤S203,根据所述数据读写特征确定所述存储器在所述预设应用时间周期内所处的应用场景之后,本申请实施例存储器管理算法的自适应调整方法,还可以包括:
步骤S205,检测所述应用场景对应的目标存储器管理算法;
步骤S206,若未检测到所述目标存储器管理算法,则根据所述数据读写特征定制存储器管理算法,并将定制的存储器管理算法作为所述应用场景对应的目标存储器管理算法;
终端设备在从预先配置的应用场景中,确定出与采集到的数据读写特征相对应的应用场景,并将该应用场景确定为存储器在当前预设时间周期内所处的应用场景之后,随即根据预先建立的应用场景与存储器管理算法之间的对应关系,从各存储器管理算法中检测与存储器在当前预设时间周期内所处的应用场景相对应的目标存储器管理算法,若终端设备在此时未检测到该目标存储器管理算法,则终端设备随即自动或者基于工作人员输入配置操作,来定制一个能够使存储器在该预设应用时间周期接下来的第二时间区段内执行具有该数据读写特征的数据读写任务,而表现出数据读写最优性能的存储器管理算法,并将定制得到的该存储器管理算法确定为应用场景对应的目标存储器管理算法。
本实施例中,通过终端设备在预设应用时间周期的第一时间区段持续采集到存储器当前执行数据读写任务所存在的数据读写特征之后,确定预先配置的应用场景中,与该数据读写特征相对应的应用场景,并将该应用场景确定为存储器在当前预设时间周期内所处的应用场景,根据预先建立的应用场景与存储器管理算法之间的对应关系,将各存储器管理算法中与存储器在当前预设时间周期内所处的应用场景相对应的目标存储器管理算法,确定为能够使存储器在该预设应用时间周期接下来的第二时间区段内执行具有该数据读写特征的数据读写任务,而表现出数据读写最优性能的最优存储器管理算法。
实现了,预先基于采集存储器执行数据读写任务存在的数据读写特征,建立数据读写特征与存储器所处应用场景以及应用场景与最优存储器管理算法之间的对应关系,从而,在存储器的使用过程中,基于持续采集存储器执行数据读写任务存在的数据读写特征,基于该数据读写特征匹配出适用该存储器以令该存储器在当前预设应用时间周期的应用场景内,能够获得高性能表现的最优存储器管理算法,以令存储器自动的将当前正在应用的存储器管理算法切换调整至匹配出的最优存储器管理算法。
相比于现有仅在存储器上配置通用的存储器管理算法或者预先根据用户指定的存储器应用场景来专门为该存储器定制一个存储器管理算法的方式,本申请基于在采集存储器在使用过程中执行数据读写的数据读写特征,然后基于该数据读写特征自适应的匹配能够令存储器在当前应用环境下达到高性能表现的最优存储器管理算法,如此,不仅解决了针对存储器配置通用的存储器管理算法无法保证存储器保持最优的数据读写性能表现的问题,还节省了基于特定应用场景单独定制生产存储器带来的存储器高昂的生产指导成本和规避了该存储器使用环境的局限性。
此外,在终端设备预先未针对数据读写特征对应的应用场景定制开发能够使存储器达到高性能表现的最优存储器管理算法,从而终端设备无法根据应用场景与存储算法之间的对应关系来确定存储器在当前应用时间周期内的最优存储算法时,终端设备随即自动或者基于工作人员操作即时的定制出该存储器在该应用场景下执行具有该数据读写特征的数据读写任务,而表现出数据读写最优性能的存储器管理算法,以令存储器在后续应用该定制出的存储器管理算法保持最优的数据读写性能表现。如此,提高了对于存储器管理算法进行自适应调整的智能性。
此外,请参照图4,本申请实施例还提出一种存储器管理算法的自适应调整系统,该存储器管理算法的自适应调整系统,包括:
采集模块,用于持续采集存储器的数据读写特征;
匹配模块,用于根据所述数据读写特征从预设存储器管理算法中匹配所述存储器在预设应用时间周期的最优存储器管理算法;
调整模块,用于在所述预设应用时间周期内将所述存储器当前应用的存储器管理算法调整至所述最优存储器管理算法。
在一实施例中,所述采集模块还用于:在预设应用时间周期内的第一时间区段持续采集存储器的数据读写特征;
所述采集模块,包括:
第一检测单元,用于持续检测所述存储器在所述预设应用时间周期的第一时间区段内接收到的数据读写任务;
解析采集单元,用于基于所述存储器在所述第一时间区段内应用的存储器管理算法解析所述数据读写任务以采集得到所述数据读写特征。
在一实施例中,所述预设存储器管理算法为存储在所述存储器本端或者云端的多个存储器管理算法,所述云端与所述存储器通信连接,所述匹配模块,包括:
第一匹配单元,用于根据所述数据读写特征在所述存储器本端的多个存储器管理算法中,匹配在所述预设应用时间周期的第二时间区段内应用的最优存储器管理算法,其中,所述预设应用时间周期等于所述第一时间区段叠加所述第二时间区段;
第二匹配单元,用于将所述数据读写特征上传至所述云端,以供所述云端根据所述数据读写特征在所述云端的多个存储器管理算法中,匹配在所述预设应用时间周期的第二时间区段内应用的最优存储器管理算法。
在一实施例中,所述匹配模块,还包括:
场景确定单元,用于根据所述数据读写特征确定所述存储器在所述预设应用时间周期内所处的应用场景;
第三匹配单元,用于将所述应用场景对应的目标存储器管理算法确定为所述存储器在所述第二时间区段内应用的最优存储器管理算法。
在一实施例中,所述匹配模块,还包括:
第二检测单元,用于检测所述应用场景对应的目标存储器管理算法;
算法定制单元,用于若未检测到所述目标存储器管理算法,则根据所述数据读写特征定制存储器管理算法,并将定制的存储器管理算法作为所述应用场景对应的目标存储器管理算法。
在一实施例中,本申请实施例存储器管理算法的自适应调整系统,还包括:
检测模块,用于检测所述预设应用时间周期内所述存储器当前应用的第一存储器管理算法是否为所述最优存储器管理算法。
在一实施例中,所述调整模块,包括:
第一自适应调整单元,用于若检测到所述第一存储器管理算法不为所述最优存储器管理算法,则在本端将所述第一存储器管理算法切换至所述最优存储器管理算法;
第二自适应调整单元,用于若检测到所述第一存储器管理算法不为所述最优存储器管理算法,则从预设云端下载所述最优存储器管理算法并将所述第一存储器管理算法切换至所述最优存储器管理算法。
其中,本申请数据存储装置的各功能模块在运行时所实现的步骤,可参照上述本申请数据存储装置方法的各个三实施例,此处不再赘述。
此外,本申请实施例还提出一种终端设备,该终端设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的存储器管理算法的自适应调整程序,该存储器管理算法的自适应调整程序被所述处理器执行时实现如上述中的存储器管理算法的自适应调整方法的步骤。
其中,在所述处理器上运行的存储器管理算法的自适应调整程序被执行时所实现的步骤可参照本申请存储器管理算法的自适应调整方法的各个实施例,此处不再赘述。
此外,本申请实施例还提出一种计算机存储介质,应用于计算机,该计算机存储介质可以为非易失性计算机可读计算机存储介质,该计算机存储介质上存储有存储器管理算法的自适应调整程序,所述存储器管理算法的自适应调整程序被处理器执行时实现如上所述的存储器管理算法的自适应调整方法的步骤。
其中,在所述处理器上运行的存储器管理算法的自适应调整程序被执行时所实现的步骤可参照本申请存储器管理算法的自适应调整方法的各个实施例,此处不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个计算机存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。
以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (10)
- 一种存储器管理算法的自适应调整方法,其中,所述存储器管理算法的自适应调整方法包括:持续采集存储器的数据读写特征;根据所述数据读写特征从预设存储器管理算法中匹配所述存储器在预设应用时间周期的最优存储器管理算法;在所述预设应用时间周期内将所述存储器当前应用的存储器管理算法调整至所述最优存储器管理算法。
- 如权利要求1所述的存储器管理算法的自适应调整方法,其中,所述持续采集存储器的数据读写特征的步骤,包括:在预设应用时间周期内的第一时间区段持续采集存储器的数据读写特征;所述在预设应用时间周期内的第一时间区段持续采集存储器的数据读写特征的步骤包括:持续检测所述存储器在所述预设应用时间周期的第一时间区段内接收到的数据读写任务;基于所述存储器在所述第一时间区段内应用的存储器管理算法解析所述数据读写任务以采集得到所述数据读写特征。
- 如权利要求2所述的存储器管理算法的自适应调整方法,其中,所述预设存储器管理算法为存储在所述存储器本端或者云端的多个存储器管理算法,所述云端与所述存储器通信连接,所述根据所述数据读写特征从预设存储器管理算法中匹配所述存储器在预设应用时间周期的最优存储器管理算法的步骤,包括:根据所述数据读写特征在所述存储器本端的多个存储器管理算法中,匹配在所述预设应用时间周期的第二时间区段内应用的最优存储器管理算法,其中,所述预设应用时间周期等于所述第一时间区段叠加所述第二时间区段;或者,将所述数据读写特征上传至所述云端,以供所述云端根据所述数据读写特征在所述云端的多个存储器管理算法中,匹配在所述预设应用时间周期的第二时间区段内应用的最优存储器管理算法。
- 如权利要求3所述的存储器管理算法的自适应调整方法,其中,所述根据所述数据读写特征从预设存储器管理算法中匹配所述存储器在预设应用时间周期的最优存储器管理算法的步骤,还包括:根据所述数据读写特征确定所述存储器在所述预设应用时间周期内所处的应用场景;将所述应用场景对应的目标存储器管理算法确定为所述存储器在所述第二时间区段内应用的最优存储器管理算法。
- 如权利要求4所述的存储器管理算法的自适应调整方法,其中,在所述根据所述数据读写特征确定所述存储器在所述预设应用时间周期内所处的应用场景的步骤之后,还包括:检测所述应用场景对应的目标存储器管理算法;若未检测到所述目标存储器管理算法,则根据所述数据读写特征定制存储器管理算法,并将定制的存储器管理算法作为所述应用场景对应的目标存储器管理算法。
- 如权利要求1所述的存储器管理算法的自适应调整方法,其中,在所述根据所述数据读写特征从预设存储器管理算法中匹配所述存储器在预设应用时间周期的最优存储器管理算法的步骤之后,还包括:检测所述预设应用时间周期内所述存储器当前应用的第一存储器管理算法是否为所述最优存储器管理算法。
- 如权利要求6所述的存储器管理算法的自适应调整方法,其中,所述在所述预设应用时间周期内将所述存储器当前应用的存储器管理算法调整至所述最优存储器管理算法的步骤,包括:若检测到所述第一存储器管理算法不为所述最优存储器管理算法,则在本端将所述第一存储器管理算法切换至所述最优存储器管理算法;或者,若检测到所述第一存储器管理算法不为所述最优存储器管理算法,则从预设云端下载所述最优存储器管理算法并将所述第一存储器管理算法切换至所述最优存储器管理算法。
- 一种存储器管理算法的自适应调整系统,其中,所述存储器管理算法的自适应调整系统包括:采集模块,用于持续采集存储器的数据读写特征;匹配模块,用于根据所述数据读写特征从预设存储器管理算法中匹配所述存储器在预设应用时间周期的最优存储器管理算法;调整模块,用于在所述预设应用时间周期内将所述存储器当前应用的存储器管理算法调整至所述最优存储器管理算法。
- 一种终端设备,其中,所述终端设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的存储器管理算法的自适应调整程序,所述存储器管理算法的自适应调整程序被所述处理器执行时实现如权利要求1至7中任一项所述的存储器管理算法的自适应调整方法的步骤。
- 一种计算机存储介质,其中,所述计算机存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的存储器管理算法的自适应调整方法的步骤。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010918275.9 | 2020-09-02 | ||
CN202010918275.9A CN112068776A (zh) | 2020-09-02 | 2020-09-02 | 存储器管理算法的自适应调整方法、系统、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022048108A1 true WO2022048108A1 (zh) | 2022-03-10 |
Family
ID=73665833
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2021/074789 WO2022048108A1 (zh) | 2020-09-02 | 2021-02-02 | 存储器管理算法的自适应调整方法、系统、设备及介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN112068776A (zh) |
WO (1) | WO2022048108A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112068776A (zh) * | 2020-09-02 | 2020-12-11 | 深圳市硅格半导体有限公司 | 存储器管理算法的自适应调整方法、系统、设备及介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110238377A1 (en) * | 2010-03-26 | 2011-09-29 | Bmc Software, Inc. | Auto Adjustment of Baseline on Configuration Change |
CN103282891A (zh) * | 2010-08-16 | 2013-09-04 | 甲骨文国际公司 | 用于使用神经网络来进行有效的缓存的系统和方法 |
CN103778043A (zh) * | 2012-10-23 | 2014-05-07 | 置富存储科技(深圳)有限公司 | 一种固态存储器的数据动态监控和管理方法 |
CN106326145A (zh) * | 2015-06-26 | 2017-01-11 | 深圳市中兴微电子技术有限公司 | 一种存储器的控制方法和装置 |
CN106415512A (zh) * | 2014-06-10 | 2017-02-15 | Arm 有限公司 | 存储器管理算法的动态选择 |
CN112068776A (zh) * | 2020-09-02 | 2020-12-11 | 深圳市硅格半导体有限公司 | 存储器管理算法的自适应调整方法、系统、设备及介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102591593B (zh) * | 2011-12-28 | 2014-07-30 | 华为技术有限公司 | 一种混合存储模式的切换方法、装置及系统 |
CN107861816B (zh) * | 2017-10-31 | 2022-10-28 | Oppo广东移动通信有限公司 | 资源配置方法及装置 |
CN109358811B (zh) * | 2018-09-30 | 2021-10-01 | 深圳市得一微电子有限责任公司 | 存储设备管理方法、装置及可读存储介质 |
CN110471861B (zh) * | 2019-07-10 | 2022-02-11 | 华为技术有限公司 | 一种闪存设备中的数据存储方法及闪存设备 |
CN111562885A (zh) * | 2020-04-30 | 2020-08-21 | 苏州亿歌网络科技有限公司 | 数据处理方法、装置、计算机设备及存储介质 |
-
2020
- 2020-09-02 CN CN202010918275.9A patent/CN112068776A/zh active Pending
-
2021
- 2021-02-02 WO PCT/CN2021/074789 patent/WO2022048108A1/zh active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110238377A1 (en) * | 2010-03-26 | 2011-09-29 | Bmc Software, Inc. | Auto Adjustment of Baseline on Configuration Change |
CN103282891A (zh) * | 2010-08-16 | 2013-09-04 | 甲骨文国际公司 | 用于使用神经网络来进行有效的缓存的系统和方法 |
CN103778043A (zh) * | 2012-10-23 | 2014-05-07 | 置富存储科技(深圳)有限公司 | 一种固态存储器的数据动态监控和管理方法 |
CN106415512A (zh) * | 2014-06-10 | 2017-02-15 | Arm 有限公司 | 存储器管理算法的动态选择 |
CN106326145A (zh) * | 2015-06-26 | 2017-01-11 | 深圳市中兴微电子技术有限公司 | 一种存储器的控制方法和装置 |
CN112068776A (zh) * | 2020-09-02 | 2020-12-11 | 深圳市硅格半导体有限公司 | 存储器管理算法的自适应调整方法、系统、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112068776A (zh) | 2020-12-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112230758B (zh) | 帧率调整方法、装置、设备及计算机可读存储介质 | |
US9081746B1 (en) | Method for client configuration management in remote computing | |
US9614931B2 (en) | Identifying a resource set require for a requested application and launching the resource set in a container for execution in a host operating system | |
WO2020062669A1 (zh) | 电器设备的控制方法、系统、装置、设备及介质 | |
RU2622154C2 (ru) | Способ и устройство для управления интеллектуальным жилищным устройством | |
JP2003114806A (ja) | Os更新方法及びセキュリティ制御方法並びにその実施装置 | |
CN105338391A (zh) | 智能电视控制方法与移动终端 | |
US20240080375A1 (en) | Method for real-time data acquisition and retrieval using a pass-through scalable architecture | |
US20080244619A1 (en) | External storage device and method of automatically operating the same | |
CN109542361A (zh) | 一种分布式存储系统文件读取方法、系统及相关装置 | |
CN108173840B (zh) | 基于云平台的智能物流终端集成系统 | |
CN114070888A (zh) | 基于云终端的业务处理方法、服务器、设备及系统 | |
WO2022048108A1 (zh) | 存储器管理算法的自适应调整方法、系统、设备及介质 | |
CN106657182B (zh) | 云端文件处理方法和装置 | |
US9191445B2 (en) | Systems and methods for managing emulation sessions | |
CN100474259C (zh) | 自动存档数据的方法及系统 | |
WO2015123986A1 (zh) | 一种数据记录的方法、系统以及接入服务器 | |
US11226838B2 (en) | Container-based management method by changing intelligent container component execution priority using remote calls via remote access unit and remote network functon module | |
WO2021233360A1 (zh) | 监控视频的处理方法、装置、设备及存储介质 | |
EP3618401B1 (en) | Electronic device and method for continuously reproducing multimedia content in external electronic device | |
CN104579844B (zh) | 服务器测试方法及装置 | |
KR101472161B1 (ko) | 개인 장치간 이벤트 및 데이터 공유 시스템 | |
KR102146946B1 (ko) | 구조화된 녹음 파일의 제공 방법, 장치 및 컴퓨터-판독가능 기록 매체 | |
CN112765056B (zh) | 一种预留存储集群lun的方法、系统、设备及介质 | |
WO2024179148A1 (zh) | 一种车机协同电子设备语音控制方法、装置、介质及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 21863179 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
32PN | Ep: public notification in the ep bulletin as address of the adressee cannot be established |
Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 10.07.2023) |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 21863179 Country of ref document: EP Kind code of ref document: A1 |