Performance test method and device for solid state disk, electronic equipment and storage medium

By using an in-memory database to store and analyze test data in solid-state drive testing, the problem of low accuracy of test results in the prior art is solved, and more efficient and accurate solid-state drive performance testing is achieved.

CN119993250AActive Publication Date: 2025-05-13INSPUR SUZHOU INTELLIGENT TECH CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202411216975.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-08-30
Publication Date
2025-05-13
Estimated Expiration
2044-08-30

AI Technical Summary

Technical Problem

The existing solid-state drive testing methods have low accuracy due to a large number of read and write operations, and the log information is single and unstable, making it difficult to quickly locate the problem.

Method used

The in-memory database is used as a real-time storage medium to store static data before solid-state drive testing, real-time data during the testing process, and static data after the test is completed, and analyze it based on these data to determine the test results.

Benefits of technology

Through the high-speed read and write performance and low latency characteristics of the in-memory database, the database access speed and response performance are significantly improved, and the accuracy and efficiency of solid-state drive testing are improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119993250A_ABST
    Figure CN119993250A_ABST
Patent Text Reader

Abstract

The invention provides a solid state disk performance testing method and device, electronic equipment and a storage medium, and the method comprises the steps: obtaining static data of a target solid state disk before testing, and storing the static data in a memory database; testing the target solid state disk based on the test machine, and receiving real-time test data based on the memory database; obtaining static data after the test of the target solid state disk is completed, and storing the static data in a memory database; and analyzing the static data before the test, the static data after the test and the real-time test data in the memory database, and determining a test result of the target solid state disk. Based on the memory database, the access speed and response performance of the database can be greatly improved by utilizing the high-speed read-write performance and the low-delay characteristic of the memory, the storage requirements for hard disk performance indexes and related logs in the performance and function testing process can be well met, and the testing accuracy of the target solid state disk is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of servers, and in particular to a performance testing method, device, electronic equipment and storage medium for a solid state hard disk. Background Art

[0002] As an emerging storage technology, Solid State Drive (SSD) has become the data storage choice for more and more enterprise and individual users due to its fast reading and writing, light weight, low energy consumption, and small size that traditional mechanical hard drives do not have. It is widely used in various industries.

[0003] Existing methods for SSD testing are generally implemented based on test tools. During the testing process based on test tools, since the operation of recording indicator data itself requires a large number of read and write operations, a large amount of storage space and read and write overhead will affect the accuracy of the test tool results to a certain extent, resulting in low accuracy of the test results. Summary of the invention

[0004] The present invention provides a solid state hard disk performance testing method, device, electronic equipment and storage medium, which are used to improve the accuracy of solid state hard disk testing.

[0005] The present invention provides a performance testing method for a solid state drive, comprising the following steps: Obtain static data of a target solid-state hard disk before testing, and store the static data before testing in a memory database, wherein the static data includes hard disk parameter data of the target solid-state hard disk and configuration data of a test machine for testing the target solid-state hard disk; Testing the target solid-state hard disk based on the testing machine, and receiving real-time test data during the test of the target solid-state hard disk based on the memory database; Acquire static data after the target solid state drive test is completed, and store the static data after the test is completed in the memory database; Based on analyzing the static data before the test, the static data after the test, and the real-time test data in the memory database, the test result of the target solid state drive is determined.

[0006] According to a performance test method for a solid state drive provided by the present invention, the method determines the test result of the target solid state drive by analyzing static data before the test, static data after the test, and real-time test data in the memory database, including: Acquire index data from static data before the test, static data after the test is completed, and the real-time test data, wherein the index data includes performance index data and function index data; Comparing the indicator data with an expected indicator threshold corresponding to the indicator data to determine a first test result of the target solid state drive; Determining a second test result of the target solid state drive based on determining data consistency of static data before the test and static data after the test is completed; Determine a third test result of the target solid state drive based on comparing the real-time test data with historical test data of the target solid state drive; Based on the first test result, the second test result, and the third test result, a test result of the target solid state drive is determined.

[0007] According to a performance testing method for a solid state drive provided by the present invention, the method of comparing the real-time test data with the historical test data of the target solid state drive to determine a third test result of the target solid state drive includes: Acquire historical test data of the target solid-state drive, and generate a historical performance indicator line graph based on performance indicator data in the historical test data; Determine performance indicator data of the target solid state drive from the real-time test data, and generate a real-time performance indicator line graph based on the performance indicator data; The historical performance indicator line graph is compared with the real-time performance indicator line graph to determine a third test result of the target solid state drive.

[0008] According to a solid state drive performance testing method provided by the present invention, determining the performance index data of the target solid state drive from the real-time test data includes: Traversing each data item in the real-time test data; Based on the hash function, determine the hash value of each data item, and construct a hash table based on the hash value of each data item; Determine the performance indicators of the target solid state drive, and determine the hash value of each performance indicator based on the hash function; Based on the hash values ​​of the performance indicators, determining matching items that match the hash values ​​of the performance indicators from the hash table; Based on the matching items, performance indicator data of the target solid state drive is determined.

