Heterogeneous data flow synchronization control method and system
By constructing a synchronization control method for heterogeneous data streams, quantifying the synchronization differences and dividing them into sensitivity levels, and combining the output channel throughput changes, orderly scheduling of key data segments is achieved, which solves the problem of synchronization disorder in traditional methods and improves the synchronization timing coordination capability and bandwidth utilization of heterogeneous data streams.
Patent Information
- Application Number
- CN202510908492.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-02
- Publication Date
- 2025-09-05
AI Technical Summary
Traditional heterogeneous data stream synchronization control methods are prone to delayed distribution of key data segments when experiencing high-frequency throughput changes or sudden congestion, and protocol conversion is not dynamically adjusted based on the characteristics of the source data stream, leading to synchronization disorder problems.
By obtaining the receiving time of multiple data sources to build a time interval sequence, quantifying the synchronization difference and dividing it into sensitivity levels, and extracting the priority time period based on the output channel throughput changes, the data channel priority is set according to the flow sensitivity level and time period consistency, and key data segments are scheduled in an orderly manner to achieve priority push of high-sensitivity data segments.
It improves the synchronization timing coordination capability and channel bandwidth utilization of heterogeneous data streams in a multi-source environment, reduces the competition for output resources in low-sensitivity segments, and improves response efficiency and alignment accuracy.
Smart Images

