Automobile diagnostic instrument data management method and system, medium and program product

By dividing functional data partitions based on vehicle identification information in the vehicle diagnostic instrument, and combining the settings of priority identification, data buffer and multi-level index structure, the problems of data reading delay and high system resource occupation in the prior art are solved, and more efficient and real-time data management is achieved.

CN120071467AActive Publication Date: 2025-05-30SHENZHEN CHAOYUE TECH DEV CO LTD

Patent Information

Application Number
CN202510145920.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-02-10
Publication Date
2025-05-30
Estimated Expiration
2045-02-10

AI Technical Summary

Technical Problem

Existing automotive diagnostic instruments will experience data reading delays when processing large amounts of data, affecting the device response speed and user experience. Frequent file operations lead to excessive system resource utilization, reducing operational efficiency and real-time performance.

Method used

By dividing the diagnostic data into functional data partitions based on vehicle identification information, and assigning priority identifiers to each partition, setting up data buffers between adjacent partitions, building a circular storage linked list and multi-level index structure, adjusting the partition storage location and merging partitions, and optimizing the data access path.

Benefits of technology

It effectively reduces data access delay, reduces system resource occupancy, improves the operating efficiency and real-timeness of automotive diagnostic instruments, and optimizes the accuracy and reliability of data management.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120071467A_ABST
    Figure CN120071467A_ABST
Patent Text Reader

Abstract

The invention discloses an automobile diagnostic instrument data management method and system, a medium and a program product, and the method comprises the steps: dividing diagnostic data into a plurality of functional data partitions based on vehicle identification information; distributing a priority identifier for each functional data partition, and setting a data buffer area between the adjacent functional data partitions; constructing a circular storage linked list, and setting a plurality of data check points in the circular storage linked list; according to the priority identifier, adjusting the storage position of the functional data partition in the circular storage linked list, so that the high-priority functional data partition is located in a preset active area of the circular storage linked list; when the data size of any functional data partition exceeds a preset storage threshold value, triggering a splitting operation of the functional data partition; and based on the access frequency and the data volume of the functional data partitions, executing a merging operation of the adjacent functional data partitions. According to the invention, the data access delay is reduced, the system resource occupancy rate is reduced, and the operation efficiency and real-time performance of the automobile diagnosis instrument are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application belongs to the field of diagnostic data management, and particularly relates to a method, system, medium, and program product for managing data of an automotive diagnostic instrument. Background Art

[0002] With the increasing depth of after-sales service in the automotive industry, the number of vehicle models that an automotive diagnostic instrument needs to support is increasing day by day, resulting in the device frequently accessing a large amount of data during operation. Existing diagnostic devices usually adopt a proprietary data reading technology in data management. When there are a large number of vehicle models and a large amount of data under a brand, this technology will experience data reading delays, which not only affects the response speed of the device but also reduces the user's operation experience.

[0003] In related technologies, an encapsulated file system is usually used for data storage and management. This solution encapsulates the file system and creates a file index structure, enabling quick location of target data during data retrieval and reducing the time overhead of data searching.

[0004] However, when frequently accessing and reading data of different vehicle models, since the file system needs to repeatedly perform file opening, reading, and closing operations, it will cause excessive system resource occupancy, thereby reducing the operating efficiency and real-time performance of the automotive diagnostic instrument. Summary of the Invention

[0005] This application provides a method, system, medium, and program product for managing data of an automotive diagnostic instrument, which is used to reduce data access and storage delays, reduce the system resource occupancy rate, and thereby improve the operating efficiency and real-time performance of the automotive diagnostic instrument.

[0006] In a first aspect, this application provides a method for managing data of an automotive diagnostic instrument, which receives vehicle identification information and divides diagnostic data into several functional data partitions based on the vehicle identification information. The functional data partitions are divided according to the types of vehicle system modules; Assign a priority identifier to each functional data partition, and set a data buffer between adjacent functional data partitions. The data buffer is used to temporarily store data during partition switching; Construct a circular storage linked list, and set several data checkpoints in the circular storage linked list. The data checkpoints are used to record data access status and data integrity information; Adjust the storage positions of the functional data partitions in the circular storage linked list according to the priority identifier, so that the high-priority functional data partitions are located in a preset active area of the circular storage linked list; When the data volume of any functional data partition exceeds a preset storage threshold, trigger the split operation of the functional data partition; Based on the access frequency and data volume of functional data partitions, perform the merging operation of adjacent functional data partitions. The merging operation combines functional data partitions with a data volume less than a preset data volume and an access feature similarity greater than a preset similarity.

[0007] By adopting the above technical solution, by dividing diagnostic data into functional data partitions based on vehicle identification information, combined with the setting of priority identifiers and data buffers, the data has a clear organizational structure and priority distinction during storage. The set data buffer can avoid data loss during partition switching and ensure the continuity and integrity of the data. The data checkpoints in the circular storage linked list can promptly detect data access anomalies and data corruption, improving the reliability of the data. By adjusting the high-priority functional data partitions to the preset active area, the addressing time for data access is reduced, and the data read / write efficiency is improved. The partition splitting operation triggered when the data volume exceeds the threshold avoids performance degradation caused by an overly large data volume in a single partition. The partition merging operation based on access frequency and data volume can reduce storage fragmentation, improve storage space utilization, and at the same time optimize the data access path by merging partitions with similar access characteristics, reduce data access and storage latency, reduce the system resource occupancy rate, and thus improve the operating efficiency and real-time performance of the vehicle diagnostic instrument.

[0008] Combined with some examples of the first aspect, in these examples, assign a priority identifier to each functional data partition and set a data buffer between adjacent functional data partitions, specifically including: Establish a priority scoring matrix based on the real-time requirements, data reliability level, and system importance of the vehicle system module; Calculate the comprehensive priority score of each functional data partition based on the priority scoring matrix and map the comprehensive priority score to a discrete priority identifier; Set a data buffer between adjacent functional data partitions.

[0009] By adopting the above technical solution, by establishing a priority scoring matrix that includes real-time requirements, data reliability level, and system importance, a comprehensive evaluation of the importance of functional data partitions is achieved. The comprehensive priority score calculated based on the scoring matrix can accurately reflect the importance of different functional data partitions and avoid the deviation caused by subjective judgment. Mapping the comprehensive priority score to a discrete priority identifier simplifies the representation of priorities and facilitates rapid processing and identification by the system. The data buffer set between adjacent functional data partitions serves as a transfer station for data exchange, reducing the risk of data loss during data transmission, enabling the system to more accurately identify and protect critical data, improving the accuracy and reliability of data management, and at the same time optimizing the allocation efficiency of system resources.