[0009] According to a performance testing method for a solid state drive provided by the present invention, after determining the test result of the target solid state drive, the method further includes: Based on the test result, scoring the target solid state drive; Based on the score, a quality risk of the target solid state drive is determined.

[0010] According to a performance testing method for a solid state drive provided by the present invention, receiving real-time test data during the test of the target solid state drive based on the memory database includes: Based on a pre-built data acquisition interface, real-time test data during the test of the target solid-state hard disk is received, and the real-time test data is stored in a memory database.

[0011] According to a performance testing method for a solid state drive provided by the present invention, after determining the test result of the target solid state drive, the method further includes: After the test of the target solid state drive is completed, the static data before the test, the static data after the test and the real-time test data in the memory database are stored in the physical database, and the static data before the test, the static data after the test and the real-time test data in the memory database are deleted.

[0012] The present invention also provides a performance testing device for a solid state hard disk, comprising the following modules: A pre-test data acquisition module is used to acquire static data of a target solid-state hard disk before testing, and store the static data before testing in a memory database, wherein the static data includes hard disk parameter data of the target solid-state hard disk and configuration data of a test machine for testing the target solid-state hard disk; A test data acquisition module, used to test the target solid-state hard disk based on the test machine, and receive real-time test data during the test of the target solid-state hard disk based on the memory database; A post-test data acquisition module, used to acquire static data of the target solid-state hard disk after the test is completed, and store the static data after the test is completed in the memory database; The test result determination module is used to determine the test result of the target solid state drive based on analyzing the static data before the test, the static data after the test is completed, and the real-time test data in the memory database.

[0013] The present invention also provides an electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, a performance test method for a solid state hard disk as described above is implemented.

[0014] The present invention also provides a non-transitory computer-readable storage medium having a computer program stored thereon, and when the computer program is executed by a processor, the solid-state hard disk performance testing method described in any one of the above is implemented.

[0015] The performance test method, device, electronic device and storage medium of the solid-state hard disk provided by the present invention introduce a memory database as a real-time storage medium in the target solid-state hard disk test process, store the static data before the target solid-state hard disk test, the test data during the target solid-state hard disk test process and the static data after the target solid-state hard disk test is completed, and perform performance testing based on the stored data. Because the memory database utilizes the high-speed read and write performance and low-latency characteristics of the memory, the access speed and response performance of the database can be greatly improved, and it can be well adapted to the storage requirements for hard disk performance indicators and related logs during the performance and function testing process, thereby improving the accuracy of the target solid-state hard disk test. BRIEF DESCRIPTION OF THE DRAWINGS

[0016] In order to more clearly illustrate the technical solutions in the present invention or the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0017] Figure 1 It is a flow chart of the performance testing method of the solid state drive provided by the present invention.

[0018] Figure 2 The present invention provides a bandwidth data real-time display discount chart.

[0019] Figure 3 It is a processing schematic diagram of the data analysis module provided by the present invention.

[0020] Figure 4 It is a schematic diagram of the data acquisition synchronization process provided by the present invention.

[0021] Figure 5 It is a structural schematic diagram of a performance testing device for a solid state hard disk provided by the present invention.

[0022] Figure 6 It is a structural schematic diagram of the electronic device provided by the present invention. DETAILED DESCRIPTION

[0023] In order to make the purpose, technical solution and advantages of the present invention clearer, the technical solution of the present invention will be clearly and completely described below in conjunction with the drawings of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0024] As an emerging storage technology, SSD has become the data storage choice of more and more enterprise and individual users due to its fast reading and writing, light weight, low energy consumption, and small size, which are not available in traditional mechanical hard disks. It is widely used in various industries. With the evolution of SSD technology, SSD products are changing more and more rapidly. How to better ensure product quality has become an issue that SSD manufacturers are paying more and more attention to.

[0025] The testing technology for SSD products has been improved and enhanced compared to traditional hard disks, but there are still many problems to be solved. The testing of SSD products mainly includes two types of testing: performance testing and functional testing.

[0026] For the performance test of SSD, it is necessary to record the various IO performance indicators of the hard disk in real time and make corresponding analysis. The relevant methods generally use test tools (such as fio tools). Although the functions of the tools are relatively complete, they cannot record the full amount of performance indicators at a very small time granularity (such as 1ms) in terms of test indicators. This is because the operation of recording indicator data itself requires a large number of read and write operations, a large amount of storage space and read and write overhead, which will affect the accuracy of the test tool results to a certain extent. How to record the real-time performance indicators of the hard disk test process in a more detailed and accurate manner is an important issue that needs to be optimized and improved in the current SSD performance test.