Figure CN120602423A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of data flow control, and in particular to a method and system for synchronous control of heterogeneous data flows. Background Art
[0002] The field of data flow control technology involves technical means for scheduling, coordinating, and managing data transmitted between different computing nodes or systems. Core issues include mechanisms for packet scheduling, flow rate regulation, maintaining transmission order, and synchronizing data from different sources along network paths. This technology covers scenarios such as wired and wireless network communications, distributed computing systems, edge computing platforms, and collaborative processing of heterogeneous systems. It aims to ensure the stability, timing, and effective bandwidth utilization of data transmission, achieving efficient data transmission and coordination through the regulation of flow control protocols, buffer management strategies, and data channel switching mechanisms.
[0003] Among them, the traditional heterogeneous data stream synchronization control method refers to a processing scheme used to achieve data time or sequence alignment between multiple data stream sources with different data formats, transmission rates or communication protocols. The method mainly targets the problem of inconsistent timing of data in multi-source collaborative processing or parallel processing, and usually adopts means such as unified timestamp insertion, buffer reordering, flow rate adaptation and protocol conversion to complete data alignment control. Specific methods include marking each data segment according to the reference clock to unify the process synchronization rhythm; setting up an intermediate cache to temporarily store the data that arrives first, and then uniformly distribute it after the lagging stream arrives; adjusting the transmission rate of each data stream so that it has a consistent time relationship when it arrives at the target node; performing semantic mapping and data reorganization between communication links with different protocols to meet the input format requirements of the subsequent processing system.
[0004] Traditional control methods rely solely on unified timestamp insertion or cache rearrangement to achieve alignment of multi-source data streams, failing to perform differentiated synchronization scheduling based on data importance. This can easily lead to delayed distribution of key data segments in the face of high-frequency throughput changes or sudden congestion. In particular, in scenarios with high data flow density or large fluctuations in channel output capacity, the retention problem caused by cached first-arrival data will affect the overall synchronization accuracy. Furthermore, the protocol conversion method fails to dynamically adjust based on the source data flow characteristics, leading to time drift and format offset in some protocol docking links in heterogeneous links. This can cause crosstalk or decoding errors in subsequent processing flows, making it more likely to cause synchronization disorder problems when high-sensitivity data is transmitted densely. Summary of the Invention
[0005] The purpose of the present invention is to solve the shortcomings of the prior art and to propose a method and system for synchronous control of heterogeneous data streams.
[0006] In order to achieve the above object, the present invention adopts the following technical solution: a method for synchronous control of heterogeneous data streams, comprising the following steps: S1: Obtain the reception time of two consecutive data segments from multiple data sources, calculate the synchronization difference, use the synchronization difference and set the synchronization delay threshold to make interval judgment, and establish a synchronization sensitivity level classification structure for heterogeneous data streams; S2: Based on the output channel log records, a channel throughput change sequence is constructed. The time periods with negative increments in the throughput change sequence are called and continuous segments are aggregated and marked. It is determined whether the continuous decreasing period is greater than the set minimum output cycle threshold. Combined with the channel identification number, an index table of multi-channel synchronous output priority periods is established. S3: Based on the heterogeneous data stream synchronization sensitivity level classification structure, extract the corresponding channel number and perform consistency judgment on the channel number in the multi-channel synchronous output priority period index table, establish a corresponding channel mapping relationship for each high-sensitivity stream, and obtain a high-sensitivity data stream output channel priority mapping table; S4: Call the high-sensitivity data stream output channel priority mapping table, obtain the difference between the timestamp and the current master clock count value, use the difference to perform ascending sorting on the data segments to be allocated, and assign the first two items of the sorting to the synchronous output port in turn to establish a key stream segment output priority sorting list.
[0007] As a further solution of the present invention, the heterogeneous data stream synchronization sensitivity level division structure includes synchronization level label allocation rules, flow level sensitivity partition set and level and channel priority mapping relationship, the multi-channel synchronization output priority period index table is specifically a channel number index field, a priority period time boundary set and a channel scheduling candidate state identifier, the high-sensitivity data stream output channel priority mapping table includes a high-sensitivity flow number set, a channel priority corresponding set and output path mapping logic, and the key flow segment output priority sorting list is specifically a sorted data segment index sequence, a priority queue structure based on time difference and a main channel data scheduling identifier.
[0008] As a further solution of the present invention, the steps for obtaining the synchronization sensitivity level classification structure of the heterogeneous data stream are specifically as follows: S101: Obtain the reception time of two consecutive data segments from multiple data sources, call the reception time tags of the current segment and the previous segment of each data stream, pair them up in chronological order, calculate the difference between the time tags between the paired data segments, obtain the time interval value between the consecutive segments of each data stream, and generate a data stream time interval sequence; S102: Based on the data stream time interval sequence, extract a set of values from each sequence, perform three index operations, obtain the difference between the maximum and minimum values in the value set, calculate the standard deviation of the interval values and the ratio of the standard deviation to the mean as the deviation rate, calculate and obtain the synchronization difference value of each data stream, and establish a synchronization difference distribution result; S103: Based on the synchronization difference distribution results and the difference value of each data flow, the set upper and lower limit intervals of the synchronization delay threshold are called, and interval judgment is performed on the difference value. The results whose judgment values fall into the three intervals are marked as high-sensitivity flow, medium-sensitivity flow and low-sensitivity flow respectively, and the corresponding synchronization level identifiers are added and integrated into the same structure to establish a synchronization sensitivity level division structure for heterogeneous data flows.
[0009] As a further solution of the present invention, the formula for calculating the synchronization difference value of each data stream is specifically: ; in, Indicates the maximum time interval between receiving adjacent data segments in a data stream. Indicates the minimum time interval between receiving adjacent data segments in a data stream. Indicates the The normalized value of the receiving time interval between data segments, Indicates the average value of the normalized time interval of the entire data stream. Indicates the total number of receiving time intervals involved in the calculation in each data stream. Indicates the synchronization difference value of the data stream.
[0010] As a further solution of the present invention, the steps of obtaining the multi-channel synchronous output priority period index table are specifically as follows: S201: Extract the unit data flow throughput of the channel in the last five consecutive cycles based on the output channel log records, arrange the flow of each cycle in chronological order to form channel time series data, and establish a channel flow time series; S202: Based on the channel flow time series, performing a difference calculation on the flow values of two consecutive cycles, calculating the increase or decrease between the cycles, and recording the change direction and value in the calculation order to generate a channel throughput change sequence; S203: According to the channel throughput change sequence, filter the cycle numbers with negative change values and record the number of consecutive occurrences, determine whether the continuous decline cycle is greater than the set minimum output cycle threshold, and if so, mark the current segment of the channel as a candidate segment, and attach the corresponding channel number to establish a multi-channel synchronous output priority period index table.
[0011] As a further solution of the present invention, the step of obtaining the high-sensitivity data stream output channel priority mapping table is specifically as follows: S301: Based on the heterogeneous data stream synchronization sensitivity level classification structure, according to the data stream segments marked as highly sensitive, extract the channel number corresponding to each data stream segment, arrange them in order and establish a number index mapping table to obtain a list of highly sensitive stream channel numbers; S302: Match the high-sensitivity flow channel number list item by item with the channel number in the multi-channel synchronous output priority period index table, determine whether the current time is within the priority output period interval corresponding to the channel, set the channel with a positive determination result as a primary output path, and set the remaining channels as secondary output paths, thereby obtaining a channel priority path determination result; S303: Call the channel priority path determination result, and according to the channel number and priority identifier corresponding to each high-sensitivity data flow, bind the number and the priority path label to form structured mapping information, integrate the output path field according to the data flow number, and establish a high-sensitivity data flow output channel priority mapping table.
[0012] As a further solution of the present invention, the step of obtaining the key flow segment output priority list is specifically as follows: S401: Calling the high-sensitivity data stream output channel priority mapping table, extracting the corresponding receiving timestamp and the current count value of the master clock according to the data segment marked by the first-level output path, establishing a time difference set in the order of the data segments, and obtaining a receiving delay time difference sequence; S402: Based on the received delay time difference sequence, perform an ascending sorting operation according to the time difference of each data segment and establish an ordered arrangement result, call the position order of each data segment in the sequence and bind it to the source number identifier, calculate the sorting evaluation value of each data segment, return the position according to the sorting evaluation value, and establish a sorting priority sequence index table; The formula for calculating the ranking evaluation value of each segment of data is specifically: ; in, Indicates the The ranking evaluation value of the data segments, Indicates the The receiving timestamp of each data segment, Indicates the current master clock count value. Indicates the number of data segments currently participating in sorting, Indicates the The sequential number of each data segment in its source stream, : Indicates the maximum number value in the data segment number in the current source stream. Indicates the The receiving timestamp of each data segment; S403: Call the sorting priority sequence index table, map the data segment numbers and channel information corresponding to the first two items of the sorting value to the synchronous output interface, record the channel output order and data segment sequence number, and establish a key flow segment output priority list.
[0013] As a further embodiment of the present invention, the method further comprises the following steps: S5: calling the key stream segment output priority list, performing sequence number continuity check on the data segments with the same identifier, pushing them into independent output sub-channels if the sequence numbers are discontinuous, and performing merge output processing if the sequence numbers are continuous, to generate key data stream synchronous output intersection and merge sequence information; The key data stream synchronous output intersection and merge sequence information specifically refers to the merge output segment number sequence, the independent channel output stream identifier and the intersection and merge logic state field.
[0014] As a further solution of the present invention, the step of obtaining the synchronization output intersection and merging sequence information of the key data stream is specifically as follows: S501: Call the key flow segment output priority list, extract the original source end unique identifier and sequence number of each data segment, classify and group the data segments by source end based on the identifier, and generate a source end sequence identifier mapping set; S502: Based on the source end sequence identifier mapping set, serial numbers within the same identifier are numbered in ascending order, differences between adjacent serial numbers are calculated and compared with a set continuity judgment threshold, continuous and non-continuous sequence structures are recorded, and a serial number continuity judgment result is obtained; S503: Call the sequence number continuity judgment result, push the data segment number marked as non-continuous into the independent output sub-channel queue, merge the continuous sequence data segments into the synchronous output queue, mark the channel number and position sequence index, and generate the key data stream synchronous output intersection sequence information.
[0015] A heterogeneous data stream synchronization control system, which is used to implement the above-mentioned heterogeneous data stream synchronization control method, includes: The sensitivity level classification module obtains the reception time of two consecutive data segments from multiple data sources, calculates the synchronization difference, uses the synchronization difference and the set synchronization delay threshold to make interval judgments, and establishes a synchronization sensitivity level classification structure for heterogeneous data streams; The output priority analysis module constructs a channel throughput rate change sequence based on the output channel log records. It calls the time periods with negative increments in the throughput rate change sequence and aggregates and marks the continuous segments. It determines whether the continuous decreasing period is greater than the set minimum output cycle threshold. Combined with the channel identification number, it establishes a multi-channel synchronous output priority period index table. The channel priority mapping module extracts the corresponding channel number based on the heterogeneous data stream synchronization sensitivity level classification structure and performs consistency judgment with the channel number in the multi-channel synchronous output priority period index table, establishes a corresponding channel mapping relationship for each high-sensitivity stream, and obtains a high-sensitivity data stream output channel priority mapping table; The key flow segment analysis module calls the high-sensitivity data stream output channel priority mapping table, obtains the difference between the timestamp and the current master clock count value, uses the difference to perform ascending sorting on the data segments to be allocated, and sequentially allocates the top two items to the synchronous output port to establish a key flow segment output priority sorting list; The intersection and merge sequence setting module calls the key stream segment output priority list, and judges the serial number continuity of the data segments with the same identifier. If the serial number is discontinuous, it is pushed into an independent output sub-channel. If the serial number is continuous, it is merged and output processed to generate the key data stream synchronous output intersection and merge sequence information.
[0016] Compared with the prior art, the advantages and positive effects of the present invention are: In the present invention, a time interval sequence is constructed based on the receiving time of multiple data sources and the interval deviation is quantified. Labels are divided and a sensitivity level structure is established based on the synchronization difference, so as to realize differentiated management of the synchronization accuracy requirements of heterogeneous data streams. The output priority segment is extracted in combination with the historical output channel data throughput changes, the data channel output priority is set according to the consistency of the flow sensitivity level and the output time period, the key data segments are scheduled in an orderly manner according to the master clock difference, the high-sensitivity data segments are pushed to the synchronization channel first, and the source identifier and sequence number continuity judgment are used to realize merging or diversion processing. In the data distribution process, the response efficiency and alignment accuracy of the high-sensitivity data segments are improved, while the competition for output resources by the low-sensitivity segments is reduced, thereby improving the synchronization timing coordination capability and channel bandwidth utilization in a multi-source heterogeneous environment. BRIEF DESCRIPTION OF THE DRAWINGS
[0017] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0018] Figure 1 It is a schematic diagram of the workflow of the present invention; Figure 2 This is a detailed flow chart of S1 of the present invention; Figure 3 This is a detailed flow chart of S2 of the present invention; Figure 4 This is a detailed flow chart of S3 of the present invention; Figure 5 This is a detailed flow chart of S4 of the present invention; Figure 6 This is a detailed flow chart of S5 of the present invention; Figure 7 It is a system flow chart of the present invention. DETAILED DESCRIPTION
[0019] The technical solution of the present invention is described below in conjunction with the accompanying drawings.
[0020] In the embodiments of the present invention, words such as "exemplarily" and "for example" are used to indicate examples, illustrations, or explanations. Any embodiment or design described as an "exemplary" in the present invention should not be interpreted as being preferred or advantageous over other embodiments or designs. Rather, the use of the word "exemplary" is intended to present concepts in a concrete manner. Furthermore, in the embodiments of the present invention, "and / or" can mean both or either of the two.
[0021] In the embodiments of the present invention, the terms "image" and "picture" may sometimes be used interchangeably. It should be noted that, when the distinction is not emphasized, the meanings they convey are the same. The terms "of," "corresponding," and "corresponding" may sometimes be used interchangeably. It should be noted that, when the distinction is not emphasized, the meanings they convey are the same.
[0022] In the embodiments of the present invention, sometimes a subscript such as W1 may be written as a non-subscript such as W1. When the difference is not emphasized, the meanings to be expressed are the same.
[0023] In order to make the technical problems, technical solutions and advantages to be solved by the present invention clearer, a detailed description will be given below with reference to the accompanying drawings and specific embodiments.
[0024] See also Figure 1 The present invention provides a technical solution: a method for synchronously controlling heterogeneous data streams, comprising the following steps: S1: Obtain the reception time of two consecutive data segments from multiple data sources, construct a data stream time interval sequence, calculate the maximum interval difference, minimum interval difference, and average interval deviation rate based on the time interval sequence, calculate the synchronization difference, use the synchronization difference and set the synchronization delay threshold to determine the interval, assign three types of flow labels: high sensitivity, medium sensitivity, and low sensitivity, and establish a synchronization sensitivity level classification structure for heterogeneous data streams; S2: Based on the output channel log records, extract the unit data flow throughput of each channel in the most recent five cycles, calculate the increase and decrease values of the throughput in two consecutive cycles, construct a channel throughput change sequence, call the time period with negative increments in the throughput change sequence and aggregate the consecutive segments. Determine whether the consecutive decreasing period is greater than the set minimum output cycle threshold. If so, select it as a candidate priority output segment. Combined with the channel identification number, establish a multi-channel synchronous output priority time period index table; The throughput change sequence refers to the sequence of changes in the channel's data processing capacity per unit time, commonly used in data flow control. The minimum output cycle threshold refers to the lower limit of the continuous time period set by the system, which is used to determine whether the load drop time of a certain channel is sufficiently stable. S3: Based on the heterogeneous data stream synchronization sensitivity level classification structure, extract the corresponding channel number according to the high-sensitivity stream data segment and check its consistency with the channel number in the multi-channel synchronous output priority period index table. If the current time is within the channel's marked priority output period, set the corresponding channel of the high-sensitivity stream as the primary output path; otherwise, set it to the secondary output path. Establish a corresponding channel mapping relationship for each high-sensitivity stream and obtain the high-sensitivity data stream output channel priority mapping table; S4: Call the high-sensitivity data stream output channel priority mapping table, obtain the difference between the receiving timestamp and the current master clock count value based on the receiving timestamp of the data segment corresponding to the first-level output path, use the difference to perform ascending sorting on the data segments to be allocated, and sequentially allocate the top two items to the synchronous output port to establish a priority sorting list for the output of key stream segments; The receive timestamp is the absolute time value recorded when the data packet is registered in the buffer queue at the network receiving end, which is commonly used in TCP / IP network protocols. The master clock count value refers to the reference count of the system controller's real-time sampling clock, which is usually derived from the system's internal unified time reference, such as the NTP synchronization value or the PPS clock reference signal. S5: Call the key flow segment output priority sorting list, and based on the original source end unique identifier of the sorted data segment, determine the continuity of the sequence number of the data segment with the same identifier. If the sequence number is not continuous, it is pushed into the independent output sub-channel. If the sequence number is continuous, it is merged and output to generate the key data flow synchronous output intersection and order information; The unique source identifier is usually a combination of IP address, port, and data stream number, and is often used to identify the unique data source in heterogeneous network systems. Sequence number continuity is a basic judgment logic based on the numbering mechanism in the transport layer or application layer protocol, used to maintain data order. The heterogeneous data stream synchronization sensitivity level division structure includes the synchronization level label allocation rules, the flow level sensitivity partition set and the level and channel priority mapping relationship. The multi-channel synchronization output priority period index table specifically includes the channel number index field, the priority period time boundary set and the channel scheduling candidate status identifier. The high-sensitivity data stream output channel priority mapping table includes the high-sensitivity flow number set, the channel priority corresponding set and the output path mapping logic. The key flow segment output priority sorting list specifically includes the sorted data segment index sequence, the time difference-based priority queue structure and the main channel data scheduling identifier. The key data stream synchronization output intersection and order information specifically refers to the merged output segment number sequence, the independent channel output flow identifier and the intersection and logic status field.
[0025] See also Figure 2 ,The steps for obtaining the synchronization sensitivity level classification structure of ,heterogeneous data streams are as follows: S101: Obtain the reception time of two consecutive data segments from multiple data sources, call the reception time tags of the current segment and the previous segment of each data stream, pair them up in chronological order, calculate the difference between the time tags between the paired data segments, obtain the time interval value between the consecutive segments of each data stream, and generate a data stream time interval sequence; To obtain the receiving time of two consecutive data segments from multiple data sources, first, in the implementation process, the original timestamp information recorded by the heterogeneous data source node should be called, and the current processing object is set to three heterogeneous data streams A, B, and C, which respectively collect video, radar, and structure sensing information from three devices. The data segments are numbered from 1 to 20, and each data segment contains a unique identifier and a receiving timestamp. For example, the 5th and 6th segments of data stream A correspond to receiving times of 1030ms and 1055ms, respectively. By sequentially extracting the time field, pairing every two consecutive segment numbers, and performing pairing operations on (1,2), (2,3), (3,4)…(19,20), each Subtract the receiving time of the data segments and take the absolute value to obtain the time interval value between the paired segments. For example, the time interval value between the pair (5, 6) is 25ms. For the same data stream, 19 difference operations need to be performed in sequence to obtain 19 time interval values, which are recorded as ΔT1 to ΔT19 respectively. The same process is performed on other data streams B and C in the same steps to obtain an independent time interval set for each data stream. All time intervals use milliseconds as a unified unit. To avoid the dimensional inconsistency problem caused by the clock deviation of the source device, all receiving times should be converted to the synchronous master clock reference time before performing the difference operation, such as by using the reference base clock , for receiving time Convert to , all data segments are uniformly post-processed to generate corresponding time interval sequences. Each sequence is finally recorded in a structure of key-value pairs consisting of a number sequence and an interval value. For example, stream A generates the sequence {(1,2):25ms,(2,3):15ms,…,(19,20):20ms}, completing the overall construction of the data stream time interval and generating the data stream time interval sequence.
[0026] S102: Based on the data stream time interval sequence, extract the value set in each sequence, perform three index operations, obtain the difference between the maximum and minimum values in the value set, calculate the standard deviation of the interval values and the ratio of the standard deviation to the mean as the deviation rate, calculate the synchronization difference value of each data stream, and establish the synchronization difference distribution result; The formula for calculating the synchronization difference value of each data stream is as follows: ; in, Indicates the maximum time interval between receiving adjacent data segments in a data stream. Indicates the minimum time interval between receiving adjacent data segments in a data stream. Indicates the The normalized value of the receiving time interval between data segments, Indicates the average value of the normalized time interval of the entire data stream. Indicates the total number of receiving time intervals involved in the calculation in each data stream. Indicates the synchronization difference value of the data stream; The synchronization difference value is used to quantify the degree of asynchrony between multiple data streams in the time interval between consecutive segment receptions; This indicator consists of two parts: Range ( ): reflects the upper bound of the discrete degree of the delay interval within the data stream and reflects the maximum mutation; Relative standard deviation (deviation rate): The ratio of the standard deviation to the mean is used to normalize the degree of fluctuation of the overall time interval and reflect the overall synchronization stability.
[0027] The resulting synchronization difference value is used to determine whether the data stream is in a synchronization-sensitive state, and then determine the level label (high sensitivity / medium sensitivity / low sensitivity) of subsequent synchronization processing; Based on the corresponding Sequence, for stream A to To perform statistical analysis, first extract the maximum and minimum values, e.g. , , calculate the difference between the two to be 14ms, and then get the total For example, if the sum of 19 time intervals is 400ms, the average value is , calculate all The sum of squares of the differences from the mean is denoted as , for example, the partial value is calculated as follows: ,but , and so on, the total of all items is 230, which is substituted into the standard deviation formula to obtain , and then use the deviation rate formula , add the difference of 14ms between the maximum and minimum values mentioned above to the ratio to get the synchronization difference index , perform the same operation process for each data stream, forming multiple The value set does not use any method or model in this process, and only constructs the indicator process through addition, subtraction, square, square root, and division to form a unified difference value sequence, such as 、 、 , the numerical unit is eliminated through normalization during the construction process, so there is no need to consider the dimension problem caused by the difference in device sampling frequency. This sequence is a quantitative representation of the synchronization sensitivity difference between each data stream, and the synchronization difference quantity distribution result is established.
[0028] S103: Based on the synchronization difference distribution results and the difference value of each data flow, the upper and lower limits of the synchronization delay threshold are called, and the difference value is judged within the interval. The results that fall into the three intervals are marked as high-sensitivity flow, medium-sensitivity flow, and low-sensitivity flow, respectively. After adding synchronization level identifiers to the corresponding flows, they are integrated into the same structure to establish a synchronization sensitivity level classification structure for heterogeneous data flows; According to the synchronization difference distribution result, each data flow corresponds to Value, respectively 、 、 To determine the sensitivity level, the system sets the synchronization delay interval threshold to a three-stage interval structure, where the upper limit of the low-sensitivity threshold is , the lower limit of high sensitivity threshold is , the value unit is milliseconds, the judgment basis is: if It is defined as hyposensitivity. If The reference for setting the judgment interval structure is: the main system allows the maximum deviation time of data synchronization to be no more than half of a cycle. If the main cycle of the system is 40ms, the maximum deviation threshold is set to 20ms. The upper threshold is set as the reference standard for the lower threshold, which is the difference between data within the system-level average sampling period of 10ms. Considering the expansion of interference and fluctuation factors by 20%, it is set as The above two thresholds constitute the three-segment interval judgment benchmark. Under this rule, the system can dynamically modify the and The value range is used to adapt to the source stream synchronization frequency, and finally the judgment result is merged with the original data stream number field to form a structured label output. For example, the structure {stream ID: A, level: medium sensitivity} is generated, and then all label items are integrated and output as a unified structure array or key-value mapping structure to establish a heterogeneous data stream synchronization sensitivity level division structure.
[0029] See also Figure 3 , the specific steps for obtaining the multi-channel synchronous output priority period index table are as follows: S201: Extract the unit data flow throughput of the channel in the last five consecutive cycles based on the output channel log records, arrange the flow of each cycle in chronological order to form channel time series data, and establish a channel flow time series; To obtain each channel number in the output channel log record, it is necessary to first retrieve the channel passage record with time tags from the channel status monitoring module. Taking the current cycle number set to 100 to 104 as an example, channels T1, T2, and T3 are selected as operation objects, and the unit data flow throughput of each channel at cycles 100, 101, 102, 103, and 104 is extracted. The corresponding values of T1 are 23, 28, 25, 27, and 26 data segments, T2 are 35, 32, 29, 27, and 24, and T3 are 12, 14, 13, 15, and 17. Through this collection process, a channel-cycle-flow triple data structure is established, and the format of each data is ,in is the channel number, is the cycle number, The data flow rate of the channel in this period is calculated. After the data structure is completed, the five periods need to be rearranged in order to generate the time series of channel T1. The same is true for the other channels, for example, T2 is ,The data accuracy uniformly adopts “pieces / cycle” as the unit.,After the sequence assembly is completed, the data structure of each channel constitutes a unit flow vector arranged in periodic time sequence, which is the channel flow time series.
[0030] S202: Based on the channel flow time series, the flow values of two consecutive cycles are calculated to calculate the increase or decrease between the cycles, and the change direction and value are recorded in the calculation order to generate a channel throughput change sequence; Based on the channel flow time series, continuous difference calculation is performed on the five cycle data of each channel. The processing method is to subtract the throughput of the next cycle from the throughput of the previous cycle, and record the value and positive and negative direction. Taking channel T2 as an example, its original data is , calculate the period difference and get: , , , , the results are recorded as a sequence of changes , similarly for T1 data , processing yields: , T3 data , processed After the recording is completed, the flux difference sequence of each channel is formed. The corresponding change direction (increase or decrease) is represented by a symbol. No floating coefficient, trend model or window smoothing is used. Only the direct difference is used as the dynamic change quantity to record. The vector is used to represent the flux change state of each channel, which is the channel throughput change sequence.
[0031] S203: Based on the channel throughput change sequence, filter the period numbers with negative change values and record the number of consecutive occurrences. Determine whether the consecutive decreasing period is greater than the set minimum output period threshold. If so, mark the current channel segment as a candidate segment and add the corresponding channel number to establish a multi-channel synchronous output priority period index table. According to the difference in the channel throughput change sequence, the minimum continuous decline cycle threshold needs to be set in the judgment process This value means that the system considers that the channel is in a load reduction trend if the throughput rate drops continuously for 2 cycles or more. The setting reference is: the system data cycle is 20ms. If the two cycles continue to increase negatively, that is, the channel continues to release traffic within 40ms, it is sufficient as a basis for judgment. Not less than 2, under this benchmark, judge the T1 sequence The middle descending section is and , but the middle interval is the rising value + 3, which does not meet the continuity, T1 does not meet the conditions; T2 sequence has no falling value, it is all rising, skip; T3 sequence , the next two items are continuously decreasing, and they meet the threshold for two consecutive cycles, which is recorded as a qualified channel. The 3rd to 5th cycles of T3 are marked as candidate segments. The structure record format is , in this case , the candidate segment index is jointly output by the channel number and the period interval, and finally a multi-channel synchronous output priority period index table is established.
[0032] See also Figure 4 ,The steps for obtaining the high-sensitivity data stream output channel priority mapping table are as follows: S301: Based on the sensitivity level classification structure for synchronous heterogeneous data streams, extract the channel number corresponding to each data stream segment marked as highly sensitive, arrange them in sequence, and establish a number index mapping table to obtain a list of highly sensitive stream channel numbers; Based on the data flow segments marked as highly sensitive in the sensitivity level classification structure of heterogeneous data stream synchronization, it is necessary to first read the highly sensitive identification field and the corresponding flow segment number in the structure, and further extract the channel number information of each flow segment. For example, the highly sensitive flow segments include A-03, B-07, and C-12, which come from channel numbers T1, T2, and T3, respectively. For these three records, establish data item {flow segment number, channel number} pairs, which are {A-03, T1}, {B-07, T2}, and {C-12, T3}, respectively. Arrange them in order of channel numbers to obtain a number sequence. , then establish a structured index mapping table based on the flow segment number as the key and the channel number as the value, for example, {A-03:T1,B-07:T2,C-12:T3}. This table can support the rapid search and corresponding binding of data flow segments to channel paths in subsequent scheduling and matching actions. The process does not involve complex mapping functions and is completed only based on the combination of primary key field index and dictionary structure to form a channel number set record list, which is the high-sensitivity flow channel number list.
[0033] S302: Based on the high-sensitivity flow channel number list, the channel numbers in the multi-channel synchronous output priority period index table are matched one by one to determine whether the current time is within the priority output period corresponding to the channel. Channels with a positive determination result are set as primary output paths, and the remaining channels are set as secondary output paths. The channel priority path determination result is obtained. According to each channel number in the high-sensitivity flow channel number list, the output period index record corresponding to the channel number needs to be called one by one, and the current system running timestamp needs to be extracted. , to determine whether it falls within the priority output time interval corresponding to the current channel. For example, the priority output time interval of T1 is , T2 is , T3 is , the judgment method is comparison Whether the inequality condition in the interval is satisfied, that is, if , the channel is marked as a first-level output path, otherwise it is marked as a second-level output path. In this example, T1 and T3 meet this condition, so they are marked as first-level, while T2 does not meet it and is marked as second-level. This judgment logic does not involve weight ratios or confidence intervals. It is only based on the range comparison between the current timestamp and the time period interval, and the path identification field structure is output according to the channel number to construct a matching result record set. For example, {T1:1,T2:2,T3:1} is the channel priority path judgment result.
[0034] S303: Call the channel priority path determination result, bind the channel number and priority identifier corresponding to each high-sensitivity data flow to form structured mapping information, integrate the output path field according to the data flow number, and establish a high-sensitivity data flow output channel priority mapping table; After calling the channel priority path determination result, each data flow segment marked as highly sensitive is matched with its channel number and priority value, and the two fields are bound to form a key-value structure. For example, flow segment A-03 corresponds to channel T1, priority 1, and the structure is {A-03:[T1,1]}, and so on, B-07:[T2,2], C-12:[T3,1]. The final structure mapping set is then rearranged in ascending order according to the data flow segment number. The processing method does not rely on template mapping strategy or dynamic object model, but is implemented using basic field splicing and sorting logic processing. Each record in the output field structure includes at least three subfields: data flow segment number, channel number, and priority path level. Finally, a complete synchronous scheduling mapping structure is formed, which records the binding relationship between the channel scheduling priority and the corresponding flow segment, namely the high-sensitivity data flow output channel priority mapping table.
[0035] See also Figure 5 ,The steps for obtaining the priority list of key flow segment outputs are as follows: S401: Call the high-sensitivity data stream output channel priority mapping table, extract the corresponding receiving timestamp and the current count value of the master clock according to the data segment marked by the first-level output path, establish a time difference set according to the data segment sequence, and obtain a receiving delay time difference sequence; To call all the data segments marked with the first-level output path in the high-sensitivity data stream output channel priority mapping table, it is necessary to first identify the high-sensitivity data segments assigned with the first-level path labels in the current system cycle. For example, the data segments are numbered D01 to D06, where D01, D03, and D05 are marked as the first-level output paths, and the corresponding receiving timestamps are 、 、 , call the current system master clock count value and set it to , calculate the difference between each data segment and the master clock respectively, using the formula ,get 、 、 , rearrange this set of time difference values in numerical order to form a time difference value set , forming a delay representation of the receiving time relative to the system benchmark count. The smaller the value, the closer the data is to the synchronization boundary of the current cycle, reflecting its stronger timeliness. This process is completely based on the actual timestamp data to build and complete the difference calculation operation, without using any sliding window or prediction rules. After completing the above process, the receiving delay time difference sequence is obtained.
[0036] S402: Based on the received delay time difference sequence, perform an ascending sorting operation based on the time difference of each data segment and establish an ordered arrangement result. Call the position order of each data segment in the sequence and bind it to the source number identifier, calculate the sorting evaluation value of each data segment, and return the position according to the sorting evaluation value to establish a sorting priority sequence index table; The formula for calculating the ranking evaluation value of each segment of data is as follows: ; in, Indicates the The ranking evaluation value of the data segments, Indicates the The receiving timestamp of each data segment, Indicates the current master clock count value. Indicates the number of data segments currently participating in sorting, Indicates the The sequential number of each data segment in its source stream, : Indicates the maximum number value in the data segment number in the current source stream. Indicates the The receiving timestamp of each data segment; The ranking evaluation value is used to quantify the output urgency ranking index of the key flow segments under the current master clock. It comprehensively considers the current receiving delay time (the difference between the timestamp and the master clock) and the relative position of the data segment in its source flow (i.e., early segments first); Calculation logic description: The first term represents the reception delay strength between the data segment and the master clock (measured after normalization); The second item indicates how "front" the segment is in the source stream. The smaller the value, the higher the priority. The sum of the two items is the overall sorting basis, and the smaller the value, the higher the synchronization output priority is considered.
[0037] The sorting evaluation value is used to establish a sorting priority sequence index table for the final key segment scheduling output, which is directly associated with the key flow segment output sorting list; According to the time difference of each data segment in the receiving delay time difference sequence, an evaluation operation based on sorting and normalization needs to be performed. First, The sequence is sorted in ascending order by value, and the data segment sequence is D03 (3ms), D01 (7ms), and D05 (11ms). The segment numbers in the source stream are set as 、 、 , the maximum number value is , substitute into the evaluation ranking formula: ; The participation values are: 、 、 , and the sum after square is , the square root of the denominator is , the first result is: ; ; ; Finally, the positions are reset according to the sorted evaluation values, and the index order is D03, D01, and D05. The entire operation process strictly relies on the normalized numerical construction of time and structural position information, without the need for pre-training the model or using parameter optimizers. The final result is recorded in the form of a numbered sorted record structure of {D03: 0.867, D01: 0.88, D05: 1.822}, and a sorting priority sequence index table is established.
[0038] S403: Call the sorting priority sequence index table, map the data segment numbers and channel information corresponding to the first two items of the sorting value to the synchronous output interface, record the channel output order and data segment sequence number, and establish a key flow segment output priority list; Call the first two items of the sorting value in the sorting priority sequence index table, namely the data segment numbers of D03 and D01. According to the aforementioned mapping structure, extract their channel information as T3 and T1, build a scheduling mapping set, bind their corresponding channel numbers and data segment numbers one by one, assign them to the current system output interface structure, and record their specific interface numbers, timestamps, and sequence numbers. For example, the output structure is {channel: T3, data segment: D03, sequence: 1}, {channel: T1, data segment: D01, sequence: 2}. There is no need to perform priority weighting or channel scheduling rotation. It is only directly recorded and pushed into the scheduling buffer in sequence, and finally completes the synchronous output queue structure of the high-sensitivity data segments in the current cycle, and establishes a priority sorting list for the output of key flow segments.
[0039] See also Figure 6 The specific steps for obtaining the intersection and merge order information of the synchronous output of key data streams are as follows: S501: Call the key flow segment output priority list, extract the original source end unique identifier and sequence number of each data segment, classify the data segments by source end based on the identifier, and generate a source end sequence identifier mapping set; Call the key flow segment to output all data segments in the priority list. First, parse the structure field of each data segment, read its original source unique identifier field and the corresponding sequence number field value, and classify data segments with the same source identifier into the same group. For example, if the identifiers of data segments A, B, and C are all SRC_01, they are grouped together and indexed with the same number. During the construction process, set a data structure array with the SRC number as the key and all sequence numbers under the number as the value to store. The records are arranged in ascending order for subsequent processing. Suppose there are three groups of identifiers, namely SRC_01, SRC_02, and SRC_03, and the corresponding sequence numbers of each group are {1001, 1002, 1003}, {2001, 2003}, and {3001, 3002, 3004}, respectively. Establish a bidirectional mapping structure between the source and the corresponding sequence number. Subsequent operations can directly retrieve all data segments under any identifier based on this structure to generate a source sequence identifier mapping set.
[0040] S502: Based on the source end sequence identifier mapping set, the sequence numbers within the same identifier are numbered in ascending order, the difference between adjacent sequence numbers is calculated and compared with the set continuity judgment threshold, the continuous and non-continuous sequence structures are recorded, and the sequence number continuity judgment result is obtained; Based on each data segment in the source sequence identifier mapping set, all sequence numbers within each set of identifiers are processed. The sequence numbers are first sorted in ascending order. Then, two consecutive entries are taken and their difference is calculated to determine whether the difference is 1. If it is 1, the segment is considered continuous; if it is greater than 1, the segment is marked as discontinuous. For example, for the sequence number set {1001, 1002, 1003, 1005}, the difference between 1003 and 1005 is 2, which is considered discontinuous. The continuity threshold set during the comparison process is 1. If the difference is greater than 1, the segment is marked as discontinuous. The continuity threshold is set based on the agreed value of the single-frame sequence spacing specified in the data protocol specification. A value of 1 prevents skipping frames, otherwise it will interfere with stream reconstruction. In the sample data, 1001→1002 and 1002→1003 are marked as continuous, while 1003→1005 is marked as discontinuous. Finally, all interval segments and their corresponding sequence structures are recorded to form a distribution structure of continuous and discontinuous segments, and the sequence number continuity judgment result is obtained.
[0041] S503: Call the sequence number continuity judgment result, push the data segments marked as non-continuous into the independent output sub-channel queue according to their numbers, merge the continuous sequence data segments into the synchronous output queue, mark the channel number and position sequence index, and generate the key data stream synchronous output intersection and merge sequence information; Call all the data segment numbers marked as non-continuous in the serial number continuity judgment result, and push them into the independent output sub-channel queue respectively. Each queue is retained in the order of numbers. The independent channel output structure uses a hash mapping structure to maintain the correspondence between the numbers and independent output ports. For example, if there is a break between 1003 and 1005, the data segment belonging to 1005 enters channel C. If 1006 is the next one, it is determined separately whether it is still in a broken state. The merge operation sets up a synchronous output queue for the continuous segment, groups the data segments with complete sequence structure according to the identifier, and integrates the output order. Set its channel number as the main output channel number, record its channel number and its number index value in the current stream, and maintain the binding relationship between the data segment number, channel number, and sequence index in the form of a structure array, and finally generate the key data stream synchronous output intersection sequence information.
[0042] See also Figure 7 , a heterogeneous data stream synchronization control system, the heterogeneous data stream synchronization control system is used to execute the above-mentioned heterogeneous data stream synchronization control method, the system includes: The sensitivity level classification module obtains the reception time of two consecutive data segments from multiple data sources, calculates the synchronization difference, uses the synchronization difference and the set synchronization delay threshold to make interval judgments, and establishes a synchronization sensitivity level classification structure for heterogeneous data streams; The output priority analysis module constructs a channel throughput rate change sequence based on the output channel log records. It calls the time periods with negative increments in the throughput rate change sequence and aggregates and marks the continuous segments. It determines whether the continuous decreasing period is greater than the set minimum output cycle threshold. Combined with the channel identification number, it establishes a multi-channel synchronous output priority period index table. The channel priority mapping module extracts the corresponding channel number based on the heterogeneous data stream synchronization sensitivity level classification structure and makes a consistency judgment with the channel number in the multi-channel synchronization output priority period index table. It establishes a corresponding channel mapping relationship for each high-sensitivity stream and obtains the high-sensitivity data stream output channel priority mapping table. The key flow segment analysis module calls the high-sensitivity data stream output channel priority mapping table to obtain the difference between the timestamp and the current master clock count value. It uses the difference to sort the data segments to be allocated in ascending order, and distributes the top two items in sequence to the synchronous output port to establish a key flow segment output priority list. The intersection and merge sequence setting module calls the key flow segment output priority list, and judges the serial number continuity of data segments with the same identifier. If the serial number is discontinuous, it is pushed into an independent output sub-channel. If the serial number is continuous, it is merged and output processed to generate the key data flow synchronous output intersection and merge sequence information.
[0043] It should be understood that the term "and / or" as used herein simply describes a relationship between associated objects, indicating that three possible relationships exist. For example, "A and / or B" can represent: A alone, A and B together, or B alone. A and B can be singular or plural. Furthermore, the character " / " as used herein generally indicates an "or" relationship between the associated objects, but it may also indicate an "and / or" relationship. For specific understanding, please refer to the context.
[0044] In this disclosure, "at least one" means one or more, and "plurality" means two or more. "At least one of the following" or similar expressions refers to any combination of these items, including any combination of single or plural items. For example, "at least one of a, b, or c" can mean: a, b, c, ab, ac, bc, or abc, where a, b, and c can be single or plural.
[0045] It should be understood that in various embodiments of the present invention, the size of the serial numbers of the above-mentioned processes does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present invention.
[0046] Those skilled in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professionals and technicians can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of the present invention.
[0047] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the above-described equipment, devices and units can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0048] In the several embodiments provided by the present invention, it should be understood that the disclosed devices, apparatuses and methods can be implemented in other ways. For example, the device embodiments described above are merely illustrative. For example, the division of the units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another device, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interface, indirect coupling or communication connection of the device or unit, which can be electrical, mechanical or other forms.
[0049] The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.
[0050] In addition, each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
[0051] If the functions are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the portion that contributes to the prior art, or the portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions for enabling a computer device (which can be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in various embodiments of the present invention. The aforementioned storage media include various media that can store program code, such as USB flash drives, mobile hard drives, read-only memories (ROM), random access memories (RAM), magnetic disks, or optical disks.
[0052] The above description is merely a specific embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any modifications or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in the present invention should be included in the scope of protection of the present invention. Therefore, the scope of protection of the present invention should be based on the scope of protection of the claims.
Claims
1. A method for controlling synchronization of heterogeneous data streams, characterized in that: The following steps are involved: S1: Obtain the reception time of two consecutive data segments from multiple data sources, calculate the synchronization difference, use the synchronization difference and set the synchronization delay threshold to make interval judgment, and establish a synchronization sensitivity level classification structure for heterogeneous data streams; S2: Based on the output channel log records, a channel throughput change sequence is constructed. The time periods with negative increments in the throughput change sequence are called and continuous segments are aggregated and marked. It is determined whether the continuous decreasing period is greater than the set minimum output cycle threshold. Combined with the channel identification number, an index table of multi-channel synchronous output priority periods is established. S3: Based on the heterogeneous data stream synchronization sensitivity level classification structure, extract the corresponding channel number and perform consistency judgment on the channel number in the multi-channel synchronous output priority period index table, establish a corresponding channel mapping relationship for each high-sensitivity stream, and obtain a high-sensitivity data stream output channel priority mapping table; S4: Call the high-sensitivity data stream output channel priority mapping table, obtain the difference between the timestamp and the current master clock count value, use the difference to perform ascending sorting on the data segments to be allocated, and assign the first two items of the sorting to the synchronous output port in turn to establish a key stream segment output priority sorting list.
2. The heterogeneous data stream synchronization control method according to claim 1, characterized in that: The heterogeneous data stream synchronization sensitivity level division structure includes synchronization level label allocation rules, flow level sensitivity partition set and level and channel priority mapping relationship; the multi-channel synchronization output priority period index table is specifically a channel number index field, a priority period time boundary set and a channel scheduling candidate state identifier; the high-sensitivity data stream output channel priority mapping table includes a high-sensitivity stream number set, a channel priority corresponding set and an output path mapping logic; the key stream segment output priority sorting list is specifically a sorted data segment index sequence, a priority queue structure based on time difference and a main channel data scheduling identifier.
3. The heterogeneous data stream synchronization control method according to claim 2, characterized in that: The steps for obtaining the heterogeneous data stream synchronization sensitivity level classification structure are specifically as follows: S101: Obtain the reception time of two consecutive data segments from multiple data sources, call the reception time tags of the current segment and the previous segment of each data stream, pair them up in chronological order, calculate the difference between the time tags between the paired data segments, obtain the time interval value between the consecutive segments of each data stream, and generate a data stream time interval sequence; S102: Based on the data stream time interval sequence, extract a set of values from each sequence, perform three index operations, obtain the difference between the maximum and minimum values in the value set, calculate the standard deviation of the interval values and the ratio of the standard deviation to the mean as the deviation rate, calculate and obtain the synchronization difference value of each data stream, and establish a synchronization difference distribution result; S103: Based on the synchronization difference distribution result and the difference value of each data flow, the set upper and lower limit intervals of the synchronization delay threshold are called, and interval judgment is performed on the difference value. The results whose judgment values fall into the three intervals are marked as high-sensitivity flow, medium-sensitivity flow and low-sensitivity flow respectively, and the corresponding synchronization level identifiers are added and integrated into the same structure to establish a heterogeneous data flow synchronization sensitivity level division structure.
4. The heterogeneous data stream synchronization control method according to claim 3, characterized in that: The formula for calculating the synchronization difference value of each data stream is as follows: ; in, Indicates the maximum time interval between receiving adjacent data segments in a data stream. Indicates the minimum time interval between receiving adjacent data segments in a data stream. Indicates the The normalized value of the receiving time interval between data segments, Indicates the average value of the normalized time interval of the entire data stream. Indicates the total number of receiving time intervals involved in the calculation in each data stream. Indicates the synchronization difference value of the data stream.
5. The heterogeneous data stream synchronization control method according to claim 4, characterized in that: The steps for obtaining the multi-channel synchronous output priority period index table are specifically as follows: S201: Extract the unit data flow throughput of the channel in the last five consecutive cycles based on the output channel log records, arrange the flow of each cycle in chronological order to form channel time series data, and establish a channel flow time series; S202: Based on the channel flow time series, performing a difference calculation on the flow values of two consecutive cycles, calculating the increase or decrease between the cycles, and recording the change direction and value in the calculation order to generate a channel throughput change sequence; S203: According to the channel throughput change sequence, filter the cycle numbers with negative change values and record the number of consecutive occurrences, determine whether the continuous decline cycle is greater than the set minimum output cycle threshold, and if so, mark the current segment of the channel as a candidate segment, and attach the corresponding channel number to establish a multi-channel synchronous output priority period index table.
6. The heterogeneous data stream synchronization control method according to claim 5, characterized in that: The steps for obtaining the high-sensitivity data stream output channel priority mapping table are specifically as follows: S301: Based on the heterogeneous data stream synchronization sensitivity level classification structure, according to the data stream segments marked as highly sensitive, extract the channel number corresponding to each data stream segment, arrange them in order and establish a number index mapping table to obtain a list of highly sensitive stream channel numbers; S302: Match the high-sensitivity flow channel number list item by item with the channel number in the multi-channel synchronous output priority period index table, determine whether the current time is within the priority output period interval corresponding to the channel, set the channel with a positive determination result as a primary output path, and set the remaining channels as secondary output paths, thereby obtaining a channel priority path determination result; S303: Call the channel priority path determination result, and according to the channel number and priority identifier corresponding to each high-sensitivity data flow, bind the number and the priority path label to form structured mapping information, integrate the output path field according to the data flow number, and establish a high-sensitivity data flow output channel priority mapping table.
7. The method for controlling synchronization of heterogeneous data streams according to claim 6, wherein: The steps for obtaining the priority list of key flow segment outputs are specifically as follows: S401: Calling the high-sensitivity data stream output channel priority mapping table, extracting the corresponding receiving timestamp and the current count value of the master clock according to the data segment marked by the first-level output path, establishing a time difference set in the order of the data segments, and obtaining a receiving delay time difference sequence; S402: Based on the received delay time difference sequence, perform an ascending sorting operation according to the time difference of each data segment and establish an ordered arrangement result, call the position order of each data segment in the sequence and bind it to the source number identifier, calculate the sorting evaluation value of each data segment, return the position according to the sorting evaluation value, and establish a sorting priority sequence index table; The formula for calculating the ranking evaluation value of each segment of data is specifically: ; in, Indicates the The ranking evaluation value of the data segments, Indicates the The receiving timestamp of each data segment, Indicates the current master clock count value, Indicates the number of data segments currently participating in sorting, Indicates the The sequential number of each data segment in its source stream, : Indicates the maximum number value in the data segment number in the current source stream. Indicates the The receiving timestamp of each data segment; S403: Call the sorting priority sequence index table, map the data segment numbers and channel information corresponding to the first two items of the sorting value to the synchronous output interface, record the channel output order and data segment sequence number, and establish a key flow segment output priority list.
8. The heterogeneous data stream synchronization control method according to claim 7, characterized in that: The method further comprises the following steps: S5: calling the key stream segment output priority list, performing sequence number continuity check on the data segments with the same identifier, pushing them into independent output sub-channels if the sequence numbers are discontinuous, and performing merge output processing if the sequence numbers are continuous, to generate key data stream synchronous output intersection and merge sequence information; The key data stream synchronous output intersection and merge sequence information specifically refers to the merge output segment number sequence, the independent channel output stream identifier and the intersection and merge logic state field.
9. The method for controlling synchronization of heterogeneous data streams according to claim 8, wherein: The steps for obtaining the synchronization output intersection and merging sequence information of the key data stream are specifically as follows: S501: Call the key flow segment output priority list, extract the original source end unique identifier and sequence number of each data segment, classify and group the data segments by source end based on the identifier, and generate a source end sequence identifier mapping set; S502: Based on the source end sequence identifier mapping set, serial numbers within the same identifier are numbered in ascending order, differences between adjacent serial numbers are calculated and compared with a set continuity judgment threshold, continuous and non-continuous sequence structures are recorded, and a serial number continuity judgment result is obtained; S503: Call the sequence number continuity judgment result, push the data segment number marked as non-continuous into the independent output sub-channel queue, merge the continuous sequence data segments into the synchronous output queue, mark the channel number and position sequence index, and generate the key data stream synchronous output intersection sequence information.
10. Heterogeneous data stream synchronization control system, characterized in that: The system is used to implement the heterogeneous data stream synchronization control method according to any one of claims 1 to 9, and the system includes: The sensitivity level classification module obtains the reception time of two consecutive data segments from multiple data sources, calculates the synchronization difference, uses the synchronization difference and the set synchronization delay threshold to make interval judgments, and establishes a synchronization sensitivity level classification structure for heterogeneous data streams; The output priority analysis module constructs a channel throughput rate change sequence based on the output channel log records. It calls the time periods with negative increments in the throughput rate change sequence and aggregates and marks the continuous segments. It determines whether the continuous decreasing period is greater than the set minimum output cycle threshold. Combined with the channel identification number, it establishes a multi-channel synchronous output priority period index table. The channel priority mapping module extracts the corresponding channel number based on the heterogeneous data stream synchronization sensitivity level classification structure and performs consistency judgment with the channel number in the multi-channel synchronous output priority period index table, establishes a corresponding channel mapping relationship for each high-sensitivity stream, and obtains a high-sensitivity data stream output channel priority mapping table; The key flow segment analysis module calls the high-sensitivity data stream output channel priority mapping table, obtains the difference between the timestamp and the current master clock count value, uses the difference to perform ascending sorting on the data segments to be allocated, and sequentially allocates the top two items to the synchronous output port to establish a key flow segment output priority sorting list; The intersection and merge sequence setting module calls the key stream segment output priority list, and judges the serial number continuity of the data segments with the same identifier. If the serial number is discontinuous, it is pushed into an independent output sub-channel. If the serial number is continuous, it is merged and output processed to generate the key data stream synchronous output intersection and merge sequence information.
Citation Information
Cited By
Bidirectional linkage database table and supervision submission form field synchronous construction method
CN120950512A
Data recording system for autonomous vehicle
CN121438430A
Abnormal dynamic detection method in feed preparation process
CN121982616A
A cloud-oriented computer data synchronization method and system
CN122395219A
A cloud-oriented computer data synchronization method and system
CN122395219B