[0010] Combined with some examples of the first aspect, in these examples, the splitting operation of the functional data partition specifically includes: Obtain the data structure information and data correlation degree information of the functional data partition to be split. The data correlation degree information includes the access relationship and data flow direction between data items. The functional data partition to be split is a functional data partition with a data volume exceeding a preset storage threshold; Identify data subsets in the functional data partition to be split with a data correlation degree higher than the preset correlation degree according to the data structure information and data correlation degree information, and calculate the data interaction frequency between the data subsets; Based on the data interaction frequency, divide the functional data partition to be split to generate several sub-data partitions, so that the data correlation degree within each sub-data partition is maximized, and the data interaction frequency between sub-data partitions is minimized; Assign a new priority identifier to the sub-data partition. The new priority identifier is the same as the priority identifier of the functional data partition to be split; Statistical performance parameters of the sub-data partition. The performance parameters include access latency time, storage space utilization rate, and data throughput; When the performance parameter exceeds the preset range, trigger the boundary adjustment operation of the sub-data partition. The boundary adjustment operation includes re-dividing the data range of the sub-data partition or merging sub-data partitions with a data access efficiency lower than the preset efficiency.

[0011] By adopting the above technical solutions, by analyzing the data structure information and data correlation degree information of the functional data partition to be split, the system can identify the internal relationship between data. Partitioning based on the interaction frequency between data subsets ensures high cohesion within each sub-data partition and low coupling between sub-data partitions after splitting. Assigning the same priority identifier to the sub-data partition as the original partition maintains the continuity and consistency of data management. By statistically analyzing the performance parameters of the sub-data partition and performing boundary adjustment, the system can timely discover and solve performance bottlenecks. When performance parameters such as access latency time, storage space utilization rate, or data throughput exceed the preset range, the triggered boundary adjustment operation can optimize data distribution, improve the overall performance of the system, improve the utilization rate of storage space while ensuring data access efficiency, and make the system have better scalability and adaptability.

[0012] Combined with some examples of the first aspect, in these examples, after performing the merging operation of adjacent functional data partitions based on the access frequency and data volume of the functional data partition, the method further includes: Obtain the timestamp and spatial location information of each data record in the functional data partition; Divide the functional data partition into several continuous and non-overlapping time segments according to the timestamp; Calculate the spatial reference distance between data records within each time segment; Rearrange the data records within each time segment based on the spatial reference distance; Construct a multi-level index structure, which includes a time index and a spatial index. The time index points to each time segment, and the spatial index points to the rearranged data records; Count the access frequencies of the multi-level index structure, and store the index structures with access frequencies higher than the preset frequency in the cache; When the remaining space in the cache is less than the preset value, remove the index structure with the lowest access frequency.

[0013] By adopting the above technical solutions, by obtaining the timestamps and spatial location information of data records and performing sharding based on the time dimension, the system realizes the temporal management of data. Calculating the spatial reference distance and rearranging the data records optimize the distribution of data on the physical storage medium and reduce the physical addressing overhead during data access. The constructed multi-level index structure combines the time index and the spatial index, providing a multi-dimensional fast access path for data query. By counting the access frequencies of the index structure and storing the index structures with high-frequency access in the cache, the access latency of frequently used data is significantly reduced. The strategy of removing the index structure with the lowest access frequency when the cache space is insufficient ensures the efficient utilization of the cache space, improves the efficiency of data retrieval, reduces system resource consumption, and enables the system to better adapt to complex data access patterns.

[0014] Combined with some examples of the first aspect, in these examples, calculating the spatial reference distance between data records within each time segment specifically includes: Establish a data record access sequence and use the data record access sequence to record the access order of data records; Count the difference in physical storage locations between data records with adjacent access orders; Calculate the average value of the differences in physical storage locations and use the average value as the spatial reference distance.

[0015] By adopting the above technical solution, the access order of data records is recorded by establishing a data record access sequence, and the physical storage location difference between adjacent data records in the access order is statistically calculated. The average value of the physical storage location difference is calculated as the spatial reference distance, which can accurately quantify the physical storage location relationship between data records. When the physical storage location of a data record does not match its access order, a large spatial reference distance will lead to an increase in the addressing overhead of the storage system. By calculating the spatial reference distance, this unreasonable storage layout can be identified. The calculation result of the spatial reference distance can be used as the basis for data rearrangement. By adjusting the physical storage location of data records, data records that are frequently accessed adjacent to each other are also stored adjacent to each other in the physical storage space, thereby reducing the number of addressing times and the addressing time of the storage system, and improving the data access efficiency and the overall performance of the storage system.

[0016] Combined with some examples of the first aspect, in these examples, before constructing the multi-level index structure, the method further includes: Statistically calculate the data access density of each time segment, and classify the time segments according to the data access density; Allocate different index resources to time segments at different levels; Establish a dynamic level adjustment mechanism for time segments.

[0017] By adopting the above technical solution, through statistically calculating the data access density of time segments for classification and allocating different index resources, a differential configuration of index resources is achieved. The data access density reflects the number of data accesses per unit time. Time segments with a high access density often contain more hot data and require more index resources to support frequent data query operations. By classifying time segments, limited index resources can be preferentially allocated to time segments with a higher access density to ensure the fast access of hot data, and at the same time, fewer index resources are allocated to time segments with a lower access density, reducing the waste of index resources.

[0018] Combined with some examples of the first aspect, in these examples, establishing a dynamic level adjustment mechanism for time segments specifically includes: Real-time monitor the change in the access frequency of time segments; When the change in the access frequency exceeds the preset change range, reallocate the level of the time segment; Adjust the index resources according to the level after reallocation.

[0019] By adopting the above technical solution, by monitoring the change of access frequency of time segments in real time and dynamically adjusting the levels and index resources, the index structure can adapt to the change of data access patterns. The change of access frequency indicates that the importance of data in a certain time segment has changed. When the access frequency increases significantly, the existing index resources may not be able to meet the more frequent data access requirements, while when the access frequency decreases significantly, excessive index resources will cause waste of system resources, thus improving the utilization efficiency of system resources.

[0020] In a second aspect, an embodiment of the present application provides a data management system for an automotive diagnostic instrument, which includes: one or more processors and a memory; the memory is coupled to the one or more processors, and the memory is used to store computer program code, the computer program code includes computer instructions, and the one or more processors call the computer instructions to enable the system to execute the method described in the first aspect and any possible implementation manner in the first aspect.

[0021] In a third aspect, an embodiment of the present application provides a computer-readable storage medium, including instructions, when the above instructions run on the system, enabling the above system to execute the method described in the first aspect and any possible implementation manner in the first aspect.

[0022] In a fourth aspect, an embodiment of the present application provides a computer program product, characterized in that when the computer program product runs on the system, enabling the system to execute the method described in any possible implementation manner in the first aspect.

[0023] One or more technical solutions provided in the embodiments of the present application have at least the following technical effects or advantages: 1. The present application provides a data management method for an automotive diagnostic instrument. By dividing diagnostic data into functional data partitions based on vehicle identification information, combined with the setting of priority identifiers and data buffers, the data has a clear organizational structure and priority distinction when stored. The set data buffer can avoid data loss during partition switching and ensure the continuity and integrity of the data. The data checkpoints in the circular storage linked list can timely detect data access anomalies and data corruption, improving the reliability of the data. By adjusting the high-priority functional data partition to a preset active area, the addressing time for data access is reduced, and the data reading and writing efficiency is improved. The partition splitting operation triggered when the data volume exceeds the threshold avoids performance degradation caused by excessive data volume in a single partition. The partition merging operation based on access frequency and data volume can reduce storage fragmentation, improve the utilization rate of storage space, and at the same time optimize the data access path by merging partitions with similar access characteristics, reduce data access latency, reduce the system resource occupancy rate, and thus improve the operation efficiency and real-time performance of the automotive diagnostic instrument.