[0027] In the field of functional testing, when SSD products have functional problems, how to quickly collect relevant logs and locate the cause of the problem has always been one of the common work scenarios encountered by product testing and development engineers in their work. However, the current problem location is relatively single and unstable due to the relatively simple log information: it mainly includes the logs recorded by the SSD product firmware and the operating system system related logs (such as dmesg, / var / log / message and other Linux system logs), and the related logs may still be lost.

[0028] In view of the defects of the related methods, the present invention provides a performance testing method for a solid state hard disk. Figure 1 FIG. 1 is a flow chart of a method for testing the performance of a solid state drive provided by the present invention. Figure 1 As shown, the method includes the following: Step 110, obtaining static data of the target solid state drive before the test, and storing the static data before the test in a memory database, wherein the static data includes hard disk parameter data of the target solid state drive and configuration data of a test machine for testing the target solid state drive; Step 120, testing the target solid state drive based on the testing machine, and receiving test data during the test of the target solid state drive based on the memory database; Step 130, obtaining static data after the target solid state drive test is completed, and storing the static data after the test is completed in the memory database; Step 140 , based on analyzing the static data before the test, the static data after the test, and the test data in the memory database, determine the test result of the target solid state drive.

[0029] The execution subject of the performance test method of the solid state drive provided by the present invention can be an electronic device, a component in an electronic device, an integrated circuit, or a chip. The electronic device can be a mobile electronic device or a non-mobile electronic device. Exemplarily, the mobile electronic device can be a mobile phone, a tablet computer, a laptop computer, a PDA, an ultra-mobile personal computer (UMPC), a netbook, or a personal digital assistant (PDA), etc., and the non-mobile electronic device can be a server, a network attached storage (NAS), or a personal computer (PC), etc., which is not specifically limited by the present invention.

[0030] The following takes a computer executing the performance testing method of the solid state drive provided by the present invention as an example to describe the technical solution of the present invention in detail.

[0031] In step 110, static data of the target solid state drive before testing is obtained and stored in a memory database, wherein the static data includes hard disk parameter data of the target solid state drive and configuration data of a test machine for testing the target solid state drive.

[0032] Before testing the target solid state drive, static data is acquired, wherein the static data includes hard disk parameter data and configuration data of a test machine for testing the target solid state drive.

[0033] Specifically, the hard disk parameter data of the target solid-state drive includes: data related to hard disk configuration information (such as capacity, firmware version, main control model, NAND particle type, etc.), read and write speed, response time / latency, power consumption, etc.; The configuration data of the test machine includes: hardware configuration (central processing unit (CPU) model, memory model and capacity, maximum number of hard disks supported, peripheral component interconnection standard" or "peripheral component interconnect express (PCIE) interface type), software information (operating system version, kernel version), etc.

[0034] Among them, the configuration data of the test machine may also include: the association information between the target solid state drive and the test machine: the slot position of the target solid state drive, the binding relationship between the target solid state drive and the CPU core, etc.

[0035] After obtaining the above static data, it can be stored in the relevant table of the in-memory database.

[0036] Among them, the In-Memory Database (IMDB) is a database management system that stores data directly in the computer's memory instead of on a traditional disk or solid-state drive. This storage method takes advantage of the much higher read and write speed of memory than disk, thus significantly improving the performance of data access, making it particularly suitable for large-scale data processing scenarios that require fast response.

[0037] Since data is stored in memory and has strong real-time performance, in-memory databases can complete data operations within milliseconds or even microseconds, greatly reducing data access latency and improving user experience and system efficiency.

[0038] In step 120, the target solid state drive is tested based on the testing machine, and test data during the test of the target solid state drive is received based on the memory database.

[0039] The test machine can be installed with special SSD testing software, which usually contains multiple test modules that can simulate read and write operations in various actual usage scenarios to comprehensively evaluate the performance and stability of the SSD.

[0040] Connect the target SSD to the test machine through the appropriate interface, start the test process through the test software, and select the corresponding test module and parameter settings as needed.

[0041] During the test, the test software will send the performance parameters and test results of the target SSD to the memory database in real time. The memory database uses its high-speed reading and writing capabilities to quickly capture and store this data.

[0042] Optionally, the acquired test data is stored in a table of a memory database. The stored data may be specifically as follows: System resource data: Contains the operating status information of devices such as CPU, memory, and network. This type of data is formatted and stored in the memory database in real time through the data acquisition interface. The data format is shown in Table 1: Table 1 System resource data table

[0043] System operation log data: Through the pre-opened system log interface, collect relevant log interface data into the log interface file. The data format is shown in Table 2: Table 2 Log data file table

[0044] The log file content is stored in the data table using a blob type field.

[0045] As for the information of the target SSD itself and related IO indicators, they are as follows: Disk attribute data. The storage time granularity of this type of data does not need to be very small (usually 1 second level is sufficient). The specific data examples are shown in Table 3: Table 3 Disk attribute data table

