A parameter determination method and device, apparatus, and storage medium
By using an automated parameter configuration method, and by matching and updating the auxiliary parameter configuration set using a historical optimized parameter database, the low reliability and low efficiency problems caused by testers' reliance on guesswork in existing technologies are solved, thus achieving efficient performance testing.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- INSPUR SUZHOU INTELLIGENT TECH CO LTD
- Filing Date
- 2023-05-18
- Publication Date
- 2026-06-26
AI Technical Summary
Existing technologies rely on the guesswork of testers in equipment system performance testing, resulting in low reliability and efficiency, and a large amount of ineffective investment in repetitive testing.
By determining the set of primary parameter configurations and target performance requirements of the target system, matching the set of secondary parameter configurations using a historical optimized parameter configuration database, and updating the set of secondary parameter configurations when performance does not meet the requirements, until the target performance requirements are met, automated performance testing is achieved.
It improves testing efficiency and the reliability of the optimal performance parameter configuration set, avoids redundant testing, and reduces reliance on testers' experience.
Smart Images

Figure CN116662133B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of system parameter determination technology, and in particular to a parameter determination method, apparatus, device and storage medium. Background Technology
[0002] Currently, when conducting performance tests on various devices on the market to select parameter configuration combinations that meet expected performance requirements, the process always relies on the testers' guesses. The testers guess which parameter configuration combinations might meet the expected performance requirements, and then conduct performance tests on each of these guessed combinations to select the one that best meets those requirements.
[0003] For example, storage system performance test results are related to numerous parameters, such as block size, read / write order, read / write ratio, whether the main parameter is hit, number of threads, and the write data structure used in the test. For a single system version of a storage system, there may be over 300,000 possible parameter configuration combinations. Obtaining the parameter configuration combination that meets the expected performance requirements from these combinations using the methods described above is extremely difficult. Furthermore, the testing process relies heavily on the experience of the testers and requires manual testing of each parameter, resulting in low reliability, a large amount of redundant testing, and low efficiency. Summary of the Invention
[0004] Based on this, this application provides a parameter determination method, apparatus, device, and storage medium to solve the above-mentioned technical problems.
[0005] On the one hand, a method for determining parameters is provided, including:
[0006] Determine the set of main parameter configurations and target performance requirements for the target system; the set of main parameter configurations includes the main parameters and their corresponding values.
[0007] Based on the main parameter configuration set, a set of auxiliary parameter configurations corresponding to the main parameter configuration set is matched from a preset historical preferred parameter configuration database; the historical preferred parameter configuration database stores historical parameter configuration data of the target system, and each set of historical parameter configuration data includes a historical main parameter configuration set and a historical auxiliary parameter configuration set; the auxiliary parameter configuration set includes auxiliary parameters and corresponding auxiliary parameter values;
[0008] When it is determined that the performance of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set does not meet the target performance requirements, the auxiliary parameter values in the auxiliary parameter configuration set are updated to obtain an updated auxiliary parameter configuration set.
[0009] Based on the main parameter configuration set and the updated auxiliary parameter configuration set, the target system is subjected to performance testing to obtain the first performance test result;
[0010] When the performance of the target system corresponding to the main parameter configuration set and the updated auxiliary parameter configuration set meets the target performance requirements based on the first performance test results, the main parameter configuration set and the updated auxiliary parameter configuration set are used as the current preferred performance parameter configuration set of the target system.
[0011] In one embodiment, determining the set of primary parameter configurations and target performance requirements of the target system includes:
[0012] Determine the current version of the system to be tested for the target system;
[0013] Based on the system version, the set of main parameter configurations and the target performance requirements corresponding to the system version are determined from the preset performance target database; the performance target database stores the correspondence between the system version, the set of main parameter configurations and the target performance requirements for the target system.
[0014] In one embodiment, determining that the performance of the target system corresponding to the primary parameter configuration set and the secondary parameter configuration set does not meet the target performance requirements includes:
[0015] Based on the main parameter configuration set and the auxiliary parameter configuration set, corresponding historical performance test result data is matched from the historical preferred parameter configuration database. Based on the historical performance test result data, it is determined that the performance of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set does not meet the target performance requirements. The historical performance test result data is data obtained by performing performance tests on the target system in advance based on the historical preferred main parameter configuration set and the historical preferred auxiliary parameter configuration set.
[0016] or,
[0017] Based on the main parameter configuration set and the auxiliary parameter configuration set, the target system is subjected to performance testing to obtain a second performance test result. According to the second performance test result, it is determined that the performance of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set does not meet the target performance requirements.
[0018] In one embodiment, the main parameter configuration set includes at least two main parameters, and the step of matching the auxiliary parameter configuration set corresponding to the main parameter configuration set from a preset historical preferred parameter configuration database according to the main parameter configuration set includes:
[0019] When it is determined that the main parameter configuration set is not recorded in the historical preferred parameter configuration database, a main parameter configuration subset of the main parameter configuration set is determined; the main parameter configuration subset is a set composed of some main parameters in the main parameter configuration set and their corresponding main parameter values.
[0020] Based on the primary parameter configuration subset, a secondary parameter configuration set corresponding to the primary parameter configuration subset is matched from the historical preferred parameter configuration database, and this secondary parameter configuration set is used as the secondary parameter configuration set corresponding to the primary parameter configuration set.
[0021] In one embodiment, the target system is a storage system, the main parameter is the main parameter of the storage system's IO model, and the auxiliary parameter is the auxiliary parameter of the storage system's IO model.
[0022] In one embodiment, before determining that the performance of the target system corresponding to the primary parameter configuration set and the secondary parameter configuration set does not meet the target performance requirement, the method further includes:
[0023] It was determined that there is no room for performance optimization in the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set.
[0024] In one embodiment, the method further includes:
[0025] When it is determined that there is room for performance optimization of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set, the auxiliary parameter values in the auxiliary parameter configuration set are updated to obtain an updated auxiliary parameter configuration set. Based on the main parameter configuration set and the updated auxiliary parameter configuration set, the target system is subjected to performance testing to obtain a third performance test result. Based on the third performance test result, it is determined whether there is room for performance optimization of the target system corresponding to the main parameter configuration set and the updated auxiliary parameter configuration set. If so, the updated auxiliary parameter configuration set is updated until there is no room for performance optimization of the corresponding target system, thus obtaining the corresponding target auxiliary parameter configuration set.
[0026] When it is determined that the performance of the target system corresponding to the main parameter configuration set and the target auxiliary parameter configuration set does not meet the target performance requirements, the auxiliary parameter values of the auxiliary parameters in the target auxiliary parameter configuration set are updated to obtain the updated target auxiliary parameter configuration set.
[0027] Based on the main parameter configuration set and the updated target auxiliary parameter configuration set, the target system is subjected to performance testing to obtain a fourth performance test result;
[0028] When the performance of the target system corresponding to the main parameter configuration set and the updated target auxiliary parameter configuration set meets the target performance requirements based on the fourth performance test results, the main parameter configuration set and the updated target auxiliary parameter configuration set are used as the current preferred performance parameter configuration set of the target system.
[0029] In one embodiment, after obtaining the corresponding target auxiliary parameter configuration set, the method includes:
[0030] When it is determined that the performance of the target system corresponding to the main parameter configuration set and the target auxiliary parameter configuration set meets the target performance requirements, the main parameter configuration set and the target auxiliary parameter configuration set are used as the current preferred performance parameter configuration set of the target system.
[0031] In one embodiment, determining that there is no room for performance optimization in the target system corresponding to the primary parameter configuration set and the secondary parameter configuration set includes:
[0032] When it is determined that the latency of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set is less than a preset latency threshold, it is determined that there is no room for performance optimization of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set.
[0033] or,
[0034] When the IOPS fluctuation amplitude value of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set is less than the preset fluctuation amplitude threshold, it is determined that there is no room for performance optimization of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set.
[0035] On the other hand, a parameter determining device is provided, comprising:
[0036] The first determining module is used to determine the main parameter configuration set and target performance requirements of the target system; the main parameter configuration set includes main parameters and their corresponding values.
[0037] The matching module is used to match the main parameter configuration set from a preset historical preferred parameter configuration database to the auxiliary parameter configuration set corresponding to the main parameter configuration set. The historical preferred parameter configuration database stores historical parameter configuration data of the target system. Each historical parameter configuration data includes a historical main parameter configuration set and a historical auxiliary parameter configuration set. The auxiliary parameter configuration set includes auxiliary parameters and corresponding auxiliary parameter values.
[0038] The update module is used to update the auxiliary parameter values of the auxiliary parameters in the auxiliary parameter configuration set when it is determined that the performance of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set does not meet the target performance requirements, so as to obtain an updated auxiliary parameter configuration set.
[0039] The testing module is used to perform performance testing on the target system based on the main parameter configuration set and the updated auxiliary parameter configuration set to obtain a first performance test result;
[0040] The second determining module, when determining, based on the first performance test results, that the performance of the target system corresponding to the main parameter configuration set and the updated auxiliary parameter configuration set meets the target performance requirements, uses the main parameter configuration set and the updated auxiliary parameter configuration set as the preferred performance parameter configuration set for the target system.
[0041] On the other hand, an electronic device is provided, including a processor and a memory, wherein the memory stores a computer program, and the processor executes the computer program to implement any of the parameter determination methods described above.
[0042] On the other hand, a computer-readable storage medium is provided that stores a computer program, which, when executed by at least one processor, implements any of the parameter determination methods described above.
[0043] The parameter determination method, apparatus, equipment, and storage medium provided in this application can determine the main parameter configuration set and target performance requirements of the target system. Then, based on the main parameter configuration set, a set of auxiliary parameter configurations corresponding to the main parameter configuration set is matched from a preset historical preferred parameter configuration database. Since the historical preferred parameter configuration database stores historical preferred parameter configuration data of the target system, and each set of historical preferred parameter configuration data includes a historical preferred main parameter configuration set and a historical preferred auxiliary parameter configuration set, when it is determined that the performance of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set does not meet the target performance requirements, the auxiliary parameters can be adjusted directly based on the auxiliary parameter configuration set. This avoids testers from repeatedly performing invalid tests and obtains a set of preferred performance parameter configurations that meet the requirements more quickly. In addition, the entire testing process can be automated, no longer relying entirely on the experience of testers, thus improving testing efficiency and the reliability of the final set of preferred performance parameter configurations. Attached Figure Description
[0044] Figure 1 This is a flowchart illustrating the parameter determination method provided in Embodiment 1 of this application;
[0045] Figure 2This is a flowchart illustrating the process of determining the set of main parameter configurations and target performance requirements provided in Embodiment 1 of this application;
[0046] Figure 3 This is a flowchart illustrating the parameter determination method provided in Embodiment 2 of this application;
[0047] Figure 4 This is a schematic diagram of the parameter determination device provided in Embodiment 3 of this application;
[0048] Figure 5 This is a schematic diagram of the electronic device in Embodiment 4 of this application. Detailed Implementation
[0049] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.
[0050] Example 1:
[0051] To address the problem that existing technologies, when selecting parameter configuration combinations that meet expected performance requirements for target systems, always rely on testers' guesses, resulting in low reliability, low efficiency, and a large amount of ineffective, repetitive testing, this application provides a parameter determination method. Please refer to [link to relevant documentation]. Figure 1 As shown, it may include the following steps:
[0052] S11: Determine the set of main parameter configurations and target performance requirements for the target system; the set of main parameter configurations includes the main parameters and their corresponding values.
[0053] S12: Match the auxiliary parameter configuration set corresponding to the main parameter configuration set from the preset historical preferred parameter configuration database according to the main parameter configuration set; the historical preferred parameter configuration database stores the historical preferred parameter configuration data of the target system, and each historical preferred parameter configuration data includes the historical preferred main parameter configuration set and the historical preferred auxiliary parameter configuration set; the auxiliary parameter configuration set includes auxiliary parameters and the corresponding auxiliary parameter values.
[0054] S13: When it is determined that the performance of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set does not meet the target performance requirements, the auxiliary parameter values in the auxiliary parameter configuration set are updated to obtain the updated auxiliary parameter configuration set.
[0055] S14: Based on the main parameter configuration set and the updated auxiliary parameter configuration set, the target system is subjected to performance testing to obtain the first performance test result.
[0056] S15: When the performance of the target system corresponding to the main parameter configuration set and the updated auxiliary parameter configuration set meets the target performance requirements based on the first performance test results, the main parameter configuration set and the updated auxiliary parameter configuration set shall be used as the current preferred performance parameter configuration set of the target system.
[0057] The specific procedures in the above steps will be explained in detail below.
[0058] It should be noted that the target system in this application embodiment can be any system applicable to electronic devices that requires performance optimization. For example, it can be a storage system. The interaction between the client and the storage system mainly involves the queue processing of input / output (I / O) related instructions. Therefore, optimization of the storage system can start from the I / O model, optimizing the main parameters and auxiliary parameters of the I / O model. That is, the main parameters in this application embodiment can be the main parameters of the storage system's I / O model, and the auxiliary parameters can be the auxiliary parameters of the storage system's I / O model.
[0059] For step S11, please refer to Figure 2 As shown, it may include the following sub-steps:
[0060] S111: Determine the current version of the system to be tested for the target system;
[0061] S112: Determine the set of main parameter configurations and target performance requirements corresponding to the system version from the preset performance target database based on the system version; the performance target database stores the correspondence between system version, set of main parameter configurations and target performance requirements for the target system.
[0062] It should be noted that the parameter determination method provided in this application embodiment can be applied to electronic devices, which can determine the current system version to be tested for the target system based on the user's input instructions.
[0063] Understandably, before step S112, a performance target database can be pre-established in the electronic device to store the correspondence between system versions, main parameter configuration sets, and target performance requirements for the target system. For the same system version, the corresponding main parameter configuration set is usually the same, but the corresponding target performance requirements can differ in different application scenarios. That is, for the same system version, the corresponding main parameter configuration set is usually the same, but it can have multiple different target performance requirements. When a system version corresponds to multiple target performance requirements, in step S112, a target performance requirement matching the current application scenario can be selected from the multiple target performance requirements corresponding to the system version. A target performance requirement refers to the expected value of a certain performance indicator of the target system. For example, a certain overall performance indicator of the target system can be required to reach a preset value.
[0064] In this application's embodiments, the primary and secondary parameters can be flexibly set by the developers. Developers can pre-define some parameters as primary parameters, and the parameters other than these primary parameters are secondary parameters. When the primary parameter is the primary parameter of the storage system's IO model, and the secondary parameter is the secondary parameter of the storage system's IO model, the machine type, block size, read / write order, read / write ratio, and read / write hit rate can be used as primary parameters, while other parameters related to the IO model can be used as secondary parameters, such as the number of threads.
[0065] It is understood that, prior to step S12, a historical preferred parameter configuration database can be pre-established in the electronic device to store at least one historical preferred parameter configuration data for the target system. Each historical preferred parameter configuration data includes a set of historical preferred main parameter configurations and a set of historical preferred auxiliary parameter configurations. The auxiliary parameter configuration set includes auxiliary parameters and their corresponding values.
[0066] Generally speaking, for a target system, the performance of its corresponding released system version is usually sufficient to meet certain requirements. Therefore, its corresponding main parameter configuration set and auxiliary parameter configuration set are historically optimized main parameter configuration sets and historically optimized auxiliary parameter configuration sets. These data can be stored so that when the performance of the system version needs to be optimized later, historical data can be referenced and optimization can be carried out on the basis of historical data, thereby improving optimization efficiency.
[0067] Optionally, the main parameter configuration set includes at least two main parameters. In step S12, if the preset historical preferred parameter configuration database contains data that is consistent with the main parameter configuration set in step S11, the auxiliary parameter configuration set corresponding to the main parameter configuration set can be directly matched in the historical preferred parameter configuration database, and then subsequent steps S13 to S15 can be executed.
[0068] It should be noted that if the preset historical preferred parameter configuration database does not record data consistent with the main parameter configuration set in step S11, that is, when it is determined that the main parameter configuration set is not recorded in the historical preferred parameter configuration database, a main parameter configuration subset of the main parameter configuration set is determined; the main parameter configuration subset is a set composed of some main parameters in the main parameter configuration set and their corresponding main parameter values; then, based on the main parameter configuration subset, an auxiliary parameter configuration set corresponding to the main parameter configuration subset is matched from the historical preferred parameter configuration database, and this auxiliary parameter configuration set is used as the auxiliary parameter configuration set corresponding to the main parameter configuration set. For example, when the main parameter configuration set is {main parameter A = a1, main parameter B = b1, main parameter C = c1}, if the historical preferred parameter configuration database does not record {main parameter A = a1, main parameter B = b1, main parameter C = c1}, then {main parameter A = a1, main parameter B = b1} can be used as a subset of the main parameter configurations of {main parameter A = a1, main parameter B = b1, main parameter C = c1}. The auxiliary parameter configuration set corresponding to this subset of main parameter configurations is then matched in the historical preferred parameter configuration database, and this auxiliary parameter configuration set is used as the auxiliary parameter configuration set corresponding to the main parameter configuration set.
[0069] It is understood that the method for determining the main parameter configuration subset corresponding to the main parameter configuration set in this application embodiment can be flexibly set by the developers. For example, one main parameter and its corresponding main parameter value can be deleted from the main parameter configuration set, and the set of the remaining main parameters and their values can be used as the corresponding main parameter configuration subset. It should be noted that if there is no corresponding auxiliary parameter configuration set in all the corresponding main parameter configuration subsets after deleting one main parameter and its corresponding main parameter value, then two main parameters and their corresponding main parameter values can be deleted from the main parameter configuration set, and the set of the remaining main parameters and their values can be used as the corresponding main parameter configuration subset, until the corresponding auxiliary parameter configuration set is matched based on the main parameter configuration subset.
[0070] In this embodiment of the application, when deleting a main parameter and its corresponding main parameter value from the main parameter configuration set to obtain the corresponding main parameter configuration subset, a random algorithm can be used for deletion, or each main parameter and its corresponding main parameter value can be deleted sequentially according to the deletion order set for each main parameter in advance. Continuing with the above example, if the pre-set deletion order is A>B>C, and the main parameter configuration set is {main parameter A=a1, main parameter B=b1, main parameter C=c1}, and the historical preferred parameter configuration database does not record {main parameter A=a1, main parameter B=b1, main parameter C=c1}, then matching can be performed in the historical preferred parameter configuration database in the following manner:
[0071] The system checks if the historical optimal parameter configuration database contains a subset of primary parameter configurations {primary parameter B = b1, primary parameter C = c1}. If so, it matches the corresponding set of auxiliary parameter configurations. If not, it checks if the historical optimal parameter configuration database contains a subset of primary parameter configurations {primary parameter A = a1, primary parameter C = c1}. If so, it matches the corresponding set of auxiliary parameter configurations. If not, it checks if the historical optimal parameter configuration database contains a subset of primary parameter configurations {primary parameter A = a1, primary parameter B = b1}. If so, it matches the corresponding set of auxiliary parameter configurations. If not, it checks if the historical optimal parameter configuration database contains a subset of primary parameter configurations {primary parameter C = c1}, and so on, until the corresponding set of auxiliary parameter configurations is matched.
[0072] It should be noted that developers can set the deletion order based on the impact of each main parameter on system version performance; for example, the smaller the impact, the higher the priority for deletion.
[0073] For step S13, in an optional example, each set of historical preferred parameter configuration data also includes historical performance test result data corresponding to the historical preferred main parameter configuration set and the historical preferred auxiliary parameter configuration set. That is, the historical performance test result data is data obtained by performing performance tests on the target system in advance based on the historical preferred main parameter configuration set and the historical preferred auxiliary parameter configuration set. In this case, in step S13, the corresponding historical performance test result data can be matched from the historical preferred parameter configuration database based on the main parameter configuration set and the auxiliary parameter configuration set. Based on the historical performance test result data, it can be determined whether the performance of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set meets the target performance requirements. That is, in this case, the historical performance test data can be directly used to make the judgment in step S13 without repeating the performance test, which can save efficiency and avoid repeated testing.
[0074] In another optional example, when the historical preferred parameter configuration data does not contain historical performance test result data corresponding to the historical preferred main parameter configuration set and the historical preferred auxiliary parameter configuration set, in step S13, the target system can be directly tested based on the main parameter configuration set and the auxiliary parameter configuration set to obtain the second performance test result, and the performance of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set can be judged according to the second performance test result to determine whether the performance of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set meets the target performance requirements.
[0075] In some embodiments, in order to finally obtain the optimal set of performance parameter configurations, before step S13, it can be determined whether there is room for optimization in the performance of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set. If not, step S13 is then executed.
[0076] When the judgment result is yes, the auxiliary parameter configuration set can be updated. Specifically, the values of auxiliary parameters in the auxiliary parameter configuration set can be updated to obtain an updated auxiliary parameter configuration set. Based on the main parameter configuration set and the updated auxiliary parameter configuration set, a performance test is performed on the target system to obtain a third performance test result. Based on the third performance test result, it is determined whether there is room for performance optimization of the target system corresponding to the main parameter configuration set and the updated auxiliary parameter configuration set. If so, the updated auxiliary parameter configuration set continues to be updated until there is no room for performance optimization of the corresponding target system, thus obtaining the corresponding target auxiliary parameter configuration set. That is to say, in this embodiment, the auxiliary parameters can be updated by looping through the system, selecting auxiliary parameter values that can bring performance improvement in turn. For example, when the auxiliary parameter configuration set is {auxiliary parameter D = d1, auxiliary parameter E = e1, auxiliary parameter F = f1}, auxiliary parameter D = d1 and auxiliary parameter E = e1 can be kept unchanged, the value of auxiliary parameter F can be adjusted, after one iteration, auxiliary parameter E is incremented by 1, auxiliary parameter F continues to be traversed, and so on, until there is no room for performance optimization of the corresponding target system.
[0077] When it is determined that the performance of the target system corresponding to the main parameter configuration set and the target auxiliary parameter configuration set meets the target performance requirements, the main parameter configuration set and the target auxiliary parameter configuration set are taken as the current preferred performance parameter configuration set of the target system. The preferred performance parameter configuration set obtained at this time is also the optimal performance parameter configuration set.
[0078] When it is determined that the performance of the target system corresponding to the main parameter configuration set and the target auxiliary parameter configuration set does not meet the target performance requirements, the auxiliary parameter values in the target auxiliary parameter configuration set are updated to obtain the updated target auxiliary parameter configuration set. Based on the main parameter configuration set and the updated target auxiliary parameter configuration set, the target system is subjected to performance testing to obtain the fourth performance test result. When it is determined that the performance of the target system corresponding to the main parameter configuration set and the updated target auxiliary parameter configuration set meets the target performance requirements based on the fourth performance test result, the main parameter configuration set and the updated target auxiliary parameter configuration set are taken as the current preferred performance parameter configuration set of the target system. The preferred performance parameter configuration set obtained at this time is also the optimal performance parameter configuration set.
[0079] In this embodiment, it can be determined whether there is room for performance optimization in the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set in the following way:
[0080] Determine whether the latency of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set is less than the preset latency threshold. If so, determine that there is no room for performance optimization of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set; otherwise, determine that there is room for performance optimization of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set.
[0081] or,
[0082] Determine whether the IOPS fluctuation range of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set is less than the preset fluctuation range threshold. If so, determine that there is no room for performance optimization of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set; otherwise, determine that there is room for performance optimization of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set.
[0083] It should be noted that the preset latency threshold and preset fluctuation amplitude threshold in the embodiments of this application can be flexibly set by the developer. For example, the latency threshold can be set to 1ms, and the fluctuation amplitude threshold can be set to 6%, or other values can be used.
[0084] The parameter determination method provided in this application embodiment can be implemented by scripts, thereby automating the entire performance testing process. In addition, since each historical preferred parameter configuration data includes a historical preferred main parameter configuration set and a historical preferred auxiliary parameter configuration set, when it is determined that the performance of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set does not meet the target performance requirements, the auxiliary parameters can be adjusted directly based on the auxiliary parameter configuration set. This can avoid testers repeatedly performing invalid tests and obtain a preferred performance parameter configuration set that meets the requirements more quickly. Furthermore, the entire testing process can be automated, no longer relying entirely on the experience of testers, thus improving testing efficiency and the reliability of the final preferred performance parameter configuration set.
[0085] Example 2:
[0086] To better understand the parameter determination method provided in this application's embodiments, this application's embodiments take the target system as a storage system, the main parameters as the main parameters of the storage system's IO model, and the auxiliary parameters as the auxiliary parameters of the storage system's IO model as an example for more detailed explanation. Please refer to... Figure 3 As shown, the parameter determination method provided in this application includes the following steps:
[0087] S301: Establish and store the performance target database.
[0088] The performance target database stores the mapping between system version, main parameter configuration set, and target performance requirements for the storage system. The main parameters in the main parameter configuration set include machine type, block size, read / write order, read / write ratio, and read / write hit rate.
[0089] S302: Establish and store a database of historical preferred parameter configurations.
[0090] The historical optimal parameter configuration database stores historical optimal parameter configuration data for the storage system. Each set of historical optimal parameter configuration data includes a set of historical primary parameter configurations, a set of historical secondary parameter configurations, and historical performance test results obtained by performing performance tests on the storage system based on the historical primary and secondary parameter configuration sets. Historical performance test results are not necessarily optimal performance data; therefore, saving historical performance test results in this embodiment is beneficial for subsequent data analysis and can serve as reference data for secondary parameter tuning.
[0091] S303: Determine the current version of the system to be tested for the target system.
[0092] S304: Determine the set of main parameter configurations and target performance requirements corresponding to the system version from the performance target database based on the system version.
[0093] The performance target database stores the correspondence between the system version, the set of main parameter configurations, and the target performance requirements for the target system.
[0094] S305: Determine whether the set of main parameter configurations is recorded in the historical preferred parameter configuration database. If yes, proceed to S306; otherwise, proceed to S307.
[0095] S306: Directly match the auxiliary parameter configuration set corresponding to the main parameter configuration set from the historical preferred parameter configuration database based on the main parameter configuration set.
[0096] S307: Determine the subset of main parameter configurations of the main parameter configuration set.
[0097] The main parameter configuration subset is a set consisting of some of the main parameters in the main parameter configuration set and their corresponding main parameter values.
[0098] In this embodiment of the application, the model parameters and their corresponding parameter values in the main parameter configuration set can be deleted first, thereby obtaining the corresponding main parameter configuration subset.
[0099] S308: Match the auxiliary parameter configuration set corresponding to the main parameter configuration subset from the historical preferred parameter configuration database, and use the auxiliary parameter configuration set as the auxiliary parameter configuration set corresponding to the main parameter configuration set.
[0100] S309: Determine whether there is room for performance optimization in the storage system corresponding to the main parameter configuration set and the auxiliary parameter configuration set. If yes, proceed to S310; otherwise, proceed to S311.
[0101] In this embodiment of the application, the host environment of the storage system can be initialized, and the IO model of the storage system can be tested according to the main parameter configuration set and the auxiliary parameter configuration set. After each IO model test is completed, the performance test results are recorded, and the environment is initialized again for the next test.
[0102] In this embodiment, it can be determined whether the latency of the storage system corresponding to the main parameter configuration set and the auxiliary parameter configuration set is less than a preset latency threshold. If so, it is determined that there is no room for performance optimization of the storage system corresponding to the main parameter configuration set and the auxiliary parameter configuration set; otherwise, it is determined that there is room for performance optimization of the storage system corresponding to the main parameter configuration set and the auxiliary parameter configuration set.
[0103] S310: Update the auxiliary parameter configuration set to obtain the updated auxiliary parameter configuration set.
[0104] The purpose of updating and adjusting the auxiliary parameter configuration set in this embodiment is to find the auxiliary parameter configuration set corresponding to the optimal performance. The method for updating the auxiliary parameter configuration set in this embodiment can be referred to the description in the above embodiments, and will not be repeated here.
[0105] S311: When there is no room for performance optimization of the storage system corresponding to the main parameter configuration set and the auxiliary parameter configuration set, determine whether the performance of the storage system corresponding to the main parameter configuration set and the auxiliary parameter configuration set meets the target performance requirements. If yes, proceed to S312; otherwise, proceed to S310.
[0106] S312: Use the main parameter configuration set and the auxiliary parameter configuration set as the current preferred performance parameter configuration set for the storage system.
[0107] The parameter determination method provided in this application establishes a historical optimal parameter configuration database based on historical optimal parameter configuration data, establishes a performance target database based on system version, main parameter configuration set and target performance requirements, and can adjust parameters based on the auxiliary parameter configuration set in the historical optimal parameter configuration database. It iterates through the database and selects auxiliary parameters that can bring performance improvement, thereby realizing automated adjustment testing for performance testing.
[0108] It should be understood that although the steps in the flowchart above are shown sequentially as indicated by the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowchart above may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these sub-steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the sub-steps or stages of other steps.
[0109] Example 3:
[0110] Based on the same inventive concept, embodiments of this application provide a parameter determination device. Embodiments of this application can divide the device into functional units according to the above method examples. For example, each function can be divided into separate functional units, or two or more functions can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit. It should be noted that the unit division in this application embodiment is illustrative and only represents one logical functional division; other division methods may be used in actual implementation. Please refer to... Figure 4 As shown, it should be understood that the parameter determining device includes:
[0111] The first determining module 401 is used to determine the main parameter configuration set and target performance requirements of the target system; the main parameter configuration set includes main parameters and corresponding main parameter values.
[0112] Matching module 402 is used to match the auxiliary parameter configuration set corresponding to the main parameter configuration set from a preset historical preferred parameter configuration database according to the main parameter configuration set; the historical preferred parameter configuration database stores the historical preferred parameter configuration data of the target system, and each historical preferred parameter configuration data includes a historical preferred main parameter configuration set and a historical preferred auxiliary parameter configuration set; the auxiliary parameter configuration set includes auxiliary parameters and corresponding auxiliary parameter values;
[0113] The update module 403 is used to update the auxiliary parameter values of the auxiliary parameters in the auxiliary parameter configuration set when it is determined that the performance of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set does not meet the target performance requirements, so as to obtain an updated auxiliary parameter configuration set.
[0114] Test module 404 is used to perform performance testing on the target system based on the main parameter configuration set and the updated auxiliary parameter configuration set to obtain a first performance test result;
[0115] The second determining module 405, when determining that the performance of the target system corresponding to the main parameter configuration set and the updated auxiliary parameter configuration set meets the target performance requirements based on the first performance test results, uses the main parameter configuration set and the updated auxiliary parameter configuration set as the current preferred performance parameter configuration set of the target system.
[0116] Optionally, the first determining module 401 is used to determine the current system version to be tested for the target system, and to determine the main parameter configuration set and target performance requirements corresponding to the system version from a preset performance target database based on the system version; the performance target database stores the correspondence between system version, main parameter configuration set and target performance requirements for the target system.
[0117] Optionally, the update module 403 is used to match the corresponding historical performance test result data from the historical preferred parameter configuration database according to the main parameter configuration set and the auxiliary parameter configuration set, and determine that the performance of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set does not meet the target performance requirements based on the historical performance test result data; the historical performance test result data is data obtained by performing performance tests on the target system in advance according to the historical preferred main parameter configuration set and the historical preferred auxiliary parameter configuration set; or, a second performance test result is obtained by performing performance tests on the target system based on the main parameter configuration set and the auxiliary parameter configuration set, and the performance of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set does not meet the target performance requirements based on the second performance test result.
[0118] Optionally, the main parameter configuration set includes at least two main parameters. The matching module 402 is used to determine a subset of the main parameter configurations of the main parameter configuration set when it is determined that the main parameter configuration set is not recorded in the historical preferred parameter configuration database. The subset of the main parameter configurations is a set composed of some main parameters in the main parameter configuration set and their corresponding values. Based on the subset of the main parameter configurations, the auxiliary parameter configuration set corresponding to the subset of the main parameter configurations is matched from the historical preferred parameter configuration database, and the auxiliary parameter configuration set is used as the auxiliary parameter configuration set corresponding to the main parameter configuration set.
[0119] Optionally, the target system is a storage system, the main parameters are the main parameters of the storage system's IO model, and the auxiliary parameters are the auxiliary parameters of the storage system's IO model.
[0120] Optionally, the parameter determination device may further include a third determination module, used to determine that there is no room for optimization in the performance of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set before determining that the performance of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set does not meet the target performance requirements.
[0121] Optionally, the parameter determination device may further include a processing module, configured to, when determining that there is room for performance optimization in the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set, update the auxiliary parameter values in the auxiliary parameter configuration set to obtain an updated auxiliary parameter configuration set; perform performance testing on the target system based on the main parameter configuration set and the updated auxiliary parameter configuration set to obtain a third performance test result; and determine, based on the third performance test result, whether there is room for performance optimization in the target system corresponding to the main parameter configuration set and the updated auxiliary parameter configuration set; if so, update the updated auxiliary parameter configuration set until there is no room for performance optimization in the corresponding target system, thus obtaining the corresponding... The target auxiliary parameter configuration set is determined as follows: When the performance of the target system corresponding to the main parameter configuration set and the target auxiliary parameter configuration set does not meet the target performance requirements, the auxiliary parameter values of the auxiliary parameters in the target auxiliary parameter configuration set are updated to obtain an updated target auxiliary parameter configuration set; the target system is subjected to performance testing based on the main parameter configuration set and the updated target auxiliary parameter configuration set to obtain a fourth performance test result; when the performance of the target system corresponding to the main parameter configuration set and the updated target auxiliary parameter configuration set meets the target performance requirements based on the fourth performance test result, the main parameter configuration set and the updated target auxiliary parameter configuration set are used as the current preferred performance parameter configuration set for the target system.
[0122] Optionally, the parameter determination device may further include a fourth determination module, which, after obtaining the corresponding target auxiliary parameter configuration set, determines that the performance of the target system corresponding to the main parameter configuration set and the target auxiliary parameter configuration set meets the target performance requirements, and uses the main parameter configuration set and the target auxiliary parameter configuration set as the current preferred performance parameter configuration set of the target system.
[0123] Optionally, the third determining module is used to determine that there is no room for performance optimization of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set when the latency of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set is less than a preset latency threshold; or, when the IOPS fluctuation amplitude value of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set is less than a preset fluctuation amplitude threshold, it is determined that there is no room for performance optimization of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set.
[0124] It should be noted that, for the sake of brevity, some of the content described in the above embodiments will not be repeated in this embodiment.
[0125] Example 4:
[0126] This application also provides an electronic device; please refer to [link to relevant documentation]. Figure 5 As shown, the electronic device includes a processor 501 and a memory 502. The memory 502 stores a computer program. The processor 501 and the memory 502 communicate via a communication bus. The processor 501 executes the computer program to implement the steps of the method in the above embodiments, which will not be described again here. It is understood that... Figure 5 The structure shown is for illustrative purposes only; the electronic device may also include components that are more advanced than those shown. Figure 5 The more or fewer components shown, or having the same Figure 5 The different configurations shown.
[0127] Processor 501 can be an integrated circuit chip with signal processing capabilities. The processor 501 can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it can also be a digital signal processor (DSP), an application-specific integrated circuit (ASIC), an off-the-shelf programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. It can implement or execute the various methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor can be a microprocessor or any conventional processor.
[0128] The memory 502 may include, but is not limited to, random access memory (RAM), read-only memory (ROM), programmable read-only memory (PROM), erasable read-only memory (EPROM), electrically erasable read-only memory (EEPROM), etc.
[0129] This embodiment also provides a computer-readable storage medium, such as a floppy disk, optical disk, hard disk, flash memory, USB flash drive, SD card, MMC card, etc., in which one or more programs implementing the above steps are stored. These one or more programs can be executed by one or more processors 501 to implement the steps of the method in the above embodiment, which will not be described again here.
[0130] It should be noted that the illustrations provided in this embodiment are only schematic representations of the basic concept of the present invention. Therefore, the drawings only show components relevant to the present invention and are not drawn according to the actual number, shape, and size of components in implementation. In actual implementation, the form, quantity, and proportion of each component can be arbitrarily changed, and the component layout may be more complex. The structures, proportions, sizes, etc., depicted in the accompanying drawings are only for illustrative purposes to aid those skilled in the art and are not intended to limit the implementation conditions of the present invention. Therefore, they have no substantial technical significance. Any modifications to the structure, changes in proportions, or adjustments to size, without affecting the effects and objectives of the present invention, should still fall within the scope of the technical content disclosed in the present invention. Furthermore, the terms such as "upper," "lower," "left," "right," "middle," and "one" used in this specification are only for clarity of description and are not intended to limit the scope of the present invention. Changes or adjustments to their relative relationships, without substantially altering the technical content, should also be considered within the scope of the present invention.
[0131] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0132] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the invention patent. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this patent application should be determined by the appended claims.
Claims
1. A method for determining parameters, characterized in that, include: Determine the set of main parameter configurations and target performance requirements for the target system; The main parameter configuration set includes the main parameters and their corresponding values; Based on the main parameter configuration set, a set of auxiliary parameter configurations corresponding to the main parameter configuration set is matched from a preset historical preferred parameter configuration database; the historical preferred parameter configuration database stores historical preferred parameter configuration data of the target system, and each set of historical preferred parameter configuration data includes a historical preferred main parameter configuration set and a historical preferred auxiliary parameter configuration set; the auxiliary parameter configuration set includes auxiliary parameters and corresponding auxiliary parameter values; When it is determined that the performance of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set does not meet the target performance requirements, the auxiliary parameter values in the auxiliary parameter configuration set are updated to obtain an updated auxiliary parameter configuration set. Based on the main parameter configuration set and the updated auxiliary parameter configuration set, the target system is subjected to performance testing to obtain the first performance test result; When it is determined from the first performance test results that the performance of the target system corresponding to the main parameter configuration set and the updated auxiliary parameter configuration set meets the target performance requirements, the main parameter configuration set and the updated auxiliary parameter configuration set are used as the current preferred performance parameter configuration set of the target system. Wherein, the target system is a storage system, the main parameters are the main parameters of the storage system's IO model, and the auxiliary parameters are the auxiliary parameters of the storage system's IO model.
2. The parameter determination method as described in claim 1, characterized in that, The determination of the target system's main parameter configuration set and target performance requirements includes: Determine the current system version to be tested for the target system; Based on the system version, the set of main parameter configurations and the target performance requirements corresponding to the system version are determined from the preset performance target database; the performance target database stores the correspondence between the system version, the set of main parameter configurations and the target performance requirements for the target system.
3. The parameter determination method as described in claim 1, characterized in that, The determination that the performance of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set does not meet the target performance requirements includes: Based on the main parameter configuration set and the auxiliary parameter configuration set, corresponding historical performance test result data is matched from the historical preferred parameter configuration database. Based on the historical performance test result data, it is determined that the performance of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set does not meet the target performance requirements. The historical performance test result data is data obtained by performing performance tests on the target system in advance based on the historical preferred main parameter configuration set and the historical preferred auxiliary parameter configuration set. or, Based on the main parameter configuration set and the auxiliary parameter configuration set, the target system is subjected to performance testing to obtain a second performance test result. According to the second performance test result, it is determined that the performance of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set does not meet the target performance requirements.
4. The parameter determination method according to any one of claims 1-3, characterized in that, The main parameter configuration set includes at least two main parameters. The step of matching the auxiliary parameter configuration set corresponding to the main parameter configuration set from a preset historical preferred parameter configuration database includes: When it is determined that the main parameter configuration set is not recorded in the historical preferred parameter configuration database, a main parameter configuration subset of the main parameter configuration set is determined; the main parameter configuration subset is a set composed of some main parameters in the main parameter configuration set and their corresponding main parameter values. Based on the primary parameter configuration subset, a secondary parameter configuration set corresponding to the primary parameter configuration subset is matched from the historical preferred parameter configuration database, and this secondary parameter configuration set is used as the secondary parameter configuration set corresponding to the primary parameter configuration set.
5. The parameter determination method as described in claim 4, characterized in that, Before determining that the performance of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set does not meet the target performance requirements, the method further includes: It was determined that there is no room for performance optimization in the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set.
6. The parameter determination method as described in claim 5, characterized in that, The method further includes: When it is determined that there is room for performance optimization of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set, the auxiliary parameter values in the auxiliary parameter configuration set are updated to obtain an updated auxiliary parameter configuration set. Based on the main parameter configuration set and the updated auxiliary parameter configuration set, the target system is subjected to performance testing to obtain a third performance test result. Based on the third performance test result, it is determined whether there is room for performance optimization of the target system corresponding to the main parameter configuration set and the updated auxiliary parameter configuration set. If so, the updated auxiliary parameter configuration set is updated until there is no room for performance optimization of the corresponding target system, thus obtaining the corresponding target auxiliary parameter configuration set. When it is determined that the performance of the target system corresponding to the main parameter configuration set and the target auxiliary parameter configuration set does not meet the target performance requirements, the auxiliary parameter values of the auxiliary parameters in the target auxiliary parameter configuration set are updated to obtain the updated target auxiliary parameter configuration set. Based on the main parameter configuration set and the updated target auxiliary parameter configuration set, the target system is subjected to performance testing to obtain a fourth performance test result; When the performance of the target system corresponding to the main parameter configuration set and the updated target auxiliary parameter configuration set meets the target performance requirements based on the fourth performance test results, the main parameter configuration set and the updated target auxiliary parameter configuration set are used as the current preferred performance parameter configuration set of the target system.
7. The parameter determination method as described in claim 6, characterized in that, After obtaining the corresponding target auxiliary parameter configuration set, the method includes: When it is determined that the performance of the target system corresponding to the main parameter configuration set and the target auxiliary parameter configuration set meets the target performance requirements, the main parameter configuration set and the target auxiliary parameter configuration set are used as the current preferred performance parameter configuration set of the target system.
8. The parameter determination method as described in claim 5, characterized in that, The determination that there is no room for performance optimization in the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set includes: When it is determined that the latency of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set is less than a preset latency threshold, it is determined that there is no room for performance optimization of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set. or, When the IOPS fluctuation amplitude value of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set is less than the preset fluctuation amplitude threshold, it is determined that there is no room for performance optimization of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set.
9. A parameter determining device, characterized in that, include: The first determining module is used to determine the set of main parameter configurations and target performance requirements of the target system; The main parameter configuration set includes the main parameters and their corresponding values; The matching module is used to match the auxiliary parameter configuration set corresponding to the main parameter configuration set from a preset historical preferred parameter configuration database. The historical preferred parameter configuration database stores the historical preferred parameter configuration data of the target system. Each set of historical preferred parameter configuration data includes a historical preferred main parameter configuration set and a historical preferred auxiliary parameter configuration set. The auxiliary parameter configuration set includes auxiliary parameters and their corresponding values. The update module is used to update the auxiliary parameter values of the auxiliary parameters in the auxiliary parameter configuration set when it is determined that the performance of the target system corresponding to the main parameter configuration set and the auxiliary parameter configuration set does not meet the target performance requirements, so as to obtain an updated auxiliary parameter configuration set. The testing module is used to perform performance testing on the target system based on the main parameter configuration set and the updated auxiliary parameter configuration set to obtain a first performance test result; The second determining module, when determining that the performance of the target system corresponding to the main parameter configuration set and the updated auxiliary parameter configuration set meets the target performance requirements based on the first performance test results, uses the main parameter configuration set and the updated auxiliary parameter configuration set as the current preferred performance parameter configuration set of the target system; Wherein, the target system is a storage system, the main parameters are the main parameters of the storage system's IO model, and the auxiliary parameters are the auxiliary parameters of the storage system's IO model.
10. An electronic device, characterized in that, It includes a processor and a memory, the memory storing a computer program, the processor executing the computer program to implement the parameter determination method as described in any one of claims 1-8.
11. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by at least one processor, implements the parameter determination method as described in any one of claims 1-8.