[0024] 2. The present application provides a method for managing data of an automotive diagnostic instrument. By analyzing the data structure information and data correlation information of the data partition to be split, the system can identify the internal relationship between the data. Based on the interaction frequency between data subsets, the partition is divided, ensuring high cohesion within each sub-data partition and low coupling between sub-data partitions after splitting. Assigning the same priority identifier to the sub-data partition as the original partition maintains the continuity and consistency of data management. By statistically analyzing the performance parameters of the sub-data partition and performing boundary adjustment, the system can timely detect and solve performance bottlenecks. When performance parameters such as access latency, storage space utilization rate, or data throughput exceed the preset range, the triggered boundary adjustment operation can optimize data distribution, improve the overall performance of the system, and while ensuring data access efficiency, improve the utilization rate of storage space, making the system have better scalability and adaptability.

[0025] 3. The present application provides a method for managing data of an automotive diagnostic instrument. By obtaining the timestamp and spatial location information of the data record and performing sharding based on the time dimension, the system realizes the chronological management of the data. Calculating the spatial reference distance and rearranging the data records optimize the distribution of data on the physical storage medium and reduce the physical addressing overhead during data access. The constructed multi-level index structure combines the time index and the spatial index, providing a multi-dimensional fast access path for data query. By statistically analyzing the access frequency of the index structure and storing the frequently accessed index structure in the cache, the access latency of common data is significantly reduced. When the cache space is insufficient, the strategy of removing the index structure with the lowest access frequency ensures the efficient use of the cache space, improves the efficiency of data retrieval, reduces system resource consumption, and enables the system to better adapt to complex data access patterns. Brief Description of the Drawings

[0026] Figure 1 is a flowchart of a method for managing data of an automotive diagnostic instrument in an embodiment of the present application.

[0027] Figure 2 is another flowchart of a method for managing data of an automotive diagnostic instrument in an embodiment of the present application.

[0028] Figure 3 is a schematic structural diagram of an entity device of an automotive diagnostic instrument data management system provided by an embodiment of the present application. Detailed Embodiments

[0029] The terms used in the following embodiments of the present application are only for the purpose of describing specific embodiments and are not intended to limit the present application. As used in the specification and appended claims of the present application, the singular forms "a", "an", "the", "above-mentioned", "said", and "this" are also intended to include the plural forms unless the context clearly indicates otherwise. It should also be understood that the term "and / or" used in the present application refers to any or all possible combinations including one or more of the listed items.

[0030] Hereinafter, the terms "first" and "second" are only used for descriptive purposes and should not be construed as implying or suggesting relative importance or implicitly indicating the quantity of the indicated technical features. Thus, the features defined with "first" and "second" may explicitly or implicitly include one or more of such features. In the description of the embodiments of the present application, unless otherwise specified, the meaning of "a plurality" is two or more.

[0031] The following uses an embodiment and in combination with Figure 1 , to describe a method for managing automotive diagnostic instrument data in the embodiments of the present application: Please refer to Figure 1 , which is a schematic flowchart of a method for managing automotive diagnostic instrument data in the embodiments of the present application.

[0032] S101. Receive vehicle identification information and divide diagnostic data into several functional data partitions based on the vehicle identification information; The system receives vehicle identification information and divides the diagnostic data into several functional data partitions based on the vehicle identification information. The functional data partitions are divided according to the vehicle system module type.

[0033] In this step, the system first receives the vehicle identification information. The vehicle identification information may include various information that can uniquely identify the vehicle, such as the brand, model, year, VIN code, etc. of the vehicle. The system can obtain the vehicle identification information through various means, such as reading from the vehicle's electronic control unit (ECU), obtaining from the vehicle diagnostic interface, obtaining from user input, etc.

[0034] After obtaining the vehicle identification information, the system divides the diagnostic data into several functional data partitions according to the pre-established vehicle model function data mapping table. The functional data partitions are divided according to different functional systems or modules of the vehicle, such as the engine system, transmission system, braking system, airbag system, etc. Each functional data partition contains diagnostic data related to the functional system.

[0035] When dividing functional data partitions, the system can use a rule-based method or a machine learning-based method. The rule-based method maps diagnostic data items to corresponding functional data partitions according to pre-established rules; the machine learning-based method trains a large amount of historical diagnostic data to establish a mapping relationship model between data items and functional partitions, and then uses the model to divide new diagnostic data.

[0036] S102, assigning a priority identifier to each functional data partition, and setting a data buffer between adjacent functional data partitions; The system assigns a priority identifier to each functional data partition and sets a data buffer between adjacent functional data partitions. The data buffer is used to temporarily store data during the partition switching process. Specifically, it includes: Establish a priority scoring matrix based on the real-time requirements, data reliability level and system importance of vehicle system modules; Calculate the comprehensive priority score of each functional data partition based on the priority scoring matrix, and map the comprehensive priority score to a discrete priority identifier; A data buffer is set between adjacent functional data partitions.

[0037] In this step, the system assigns a priority identifier to each functional data partition. The priority identifier reflects the importance and access frequency of the functional data partition. The system can calculate the priority score of each functional data partition based on factors such as the type of functional module, the probability of failure, and the degree of failure impact, and then map the score to a discrete priority identifier, such as high, medium, and low.

[0038] When assigning priority identification, the system can use a variety of calculation methods, such as weighted summation method, hierarchical analysis method, fuzzy comprehensive evaluation method, etc. In addition, the system can also introduce the actual operation data of the vehicle, such as the frequency of fault code occurrence, the distribution of fault code types, etc., to dynamically adjust the priority score to more accurately reflect the importance of the functional data partition.

[0039] In order to improve data access efficiency and avoid data conflicts between partitions, the system sets up data buffers between adjacent functional data partitions. The data buffer is a temporary storage space used to temporarily store data that cannot be processed in time when partitions are switched to avoid data loss or overwriting. At the same time, the data buffer can also play a role in data synchronization and asynchronous processing, allowing functional data partitions of different priorities to be accessed in parallel.

[0040] When setting up the data buffer, the system needs to determine the buffer capacity and refresh strategy based on factors such as the size of the functional data partition, access frequency, and real-time requirements. For example, for a functional data partition with a large amount of data and high access frequency, a buffer with a larger capacity can be set, and a first-in-first-out (FIFO) refresh strategy can be adopted; for a functional data partition with high real-time requirements, a buffer with a smaller capacity can be set, and a priority queuing refresh strategy can be adopted.

[0041] In specific implementation, the data buffer can be based on high-speed storage media such as memory and flash memory, or on large-capacity storage media such as disks. The system can select appropriate storage media and access interfaces according to different application scenarios and performance requirements to optimize the read / write performance and reliability of the data buffer.

[0042] S103. Construct a circular storage linked list and set several data checkpoints in the circular storage linked list; The system constructs a circular storage linked list and sets several data checkpoints in the circular storage linked list. The data checkpoints are used to record data access status and data integrity information.