[0046] Disk IO indicator data: The disk index data requires a relatively small time granularity (usually 0.1s or shorter). This granularity can be configured according to specific requirements. The specific data examples are shown in Table 4: Table 4 Disk IO indicator data table

[0047] In step 130, the static data after the target solid state drive test is completed is obtained, and the static data after the test is completed is stored in the memory database.

[0048] After the target solid state drive is tested, static data after the target solid state drive is tested is obtained, wherein the static data after the test also includes hard disk parameter data of the target solid state drive and configuration data of the test machine used to test the target solid state drive.

[0049] It is understandable that by obtaining the test data of the target SSD before and after the test and comparing the data before and after the test, it is possible to determine whether the parameters of the target SSD have changed, and to accurately identify the changes in the performance parameters of the SSD during the test. This comparison method can reduce errors caused by subjective judgment or external interference and improve the accuracy of the evaluation.

[0050] If after testing, it is found that some parameters of the SSD have changed significantly (such as a decrease in read and write speed, an increase in response time, etc.), the problem can be quickly located and appropriate measures can be taken to repair or replace it. This helps to shorten troubleshooting time and improve system stability and reliability.

[0051] In step 140, based on analyzing the static data before the test, the static data after the test, and the test data in the memory database, the test result of the target solid state drive is determined.

[0052] After acquiring static data before the test, static data after the test is completed, and test data generated during the test, the acquired data is analyzed in a memory database to determine the test result of the target solid state drive.

[0053] Specifically, the data in the memory database is analyzed, which may include: You can set indicator-related thresholds, such as system memory data. If the memory usage exceeds 90%, an alarm can be triggered, the test process can be automatically interrupted 100%, and all data snapshots at the test interruption time node can be recorded to preserve the problem site.

[0054] For the performance indicators collected in real time, such as the bandwidth data of disk nvme1, a line chart of the data at a specified time granularity is displayed in real time, such as Figure 2 The bandwidth data provided by the present invention is displayed in real time as shown in the discount graph, where the horizontal axis represents the time dimension and the vertical axis represents the bandwidth data. The line graph can be refreshed dynamically; you can choose to compare historical test records to view the real-time differences with historical test records; you can choose to compare and display SPEC expected indicators to view in real time whether the measured data reaches the expected SPEC expected indicator data. The display content can include basic data and statistical data that has been aggregated and calculated, such as data consistency.

[0055] If a disk function failure occurs during the test, the fault location and troubleshooting can be performed based on the collected data. The following scenario functions are available: If a test disk has a functional failure, after collecting relevant logs in real time, first search for obvious failure log data based on the keyword library (historical accumulation), then match the problem library (historical accumulation) with the system status data (memory, CPU) at the time of failure (performance indicators such as read and write, physical data such as temperature) to see if there are similar scenarios, and give a preliminary conclusion on the fault location based on the judgment logic, and provide corresponding supporting data. If the test disk performance fluctuates abnormally, the root cause of the problem can also be determined and located based on the matching with the historically accumulated performance problem library and data can be provided for support.

[0056] The accuracy of the above problem location process will become more accurate as the amount of data obtained during the test accumulates.

[0057] Specifically, Figure 3 The data analysis module processing diagram provided by the present invention is shown. The data analysis module can be set to analyze the acquired static data before the test, the static data after the test, and the real-time test data. The analyzed indicator data is displayed in real time, and the problems determined by the analysis are located in real time. The data after the test can be subjected to more complex, multi-dimensional data analysis, mining and display, and the data model can be modeled based on a large amount of data. Application scenarios include data trend display analysis, test functions, and the accumulation and improvement of the performance problem library. The disk version is scored for comprehensive performance data, and graded according to the function and performance of the disk, and the corresponding quality assessment of the disk version is given to identify the existing quality risks.

[0058] The performance test method of the solid-state hard disk provided by the present invention introduces a memory database as a real-time storage medium in the target solid-state hard disk test process, stores static data before the target solid-state hard disk test, test data during the target solid-state hard disk test process, and static data after the target solid-state hard disk test is completed, and performs performance testing based on the stored data. Because the memory database utilizes the high-speed read and write performance and low-latency characteristics of the memory, the access speed and response performance of the database can be greatly improved, and it can be well adapted to the storage requirements for hard disk performance indicators and related logs during the performance and function testing process, thereby improving the accuracy of the target solid-state hard disk test.

[0059] In one embodiment, based on analyzing the static data before the test, the static data after the test is completed, and the real-time test data in the memory database, the test result of the target solid-state hard disk is determined, including: obtaining indicator data from the static data before the test, the static data after the test is completed, and the real-time test data, the indicator data including performance indicator data and functional indicator data; comparing the indicator data with the expected indicator threshold corresponding to the indicator data to determine the first test result of the target solid-state hard disk; determining the second test result of the target solid-state hard disk based on determining the data consistency of the static data before the test and the static data after the test is completed; determining the third test result of the target solid-state hard disk based on comparing the real-time test data with the historical test data of the target solid-state hard disk; determining the test result of the target solid-state hard disk based on the first test result, the second test result, and the third test result.

[0060] Determine the expected indicator thresholds for each indicator data in advance. You can set the expected thresholds for each indicator based on the specifications of the target SSD, industry standards, or customer requirements. For example, for system memory data, if the memory usage exceeds 90%, you can set an abnormal alarm, 100% automatically interrupt the test process and record all data snapshots at the test interruption time node to retain the problem site. Compare the collected indicator data with the corresponding expected thresholds to determine whether the target SSD meets the performance and functional requirements.

[0061] Based on the comparison result, determine whether the target solid state drive meets expectations in terms of performance and function, and form a first test result.

[0062] Based on the data consistency evaluation result, the performance of the target solid state drive in terms of data protection and system stability is determined to form a second test result.

[0063] Obtain historical test data of the target SSD, including previous performance evaluation results, failure records, etc. Compare the real-time test data with the historical data to analyze the performance change trend and possible problems of the target SSD. Pay special attention to performance degradation, abnormal fluctuations, or new failure modes. Based on the comparative analysis of real-time test data and historical data, evaluate the long-term stability and performance change trend of the target SSD to form the third test result.

[0064] The first, second and third test results are comprehensively evaluated, and the importance and interrelationship of each test result are considered. Based on the comprehensive evaluation result, the test result of the target solid state drive is determined.

[0065] In one embodiment, a third test result of the target solid-state hard disk is determined based on comparing the real-time test data with the historical test data of the target solid-state hard disk, including: obtaining the historical test data of the target solid-state hard disk, and generating a historical performance indicator line graph based on the performance indicator data in the historical test data; determining the performance indicator data of the target solid-state hard disk from the real-time test data, and generating a real-time performance indicator line graph based on the performance indicator data; comparing the historical performance indicator line graph with the real-time performance indicator line graph to determine the third test result of the target solid-state hard disk.

[0066] Collect historical test data of the target SSD. This data is usually stored in a database, file, or dedicated test management system. The historical test data should include performance indicator data at multiple time points, such as read and write speed, IOPS (input and output operations per second), latency, etc. This data should cover the entire life cycle of the target SSD or at least a sufficiently long period of time to be able to observe performance trends.

[0067] Generate a historical performance indicator line chart based on the performance indicator data in the acquired historical test data. The line chart should clearly show the changes of each performance indicator over time.

[0068] Based on the performance indicator data in the real-time test data collected during the real-time test process, a real-time performance indicator line chart is generated.

[0069] Compare the historical performance indicator line graph with the real-time performance indicator line graph to check whether the real-time performance indicator line graph continues the trend of the historical line graph. If the trends of the two are consistent, it means that the performance of the target SSD is stable; if the trend changes significantly, you need to further analyze the cause. Observe whether there are abnormal performance fluctuations in the real-time line graph. These fluctuations may be caused by factors such as the instability of the test environment, the failure of the target SSD itself, or external interference. It is also necessary to pay attention to whether the performance indicators in the real-time line graph show a downward trend. If multiple performance indicators are declining, it may indicate that the performance of the target SSD is deteriorating and measures need to be taken to maintain or replace it.

[0070] Based on the comparison results of the historical and real-time performance indicator line graphs, the third test result of the target solid state drive can be determined.

[0071] In one embodiment, determining the performance indicator data of the target solid-state hard disk from the real-time test data includes: traversing each data item in the real-time test data; determining the hash value of each data item based on a hash function, and constructing a hash table based on the hash value of each data item; determining the performance indicator of the target solid-state hard disk, and determining the hash value of each performance indicator based on the hash function; based on the hash value of each performance indicator, determining a matching item from the hash table that matches the hash value of each performance indicator; based on the matching item, determining the performance indicator data of the target solid-state hard disk.

[0072] Traverse each data item in the real-time test data set. For each data item traversed, use the predefined hash function to calculate its hash value. A hash function is a function that transforms an input of any length into a fixed-length output (hash value) through a certain algorithm.

[0073] A hash table is constructed by using the calculated hash value as the key and the corresponding data item or reference to the data item (such as a pointer or index) as the value. A hash table is a data structure that quickly accesses data items through hash values. It allows data search, insertion, and deletion operations to be completed within O(1) time complexity.

[0074] For each performance indicator, the hash value is calculated using the previously defined hash function. The calculated performance indicator hash value is used as the key to find the matching item in the hash table. If there is an item corresponding to the hash value in the hash table, it means that the real-time test data contains the data of the performance indicator.

[0075] Based on the above process, the real-time test data can be efficiently traversed, and the performance indicator data of the target solid-state drive can be quickly located and verified using the hash table. This method not only improves the efficiency of data processing, but also reduces the complexity of data retrieval and verification.