[0043] In this step, the system constructs a circular storage linked list for storing and managing functional data partitions. A circular linked list is a special linked list structure where the last node points to the first node, forming a closed loop. Compared with traditional linear linked lists, circular linked lists have higher storage efficiency and access flexibility.

[0044] When constructing the circular storage linked list, the system can adopt static allocation or dynamic allocation methods. Static allocation pre-allocates a fixed-size storage space during system initialization, and each functional data partition occupies one node; dynamic allocation dynamically applies for and releases storage space according to the actual size of the functional data partition, and the number and position of nodes can be adjusted as needed.

[0045] To ensure data consistency and recoverability, the system sets several data checkpoints in the circular storage linked list. A data checkpoint is a special linked list node used to record the current data state and access progress. The system can insert checkpoint nodes into the circular linked list regularly according to a preset time interval or data volume threshold.

[0046] When setting data checkpoints, the system can adopt full checkpoint or incremental checkpoint methods. A full checkpoint saves a complete data snapshot of all current functional data partitions to the checkpoint node; an incremental checkpoint only saves the data change part after the previous checkpoint, which can reduce storage overhead and recovery time.

[0047] During the operation of the circular linked list, if abnormal situations occur, such as system crashes, power outages, etc., the system can restore data from the nearest checkpoint, reducing the risk of data loss and corruption. At the same time, the system can also use checkpoints to implement data version management and historical backtracking, facilitating fault diagnosis and problem location.

[0048] In specific implementation, the system can construct a circular storage linked list based on various technologies such as pointers and indexes, providing flexible operation interfaces such as insertion, deletion, and search. For different data types and access patterns, the system can select different data encoding and compression algorithms to improve data transmission and processing efficiency while reducing storage overhead.

[0049] S104. Adjust the storage location of the functional data partitions in the circular storage linked list according to the priority identifier, so that the high-priority functional data partitions are located in the preset active area of the circular storage linked list; In this step, the system adjusts the positions of the functional data partitions in the circular storage linked list. The purpose is to store the high-priority partitions in the active area of the linked list to improve data access efficiency. The active area refers to the area in the linked list with a higher access frequency and faster data update.

[0050] When adjusting the positions of the functional data partitions, the system can adopt a statistical method based on access frequency or a sorting method based on priority. The method based on access frequency is to calculate the access frequency by recording the access times and time intervals of each partition, and then sort the partition positions according to the frequency; the method based on priority is to directly sort the partition positions in descending order according to the priority identifier of the partition.

[0051] To reduce the impact of partition position adjustment on system performance, the system can adopt an incremental adjustment or batch adjustment strategy. Incremental adjustment is to move only one or a small number of partitions each time to gradually optimize the partition positions; batch adjustment is to move multiple partitions at once at regular intervals or when a certain threshold is reached to quickly optimize the partition positions.

[0052] When adjusting the partition positions, the system also needs to consider the principle of data locality and try to store partitions with higher correlation in adjacent positions to reduce the span and latency of data access. For example, store multiple sub-partitions of the same functional module in consecutive linked list nodes to improve the spatial locality of data.

[0053] In specific implementation, the system can design an efficient partition movement algorithm and a data synchronization mechanism to minimize the impact of partition adjustment on system performance. For example, using double-buffering technology, when moving a partition, the data is first copied to a spare buffer and then modified in place to avoid data overwriting and loss. In addition, the system can also introduce concurrency control and lock mechanisms to ensure data consistency in a multi-threaded or multi-process environment.

[0054] S105. When the data volume of any functional data partition exceeds the preset storage threshold, trigger the splitting operation of the functional data partition; When the data volume of any functional data partition exceeds the preset storage threshold, the system triggers the splitting operation of the functional data partition. The splitting operation of the functional data partition is specifically as follows: Obtain the data structure information and data correlation degree information of the functional data partition to be split. The data correlation degree information includes the access relationship and data flow between data items. The functional data partition to be split is the functional data partition whose data volume exceeds the preset storage threshold; Identify the data subsets in the functional data partition to be split with a data correlation degree higher than the preset correlation degree according to the data structure information and data correlation degree information, and calculate the data interaction frequency between the data subsets; Based on the data interaction frequency, divide the functional data partition to be split to generate several sub-data partitions, so that the data correlation degree within each sub-data partition is the largest and the data interaction frequency between sub-data partitions is the smallest; Assign a new priority identifier to the sub-data partition. The new priority identifier is the same as the priority identifier of the functional data partition to be split; Statistical performance parameters of the sub-data partition. The performance parameters include access latency, storage space utilization rate, and data throughput; When the performance parameters exceed the preset range, trigger the boundary adjustment operation of the sub-data partition. The boundary adjustment operation includes re-dividing the data range of the sub-data partition or merging the sub-data partitions with data access efficiency lower than the preset efficiency.

[0055] In this step, the system monitors the data volume of each functional data partition. When it is found that the data volume of any partition exceeds the preset storage threshold, trigger the splitting operation of that partition. The storage threshold is preset according to the performance requirements and resource limitations of the system, indicating the maximum data storage capacity of a single partition.

[0056] When triggering the partition splitting operation, the system first obtains the data structure information and data correlation degree information of the partition to be split. The data structure information describes the attributes such as the type, length, and format of data items within the partition; the data correlation degree information describes the logical relationship and access order between data items, such as function call relationships, data dependency relationships, etc.

[0057] Based on the data structure and correlation information, the system divides the partition to be split into several sub - partitions. The principle of division is to maximize the correlation of data within the sub - partitions and minimize the correlation of data between sub - partitions, that is, high cohesion and low coupling. This can reduce the number of times and latency of cross - partition data access and improve the parallel processing ability of the system.

[0058] When dividing sub - partitions, the system can adopt a graph - based clustering algorithm or a tree - based hierarchical division algorithm. The graph - based algorithm treats data items as nodes of a graph and association relationships as edges of the graph, and clusters the nodes through graph theory algorithms such as maximum flow / minimum cut; the tree - based algorithm constructs a tree structure according to the logical hierarchy and nesting relationship of data items, and then recursively divides the tree nodes.

[0059] After the division is completed, the system assigns the same priority identifier to each sub - partition as the original partition to keep the priority of the functional partition unchanged. At the same time, the system also needs to update the partition nodes and pointers in the circular storage linked list to maintain the correctness and integrity of the linked list structure.

[0060] To evaluate the effect of partition splitting, the system performs performance statistics and analysis on each sub - partition, including indicators such as data access latency, storage space utilization rate, and data throughput. If it is found that the performance of some sub - partitions is significantly lower than expected, the system can trigger dynamic adjustment of the partition boundary, such as merging sub - partitions with too small data volume, splitting sub - partitions with too low access efficiency, etc., to further optimize the utilization efficiency of storage and computing resources.

[0061] In specific implementation, the system can flexibly select different data structures and algorithms according to the characteristics of data partitioning and business requirements, such as hash tables, B + trees, LSM trees, etc., to balance the read - write performance and storage overhead of data. At the same time, the system can also introduce technologies such as data compression, indexing, and caching to further improve the storage efficiency and access speed of data.

[0062] S106. Perform the merging operation of adjacent functional data partitions based on the access frequency and data volume of the functional data partitions.