[0076] In one embodiment, after determining the test result of the target solid state drive, the method further includes: scoring the target solid state drive based on the test result; and determining the quality risk of the target solid state drive based on the score.

[0077] Specifically, the data after the test can be analyzed and displayed in a more complex and multi-dimensional way, and the data model can be built based on a large amount of data. Application scenarios include data trend display analysis and test functions, and the cumulative improvement of the performance problem library. The disk version is scored for comprehensive performance data, and graded according to the functions and performance of the disk, giving the corresponding quality assessment of the disk version and identifying the quality risks.

[0078] In one embodiment, based on the memory database, real-time test data during the target solid-state hard drive test process is received, including: based on a pre-built data acquisition interface, real-time test data during the target solid-state hard drive test process is received, and the real-time test data is stored in the memory database.

[0079] Design and implement one or more data acquisition interfaces based on data acquisition requirements. These interfaces can be software-level APIs (application programming interfaces) or hardware-level physical interfaces (such as reading data directly through sensors). The interface design should ensure that the required real-time test data can be collected stably and reliably.

[0080] The received real-time test data is written into the memory database. During the writing process, the corresponding index structure can be established according to the characteristics of the data and the query requirements to improve the efficiency of data retrieval and query.

[0081] In one embodiment, after determining the test result of the target solid-state hard drive, it also includes: after the test of the target solid-state hard drive is completed, the static data before the test, the static data after the test is completed, and the real-time test data in the memory database are stored in the physical database, and the static data before the test, the static data after the test is completed, and the real-time test data in the memory database are deleted.

[0082] It is understandable that after the test is completed, the system detects in real time that the target SSD no longer has IO data, and the real-time data collection will stop, and the corresponding log collection process will also end. Since the access speed of the memory database will decrease as the amount of data increases, the memory database will only store test data within a period of time (such as 3 days). The historical data will be deleted after being synchronized to the physical database.

[0083] The specific collection and synchronization process can be as follows Figure 4 The data acquisition synchronization process provided by the present invention is shown in the schematic diagram. Before the target solid-state hard disk is tested based on the test machine, the static data of the target solid-state hard disk before the test is obtained and stored in the memory database. The test machine performs performance testing and functional testing on the target solid-state hard disk, obtains real-time test data during the test of the target solid-state hard disk, and stores it in the memory database. After the test is completed, the static data after the target solid-state hard disk test is completed is obtained and stored in the memory database.

[0084] After being stored in the memory database, data analysis and display are performed. After the data analysis and display are completed, the data stored in the memory database is synchronized to the physical database.

[0085] The performance testing device of the solid state drive provided by the present invention is described below. The performance testing device of the solid state drive described below and the performance testing method of the solid state drive described above can be referred to each other.

[0086] like Figure 5 As shown, the device comprises: A pre-test data acquisition module 510 is used to acquire static data of a target solid-state hard disk before testing, and store the static data before testing in a memory database, wherein the static data includes hard disk parameter data of the target solid-state hard disk and configuration data of a test machine for testing the target solid-state hard disk; A test data acquisition module 520, configured to test the target solid state drive based on the test machine, and receive real-time test data during the test of the target solid state drive based on the memory database; A post-test data acquisition module 530 is used to acquire static data of the target solid-state hard disk after the test is completed, and store the static data after the test is completed in the memory database; The test result determination module 540 is used to determine the test result of the target solid state drive based on analyzing the static data before the test, the static data after the test, and the real-time test data in the memory database.

[0087] The performance test device of the solid-state hard disk provided by the present invention introduces a memory database as a real-time storage medium in the target solid-state hard disk test process, stores static data before the target solid-state hard disk test, test data during the target solid-state hard disk test process, and static data after the target solid-state hard disk test is completed, and performs performance testing based on the stored data. Because the memory database utilizes the high-speed read and write performance and low-latency characteristics of the memory, the access speed and response performance of the database can be greatly improved, and it can be well adapted to the storage requirements for hard disk performance indicators and related logs during the performance and function testing process, thereby improving the accuracy of the target solid-state hard disk test.

[0088] In one embodiment, the test result determination module 540 is specifically used to: The step of analyzing the static data before the test, the static data after the test, and the real-time test data in the memory database to determine the test result of the target solid state drive includes: Acquire index data from static data before the test, static data after the test is completed, and the real-time test data, wherein the index data includes performance index data and function index data; Comparing the indicator data with an expected indicator threshold corresponding to the indicator data to determine a first test result of the target solid state drive; Determining a second test result of the target solid state drive based on determining data consistency of static data before the test and static data after the test is completed; Determine a third test result of the target solid state drive based on comparing the real-time test data with historical test data of the target solid state drive; Based on the first test result, the second test result, and the third test result, a test result of the target solid state drive is determined.