[0063] The system performs the merging operation of adjacent functional data partitions based on the access frequency and data volume of the functional data partitions. The merging operation is to combine functional data partitions with a data volume less than the preset data volume and an access feature similarity greater than the preset similarity.

[0064] In this step, the system performs a merging operation on adjacent partitions according to the access frequency and data volume of the functional data partitions. The purpose of the merging operation is to reduce the number of partitions, improve the aggregation degree and access efficiency of data, and save storage and computing resources.

[0065] When performing partition merging, the system first counts the access frequency and data volume of each functional data partition. The access frequency refers to the number of read and write operations on the partition per unit time; the data volume refers to the total amount of data currently stored in the partition. The system filters out candidate merging partitions based on preset frequency thresholds and data volume thresholds, that is, adjacent partitions with similar access frequencies and smaller data volumes.

[0066] For the candidate merging partitions, the system further calculates their similarities in dimensions such as function, time, and space. The function dimension refers to the similarity degree of the vehicle functional modules to which the partitions belong; the time dimension refers to the similarity degree of the generation time and update period of the partition data; the space dimension refers to the similarity degree of the physical locations of the partition data on the storage medium.

[0067] If the similarities of the candidate merging partitions in multiple dimensions all exceed the preset threshold, the system performs a merge operation, merging the data of these partitions into a new partition. The new partition after merging inherits the priority identifier of the original partition and recalculates the allocation of storage and computing resources based on the data volume and access frequency after merging.

[0068] When merging partitions, the system needs to handle potential data conflicts and consistency issues. For duplicate or redundant data in different partitions, the system can perform data cleaning and deduplication; for data items with the same name in different partitions, the system can determine the latest valid value based on timestamps or version numbers; for cross-partition transactions or atomic operations, the system needs to use a two-phase commit or compensation mechanism to ensure data integrity and consistency.

[0069] In specific implementation, the system can design an efficient partition merging algorithm and data migration mechanism to reduce the impact of the merge operation on system performance. For example, using the copy-on-write technique, when merging partitions, first create a new partition copy, redirect the modification operations to the copy, and then atomically replace the original partition after the merge is completed; another example is to use the data sharding technique, divide the data of a large partition into multiple small shards, and perform the merge operation in parallel to improve the efficiency of data migration.

[0070] In the above embodiments, by dividing diagnostic data into functional data partitions based on vehicle identification information and combining the settings of priority identifiers and data buffers, the data has a clear organizational structure and priority distinction when stored. The set data buffer can avoid data loss during partition switching and ensure the continuity and integrity of the data. The data checkpoints in the circular storage linked list can promptly detect data access anomalies and data corruption, improving data reliability. By adjusting the high-priority functional data partition to the preset active area, the addressing time for data access is reduced, and the data read / write efficiency is enhanced. The partition splitting operation triggered when the data volume exceeds the threshold avoids performance degradation caused by an overly large data volume in a single partition. The partition merging operation based on access frequency and data volume can reduce storage fragmentation, improve storage space utilization, and at the same time optimize the data access path by merging partitions with similar access characteristics, reduce data access latency, reduce system resource occupancy, and thus improve the operating efficiency and real-time performance of the vehicle diagnostic instrument.

[0071] Based on the vehicle diagnostic instrument data management method in the above embodiments, although the efficient organization and access of diagnostic data are achieved through mechanisms such as the division of functional data partitions, priority management, partition splitting and merging, in actual applications, due to the obvious temporal characteristics of vehicle diagnostic data and the fact that the distribution of data records in the physical storage space directly affects data access performance, it is also necessary to consider the spatio-temporal characteristics of the data and establish a more fine-grained data management mechanism. The following combines Figure 2 , to describe another vehicle diagnostic instrument data management method in the embodiments of the present application: Please refer to Figure 2 , which is another process schematic diagram of a vehicle diagnostic instrument data management method in the embodiments of the present application.

[0072] S201. Obtain the timestamps and spatial location information of each data record in the functional data partition; In this step, the system extracts the timestamp and spatial location information of each data record from the functional data partition. The timestamp is the time point when the data record is generated or updated, reflecting the freshness and timeliness of the data; the spatial location information is the physical address of the data record on the storage medium, reflecting the storage location and adjacent relationship of the data.

[0073] To efficiently obtain the timestamps and spatial location information of data records, the system can store these metadata together with the main data when writing the data, avoiding additional parsing and extraction overhead. For example, reserve fixed fields for timestamps and location information at the head of the data record, or store the metadata associated with the main data in the form of key-value pairs.

[0074] In addition, the system can also select different timestamp formats and spatial location encoding methods according to the characteristics of data records and application requirements. For example, for data with high real-time requirements, high-precision timestamps such as millisecond-level or microsecond-level can be used; for spatial location information, absolute addresses or relative addresses can be used to save storage space.

[0075] S202. Partition the functional data into several consecutive and non-overlapping time segments according to the timestamp; In this step, the system partitions the entire functional data according to the timestamps of the data records. Each time segment contains data records within a continuous time interval, and there is no time overlap between different time segments. The partitioning granularity of the time segments can be flexibly set according to the system's performance requirements and data characteristics, such as by day, by hour, by minute, etc.

[0076] To quickly partition the time segments, the system can adopt methods such as increasing time windows or equidistant sampling. An increasing time window means that according to a fixed time span, such as 1 hour or 1 day, the data records are sequentially partitioned into different time segments; equidistant sampling means that according to a fixed time interval, such as every 5 minutes or 10 minutes, the data records are sampled, and the sampling points are used as the boundaries of the time segments.

[0077] When partitioning the time segments, the system needs to handle the cases of discontinuous or missing timestamps. For data records with discontinuous timestamps, the system can estimate the timestamp of the record according to the time difference between adjacent records and partition it into the corresponding time segment; for data records with missing timestamps, the system can partition them into adjacent time segments according to their positions on the storage medium, or put them into a special time segment separately.

[0078] The partitioning result of the time segments can be represented by a time segment table. Each table entry contains attributes such as the start time, end time, and number of data records of the time segment. The time segment table can be used as part of the time index, stored and managed separately from the main data to improve the efficiency of time-related queries. At the same time, the system can also dynamically adjust the partitioning granularity and storage strategy of the time segments according to the data distribution and access frequency of the time segments, such as migrating the data of hot time segments to the cache, or compressing and storing the cold data time segments.

[0079] S203. Calculate the spatial reference distance between data records within each time segment; The system calculates the spatial reference distance between data records within each time segment, specifically including: Establish a data record access sequence and use the data record access sequence to record the access order of the data records; Statistically calculate the difference in physical storage locations between adjacent data records in the access order; Calculate the average value of the differences in physical storage locations, and use the average value as the spatial reference distance.

[0080] In this step, the system calculates the spatial reference distance between data records within each time segment. The spatial reference distance reflects the degree of adjacency of data records in physical storage locations. The smaller the distance, the more concentrated the data records are in space, and the better the locality of access.

[0081] To calculate the spatial reference distance, the system first needs to establish an access sequence of data records, recording the order in which data records are accessed. The access sequence can be obtained through methods such as log analysis or online monitoring, or can be predicted based on the timestamps and application semantics of data records.