[0089] In one embodiment, the test result determination module 540 is further specifically configured to: The step of comparing the real-time test data with the historical test data of the target solid state drive to determine a third test result of the target solid state drive includes: Acquire historical test data of the target solid-state drive, and generate a historical performance indicator line graph based on performance indicator data in the historical test data; Determine performance indicator data of the target solid state drive from the real-time test data, and generate a real-time performance indicator line graph based on the performance indicator data; The historical performance indicator line graph is compared with the real-time performance indicator line graph to determine a third test result of the target solid state drive.

[0090] In one embodiment, the test result determination module 540 is further specifically configured to: Determining the performance indicator data of the target solid state drive from the real-time test data includes: Traversing each data item in the real-time test data; Based on the hash function, determine the hash value of each data item, and construct a hash table based on the hash value of each data item; Determine the performance indicators of the target solid state drive, and determine the hash value of each performance indicator based on the hash function; Based on the hash values ​​of the performance indicators, determining matching items that match the hash values ​​of the performance indicators from the hash table; Based on the matching items, performance indicator data of the target solid state drive is determined.

[0091] In one embodiment, the test result determination module 540 is further specifically configured to: After determining the test result of the target solid state drive, the method further includes: scoring the target solid state drive based on the test result; and determining the quality risk of the target solid state drive based on the score.

[0092] In one embodiment, the test data acquisition module 520 is specifically used to: Based on the memory database, receiving real-time test data during the test of the target solid state drive includes: Based on a pre-built data acquisition interface, real-time test data during the test of the target solid-state hard disk is received, and the real-time test data is stored in a memory database.

[0093] In one embodiment, the test result determination module 540 is further specifically configured to: After determining the test result of the target solid state drive, the method further includes: After the test of the target solid state drive is completed, the static data before the test, the static data after the test and the real-time test data in the memory database are stored in the physical database, and the static data before the test, the static data after the test and the real-time test data in the memory database are deleted.

[0094] Figure 6 An example of a physical structure diagram of an electronic device is shown in FIG. Figure 6 As shown, the electronic device may include: a processor 610, a communications interface 620, a memory 630 and a communication bus 640, wherein the processor 610, the communications interface 620 and the memory 630 communicate with each other through the communication bus 640. The processor 610 may call the logic instructions in the memory 630 to execute the performance test method of the solid state drive, the method comprising: obtaining static data of the target solid state drive before the test, and storing the static data before the test in a memory database, the static data including hard disk parameter data of the target solid state drive and configuration data of a test machine for testing the target solid state drive; Testing the target solid-state hard disk based on the testing machine, and receiving real-time test data during the test of the target solid-state hard disk based on the memory database; Acquire static data after the target solid state drive test is completed, and store the static data after the test is completed in the memory database; Based on analyzing the static data before the test, the static data after the test, and the real-time test data in the memory database, the test result of the target solid state drive is determined.

[0095] In addition, the logic instructions in the above-mentioned memory 630 can be implemented in the form of a software functional unit and can be stored in a computer-readable storage medium when it is sold or used as an independent product. Based on such an understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art or the part of the technical solution, can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), disk or optical disk, etc. Various media that can store program codes.

[0096] On the other hand, the present invention further provides a computer program product, the computer program product includes a computer program, the computer program can be stored on a non-transitory computer-readable storage medium, when the computer program is executed by a processor, the computer can execute the solid-state hard disk performance test method provided by the above methods, the method includes: obtaining static data of a target solid-state hard disk before testing, and storing the static data before testing in a memory database, the static data including hard disk parameter data of the target solid-state hard disk and configuration data of a test machine for testing the target solid-state hard disk; Testing the target solid-state hard disk based on the testing machine, and receiving real-time test data during the test of the target solid-state hard disk based on the memory database; Acquire static data after the target solid state drive test is completed, and store the static data after the test is completed in the memory database; Based on analyzing the static data before the test, the static data after the test, and the real-time test data in the memory database, the test result of the target solid state drive is determined.

[0097] In another aspect, the present invention further provides a non-transitory computer-readable storage medium having a computer program stored thereon, which is implemented when the computer program is executed by a processor to perform the performance test method of the solid-state hard disk provided by the above methods, the method comprising: obtaining static data of a target solid-state hard disk before the test, and storing the static data before the test in a memory database, the static data comprising hard disk parameter data of the target solid-state hard disk and configuration data of a test machine for testing the target solid-state hard disk; Testing the target solid-state hard disk based on the testing machine, and receiving real-time test data during the test of the target solid-state hard disk based on the memory database; Acquire static data after the target solid state drive test is completed, and store the static data after the test is completed in the memory database; Based on analyzing the static data before the test, the static data after the test, and the real-time test data in the memory database, the test result of the target solid state drive is determined.

[0098] The device embodiments described above are merely illustrative, wherein the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the scheme of this embodiment. Ordinary technicians in this field can understand and implement it without paying creative labor.