[0082] With the access sequence, the system can statistically calculate the difference in physical locations of adjacent accessed data records on the storage medium, that is, the absolute value of the difference between the storage addresses of two data records. The smaller the difference in physical locations, the closer the two data records are in space, and the higher the locality of access.

[0083] To quantify the spatial reference distance, the system can calculate the average value of the differences in physical locations of all adjacent accessed data records within a time segment as the spatial reference distance of that time segment. The average value can be calculated using methods such as arithmetic mean or geometric mean, or the access frequencies of different data records can be considered to give higher weights to hot data.

[0084] The magnitude of the spatial reference distance can reflect the spatial distribution characteristics of data records within a time segment. The smaller the distance, the more compact the data records are in space, the better the locality of access, and the better the effect of data prefetching and caching; the larger the distance, the more dispersed the data records are in space, the worse the locality of access, and the worse the effect of data prefetching and caching.

[0085] In practical applications, the system can set different spatial reference distance thresholds according to different storage media and data types to judge the spatial locality of data. For example, for disk storage mainly for sequential read and write, a larger distance threshold can be set; for memory storage mainly for random read and write, a smaller distance threshold can be set. The system can also dynamically adjust the storage layout and access strategy of data according to the changing trend of the spatial reference distance, such as storing data records with small spatial reference distances continuously, or re-clustering data records with large spatial reference distances, etc.

[0086] S204. Rearrange the data records within each time segment based on the spatial reference distance; In this step, the system rearranges the data records within each time segment by using the spatial reference distance calculated in the previous step. The purpose of the rearrangement is to place the data records with small spatial reference distances as close together as possible, improve the spatial locality of data access, and reduce overheads such as disk seek or memory page faults.

[0087] Specifically, the system can use distance-based clustering algorithms such as K-means clustering or hierarchical clustering to aggregate data records with similar spatial reference distances into a cluster. Each cluster can be regarded as a spatially compact data block, where the spatial reference distances of the data records within the cluster are small, while the spatial reference distances between the data records in different clusters are large.

[0088] During clustering, the system can dynamically determine the number and size of the clusters according to the size of the time segment and the data distribution. For example, for a time segment with a large amount of data and a relatively uniform distribution, it can be divided into multiple small clusters; for a time segment with a small amount of data or a relatively concentrated distribution, it can be divided into a small number of large clusters.

[0089] After clustering, the system stores the data records within each cluster in sequence according to the order of the clusters, ensuring that adjacent clusters are also adjacent in physical storage. For the data records within the same cluster, the system can adopt different arrangement methods, such as sorting by timestamp, sorting by popularity, etc., to further optimize the temporal locality of data access.

[0090] The rearranged data records can be directly written back to the original storage location or written to a new storage area, which is stored separately from the original data. Writing to a new storage area can avoid the impact of data migration on online services, but it requires additional storage space and data synchronization overheads.

[0091] S205. Construct a multi-level index structure, count the access frequencies of the multi-level index structure, and store the index structures with access frequencies higher than the preset frequency in the cache; The system constructs a multi-level index structure. The multi-level index structure includes a time index and a spatial index. The time index points to each time segment, and the spatial index points to the rearranged data records. The system counts the access frequencies of the multi-level index structure and stores the index structures with access frequencies higher than the preset frequency in the cache.

[0092] In this step, based on the rearranged data, the system constructs a multi-level index structure to accelerate data retrieval and access. The multi-level index structure usually adopts a tree topology, such as a B+ tree, an LSM tree, etc. Each level of index node points to the next level of index node or the final data node. Compared with a single-level index, the multi-level index is slightly higher in storage space and maintenance cost, but it has obvious advantages in query efficiency and concurrent performance, especially suitable for large-scale and high-frequency access data.

[0093] When building a multi-level index, the system adopts the divide-and-conquer idea. First, a time index is established, and then a space index is established to form a spatio-temporal two-level index structure. The key of the time index is the timestamp or time interval of the data, and the value is a pointer to the corresponding time segment; the key of the space index is the spatial location or spatial range of the data, and the value is a pointer to the specific data record.

[0094] The time index can adopt an interval-based indexing method, such as interval tree, segment tree, etc., to merge and store overlapping time intervals to avoid backtracking search. The granularity of the time index can be flexibly set according to the query pattern, such as indexing by day or by hour, to improve the filtering efficiency in the time dimension.

[0095] The space index can adopt a distance-based indexing method, such as R-tree, KD-tree, etc., to organize spatially close data together to accelerate the search in the space dimension. The granularity of the space index can be dynamically adjusted according to the data distribution. For example, a fine-grained index can be established for dense regions, and a coarse-grained index can be established for sparse regions to balance the space overhead and query efficiency of the index.

[0096] After the multi-level index is built, the system continuously counts the access frequencies of each index node, including the number of read requests and write requests. The access frequency reflects the popularity of the index node. The higher the frequency, the greater the probability that the index node is accessed, and the greater the benefit of caching.

[0097] The system caches the index nodes whose access frequencies exceed the threshold into memory according to the preset frequency threshold to accelerate the query and update of the index. The cached index nodes can adopt elimination strategies such as LRU and LFU to dynamically adjust the content of the cache according to the change of the access frequency. For index nodes with low access frequencies, the system can remove them from the cache to free up memory space.

[0098] S206. When the remaining cache space is less than the preset value, remove the index structure with the lowest access frequency.

[0099] In this step, the system ensures the efficient utilization and continuous optimization of the index cache through the dynamic management of the cache space. Specifically, the system monitors the usage of the cache space in real time. When the remaining space is less than the preset threshold, it triggers the elimination operation of the cached index.

[0100] The objects of cache elimination are the index nodes with the lowest access frequencies, that is, the index nodes that are accessed the least within a certain time window. These index nodes usually correspond to cold data or low-frequency queries, and the benefit of caching is small. The impact on query performance after elimination is also small.

[0101] To accurately identify low-frequency index nodes, the system needs to maintain an index list sorted by access frequency. Each time there is a cache access or cache update, the position of the index node in the list should be adjusted accordingly. When it is necessary to evict index nodes, the system starts from the end of the list and sequentially evicts the index nodes with the lowest access frequency until enough cache space is freed up.

[0102] When evicting index nodes, the system needs to synchronously update the relevant index structures and cache mapping relationships. For example, set the pointers of the parent or child nodes of the evicted node to null, or merge the key-value range of the evicted node into adjacent nodes. These update operations may involve local adjustments and rebalancing of the index structure and require the use of a concurrency control mechanism to ensure the atomicity and consistency of the updates.

[0103] In addition to passive eviction, the system can also introduce an active cache optimization mechanism to periodically or irregularly analyze the cache access patterns and efficiency, and actively adjust the cache content and configuration. For example, for index nodes with a suddenly decreased access frequency, the system can evict them from the cache as early as possible to avoid occupying precious cache space; for index nodes with a continuously increasing access frequency, the system can add them to the cache in advance to improve the cache hit rate.