[0099] Through the description of the above implementation methods, those skilled in the art can clearly understand that each implementation method can be implemented by means of software plus a necessary general hardware platform, and of course, can also be implemented by hardware. Based on this understanding, the above technical solution is essentially or the part that contributes to the prior art can be embodied in the form of a software product, and the computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, a disk, an optical disk, etc., including a number of instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to execute the methods described in each embodiment or some parts of the embodiments.

[0100] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

1. A method for testing the performance of a solid state drive, characterized in that: The method comprises: Obtain static data of a target solid-state hard disk before testing, and store the static data before testing in a memory database, wherein the static data includes hard disk parameter data of the target solid-state hard disk and configuration data of a test machine for testing the target solid-state hard disk; Testing the target solid-state hard disk based on the testing machine, and receiving real-time test data during the test of the target solid-state hard disk based on the memory database; Acquire static data after the target solid state drive test is completed, and store the static data after the test is completed in the memory database; Based on analyzing the static data before the test, the static data after the test, and the real-time test data in the memory database, the test result of the target solid state drive is determined.

2. The performance testing method of a solid state drive according to claim 1, characterized in that: The step of analyzing the static data before the test, the static data after the test, and the real-time test data in the memory database to determine the test result of the target solid state drive includes: Acquire index data from static data before the test, static data after the test is completed, and the real-time test data, wherein the index data includes performance index data and function index data; Comparing the indicator data with an expected indicator threshold corresponding to the indicator data to determine a first test result of the target solid state drive; Determining a second test result of the target solid state drive based on determining data consistency of static data before the test and static data after the test is completed; Determine a third test result of the target solid state drive based on comparing the real-time test data with historical test data of the target solid state drive; Based on the first test result, the second test result, and the third test result, a test result of the target solid state drive is determined.

3. The performance testing method of a solid state drive according to claim 2, characterized in that: The step of comparing the real-time test data with the historical test data of the target solid state drive to determine a third test result of the target solid state drive includes: Acquire historical test data of the target solid-state drive, and generate a historical performance indicator line graph based on performance indicator data in the historical test data; Determine performance indicator data of the target solid state drive from the real-time test data, and generate a real-time performance indicator line graph based on the performance indicator data; The historical performance indicator line graph is compared with the real-time performance indicator line graph to determine a third test result of the target solid state drive.

4. The performance testing method of a solid state drive according to claim 3, characterized in that: Determining the performance indicator data of the target solid state drive from the real-time test data includes: Traversing each data item in the real-time test data; Based on the hash function, determine the hash value of each data item, and construct a hash table based on the hash value of each data item; Determine the performance indicators of the target solid state drive, and determine the hash value of each performance indicator based on the hash function; Based on the hash values ​​of the performance indicators, determining matching items that match the hash values ​​of the performance indicators from the hash table; Based on the matching items, performance indicator data of the target solid state drive is determined.

5. The performance testing method of a solid state drive according to claim 1, characterized in that: After determining the test result of the target solid state drive, the method further includes: Based on the test result, scoring the target solid state drive; Based on the score, a quality risk of the target solid state drive is determined.

6. The performance testing method of a solid state drive according to claim 1, characterized in that: The receiving, based on the memory database, real-time test data during the test of the target solid state drive comprises: Based on a pre-built data acquisition interface, real-time test data during the test of the target solid-state hard disk is received, and the real-time test data is stored in a memory database.

7. The performance testing method of a solid state drive according to claim 1, characterized in that: After determining the test result of the target solid state drive, the method further includes: After the test of the target solid state drive is completed, the static data before the test, the static data after the test and the real-time test data in the memory database are stored in the physical database, and the static data before the test, the static data after the test and the real-time test data in the memory database are deleted.

8. A performance testing device for a solid state hard disk, characterized in that: include: A pre-test data acquisition module is used to acquire static data of a target solid-state hard disk before testing, and store the static data before testing in a memory database, wherein the static data includes hard disk parameter data of the target solid-state hard disk and configuration data of a test machine for testing the target solid-state hard disk; A test data acquisition module, used to test the target solid-state hard disk based on the test machine, and receive real-time test data during the test of the target solid-state hard disk based on the memory database; A post-test data acquisition module, used to acquire static data of the target solid-state hard disk after the test is completed, and store the static data after the test is completed in the memory database; The test result determination module is used to determine the test result of the target solid state drive based on analyzing the static data before the test, the static data after the test is completed, and the real-time test data in the memory database.

9. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the computer program, the performance testing method for the solid state drive as claimed in any one of claims 1 to 7 is implemented.

10. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the performance testing method for a solid state drive as claimed in any one of claims 1 to 7 is implemented.

Citation Information

Patent Citations

  • Automatic unit test method and device based on memory database

    CN110750457A

  • Performance test method, device and equipment for memory database and readable storage medium

    CN110795319A

  • Automatic testing method and device, equipment and storage medium

    CN117609054A

  • Data association analysis method and apparatus, and computer device and storage medium

    WO2023029275A1