[0104] In the above embodiments, by obtaining the timestamp and spatial location information of data records and performing sharding based on the time dimension, the system realizes the temporal management of data. Calculating the spatial reference distance and rearranging the data records optimize the distribution of data on the physical storage medium and reduce the physical addressing overhead during data access. The constructed multi-level index structure combines the time index and the spatial index, providing a multi-dimensional fast access path for data query. By statistically analyzing the access frequency of the index structure and storing the index structures with high-frequency access in the cache, the access latency of frequently used data is significantly reduced. When the cache space is insufficient, the strategy of removing the index structure with the lowest access frequency ensures the efficient use of the cache space, improves the data retrieval efficiency, reduces the system resource consumption, and enables the system to better adapt to complex data access patterns.

[0105] Further, before constructing the multi-level index structure in the above embodiments, the method further includes: Statistically analyze the data access density of each time segment and classify the time segments according to the data access density; Allocate different index resources for different levels of time segments; Establish a dynamic level adjustment mechanism for time segments, specifically: real-time monitor the change in the access frequency of time segments; When the change in the access frequency exceeds the preset change range, re-allocate the level of the time segment; Adjust the index resources according to the re-allocated level.

[0106] In this embodiment, before constructing the multi-level index structure, the system introduces a hierarchical mechanism for time segments, classifies the time segments according to the data access density, and allocates different index resources to time segments at different levels. This idea of hierarchical indexing can further optimize the storage and query efficiency of the index, dynamically adjust the granularity and allocation of the index according to the heat characteristics of the data, and improve the adaptability and accuracy of the index.

[0107] Specifically, the system first counts the data access density of each time segment, that is, the number of times the data within the time segment is accessed per unit time. The data access density reflects the heat of the time segment. The higher the access density, the higher the frequency of access to the data contained in the time segment, and the higher the weight in the index should be.

[0108] According to the magnitude of the data access density, the system divides the time segments into different levels, such as hot level, warm level, cold level, etc. The division of levels can adopt a fixed threshold or a dynamic threshold method. For example, the time segments with the top 20% of the access density are classified as the hot level, the time segments with the bottom 50% of the access density are classified as the cold level, and the rest are classified as the warm level; or according to the distribution of the access density, the threshold boundaries of each level are dynamically adjusted.

[0109] After dividing the levels, the system allocates different index resources to each time segment according to the level. The index resources include the space overhead of the index, the update frequency of the index, the cache space of the index, etc. The higher the level, the more index resources are allocated. For example, for the time segments at the hot level, the system can build a finer-grained index for them to improve the efficiency of data retrieval; for the time segments at the cold level, the system can build a coarser-grained index for them to reduce the storage and maintenance costs of the index.

[0110] Considering that the access pattern of the data may change over time, the system also needs to establish a dynamic level adjustment mechanism for time segments. The system monitors the change in the access frequency of each time segment in real time. When the change range of the access frequency exceeds the preset threshold range, the level adjustment operation of the time segment is triggered.

[0111] The level adjustment operation is divided into two types: upgrading and downgrading. Upgrading means promoting the time segments with a significantly increased access frequency to a higher level, and downgrading means demoting the time segments with a significantly decreased access frequency to a lower level. The level adjustment operation can be triggered according to a fixed level adjustment period, such as checking the change in the access frequency every 1 hour; or it can be triggered according to the real-time access frequency monitoring, such as immediately triggering when the access frequency exceeds the threshold for 3 consecutive minutes.

[0112] After the level of a time segment changes, the system needs to adjust the allocated index resources accordingly. For an upgraded time segment, the system increases the allocation of its index resources, such as building a finer-grained index, increasing the update frequency of the index, expanding the cache space of the index, etc.; for a downgraded time segment, the system reduces the allocation of its index resources, such as building a coarser-grained index, decreasing the update frequency of the index, shrinking the cache space of the index, etc.

[0113] In the above embodiments, by grading time segments according to the data access density and allocating different index resources, the differential configuration of index resources is achieved. The data access density reflects the number of data accesses per unit time. Time segments with a high access density often contain more hot data and require more index resources to support frequent data query operations. By grading time segments, limited index resources can be preferentially allocated to time segments with a higher access density to ensure fast access to hot data, while allocating fewer index resources to time segments with a lower access density, reducing the waste of index resources.

[0114] The following describes the system in the embodiments of the present invention application from the perspective of hardware processing. Please refer to Figure 3 which is a schematic structural diagram of an entity device of an automotive diagnostic instrument data management system provided in an embodiment of the present application.

[0115] It should be noted that Figure 3 the structure of the system shown is only an example and should not impose any limitations on the functions and usage scope of the embodiments of the present invention.

[0116] As Figure 3 shown, the system includes a central processing unit (CPU) 301, which can perform various appropriate actions and processes according to the program stored in the read-only memory (ROM) 302 or the program loaded from the storage section 308 into the random access memory (RAM) 303, such as executing the method in the above embodiments. In the RAM 303, various programs and data required for system operation are also stored. The CPU 301, ROM 302, and RAM 303 are connected to each other through a bus 304. The input / output (I / O) interface 305 is also connected to the bus 304.

[0117] The following components are connected to the I / O interface 305: an input section 306 including a camera, an infrared sensor, etc.; an output section 307 including a liquid crystal display (LCD), a speaker, etc.; a storage section 308 including a hard disk, etc.; and a communication section 309 including a network interface card such as a LAN (Local Area Network) card, a modem, etc. The communication section 309 performs communication processing via a network such as the Internet. A drive 310 is also connected to the I / O interface 305 as needed. A removable medium 311 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc. is installed on the drive 310 as needed so that a computer program read therefrom is installed into the storage section 308 as needed.

[0118] Specifically, according to an embodiment of the present invention, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, an embodiment of the present invention includes a computer program product that includes a computer program carried on a computer-readable medium, and the computer program includes a computer program for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network via the communication section 309, and / or installed from the removable medium 311. When the computer program is executed by a central processing unit (CPU) 301, various functions defined in the present invention are executed.

[0119] It should be noted that the computer-readable medium shown in the embodiments of the present invention can be a computer-readable signal medium, a computer-readable storage medium, or any combination of the two. A computer-readable storage medium can be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the above. More specific examples of a computer-readable storage medium can include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM), a flash memory, an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the present invention, a computer-readable storage medium can be any tangible medium that contains or stores a program, and this program can be used by or in combination with an instruction execution system, apparatus, or device. In the present invention, a computer-readable signal medium can include a data signal propagated in a baseband or as part of a carrier wave, which carries a computer-readable computer program. Such a propagated data signal can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above.

[0120] The flowcharts and block diagrams in the accompanying drawings illustrate the possible architectures, functions, and operations of systems, methods, and computer program products according to various embodiments of the present invention. Among them, each block in the flowchart or block diagram can represent a module, a program segment, or a part of code, and the above module, program segment, or part of code contains one or more executable instructions for implementing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the blocks may occur in a different order than that marked in the accompanying drawings. For example, two consecutive blocks shown may actually be executed substantially in parallel, and they may sometimes be executed in the reverse order, depending on the functions involved. It should also be noted that each block in the block diagram or flowchart, and the combination of blocks in the block diagram or flowchart, can be implemented by a dedicated hardware-based system for performing the specified functions or operations, or can be implemented by a combination of dedicated hardware and computer instructions.

[0121] As another aspect, the present invention also provides a computer-readable storage medium, which may be included in the system described in the above embodiments; or may exist alone without being assembled into the system. The above storage medium carries one or more computer programs, and when the one or more computer programs are executed by a processor of a system, the system implements the method provided in the above embodiments.

[0122] As described above, the above embodiments are only used to illustrate the technical solutions of the present application, and are not intended to limit them; although the present application has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that: they can still modify the technical solutions recorded in the foregoing embodiments, or perform equivalent replacements on some of the technical features; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the scope of the technical solutions of the embodiments of the present application.

[0123] As used in the above embodiments, depending on the context, the term "when..." can be interpreted to mean "if...", or "after...", or "in response to determining...", or "in response to detecting...". Similarly, depending on the context, the phrase "when determining..." or "if detecting (the stated condition or event)" can be interpreted to mean "if determining...", or "in response to determining...", or "when detecting (the stated condition or event)", or "in response to detecting (the stated condition or event)".

[0124] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the processes or functions described in the embodiments of the present application are generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center in a wired manner (such as coaxial cable, optical fiber, digital subscriber line) or a wireless manner (such as infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that a computer can access, or a data storage device such as a server or data center that includes one or more available media integrated. The available medium can be a magnetic medium (for example, a floppy disk, a hard disk, a magnetic tape), an optical medium (for example, a DVD), or a semiconductor medium (for example, a solid-state drive), etc.

[0125] Those of ordinary skill in the art can understand that all or part of the processes in the methods of the above embodiments can be completed by relevant hardware instructed by a computer program. This program can be stored in a computer-readable storage medium. When this program is executed, it can include the processes of the above method embodiments. The foregoing storage medium includes: various media that can store program codes, such as ROM or random access memory RAM, magnetic disks, or optical discs.

Claims

1. A method for managing data of an automobile diagnostic instrument, characterized in that: include: receiving vehicle identification information, and dividing the diagnostic data into a plurality of functional data partitions based on the vehicle identification information, wherein the functional data partitions are divided according to vehicle system module types; Assigning a priority identifier to each of the functional data partitions, and setting a data buffer between adjacent functional data partitions, wherein the data buffer is used to temporarily store data during the partition switching process; Constructing a circular storage linked list, and setting a number of data checkpoints in the circular storage linked list, wherein the data checkpoints are used to record data access status and data integrity information; Adjust the storage position of the function data partition in the circular storage linked list according to the priority identifier, so that the high priority function data partition is located in the preset active area of ​​the circular storage linked list; When the amount of data in any of the functional data partitions exceeds a preset storage threshold, a splitting operation of the functional data partition is triggered; Based on the access frequency and data volume of the functional data partitions, a merging operation of adjacent functional data partitions is performed, wherein the merging operation is to combine the functional data partitions whose data volume is less than a preset data volume and whose access feature similarity is greater than a preset similarity.

2. The method according to claim 1, characterized in that The step of assigning a priority identifier to each functional data partition and setting a data buffer zone between adjacent functional data partitions specifically includes: Establishing a priority scoring matrix based on the real-time requirements, data reliability level and system importance of the vehicle system modules; Calculating a comprehensive priority score for each of the functional data partitions based on the priority scoring matrix, and mapping the comprehensive priority score to a discrete priority identifier; A data buffer zone is set between adjacent functional data partitions.

3. The method according to claim 1, characterized in that: The splitting operation of the functional data partition specifically includes: Acquire data structure information and data association information of the functional data partition to be split, wherein the data association information includes access relations and data flows between data items, and the functional data partition to be split is a functional data partition whose data volume exceeds the preset storage threshold; Identify data subsets in the to-be-split functional data partitions whose data association degree is higher than a preset association degree according to the data structure information and the data association degree information, and calculate the data interaction frequency between the data subsets; Dividing the to-be-split functional data partition based on the data interaction frequency to generate a plurality of sub-data partitions, so that the data association degree within each sub-data partition is maximized and the data interaction frequency between the sub-data partitions is minimized; Allocating a new priority identifier for the sub-data partition, wherein the new priority identifier is the same as the priority identifier of the functional data partition to be split; Counting performance parameters of the sub-data partition, wherein the performance parameters include access delay time, storage space utilization and data throughput; When the performance parameter exceeds a preset range, a boundary adjustment operation of the sub-data partition is triggered, and the boundary adjustment operation includes re-dividing the data range of the sub-data partition or merging the sub-data partitions whose data access efficiency is lower than the preset efficiency.

4. The method according to claim 1, characterized in that After performing the merging operation of adjacent functional data partitions based on the access frequency and data volume of the functional data partitions, the method further includes: Obtaining the timestamp and spatial location information of each data record in the functional data partition; Dividing the functional data partition into a plurality of continuous and non-overlapping time segments according to the timestamp; Calculating the spatial reference distance between the data records in each of the time segments; Rearranging the data records in each of the time segments based on the spatial reference distance; Constructing a multi-level index structure, the multi-level index structure comprising a time index and a space index, the time index pointing to each of the time segments, and the space index pointing to the rearranged data records; Counting the access frequency of the multi-level index structure, and storing the index structure with the access frequency higher than the preset frequency into the cache; When the cache space margin is less than a preset value, the index structure with the lowest access frequency is removed.

5. The method according to claim 4, characterized in that The calculating of the spatial reference distance between the data records in each of the time segments specifically includes: Establishing a data record access sequence, and using the data record access sequence to record the access order of the data records; Counting the physical storage location differences between adjacent data records in the access sequence; An average value of the physical storage location differences is calculated, and the average value is used as the spatial reference distance.

6. The method according to claim 4, characterized in that Before constructing the multi-level index structure, the method further includes: Counting the data access density of each of the time segments, and grading the time segments according to the data access density; Allocating different index resources to the time segments at different levels; A dynamic level adjustment mechanism for the time segment is established.

7. The method according to claim 6, characterized in that The establishment of the dynamic level adjustment mechanism of the time segment specifically includes: Monitor the access frequency changes of the time segment in real time; When the access frequency changes beyond a preset change range, the level of the time segment is reallocated; The index resources are adjusted according to the reallocated levels.

8. An automobile diagnostic instrument data management system, characterized in that: The system comprises: One or more processors and a memory; the memory is coupled to the one or more processors, the memory is used to store computer program code, the computer program code includes computer instructions, and the one or more processors call the computer instructions to cause the system to execute the method as described in any one of claims 1-7.

9. A computer-readable storage medium comprising instructions, characterized in that: When the instructions are executed on a system, the system is caused to execute the method according to any one of claims 1 to 7.

10. A computer program product, characterized in that When the computer program product is run on a system, the system is caused to execute the method according to any one of claims 1 to 7.

Citation Information

Patent Citations

  • Fault information processing method and device

    CN113077563A

  • Exception monitoring method based on multi-level cache

    CN114546786A

  • Uphill and downhill identification method and system based on vehicle-mounted data acquisition equipment

    CN116450705A

  • Method and device for enhancing read-write quality of solid state disk

    CN118519928A

  • System and method for optimization using autonomous vehicle

    US20190012686A1

Cited By

  • Index optimization method and device

    CN120596488A