Distributed storage method of urban infrastructure data

CN123030564APending Publication Date: 2026-11-03YUNNAN JINGKANG REAL ESTATE DEVELOPMENT CO LTD +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202611133518.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-07-29
Publication Date
2026-11-03

AI Technical Summary

Technical Problem

Existing distributed storage technologies struggle to accurately distinguish data generated by different access sessions on the same node in urban infrastructure data processing, leading to biases in data source identification and update order conflicts. Furthermore, version management results in increased synchronization message size and storage space consumption.

Method used

Traffic status data and dynamic session identifiers are encapsulated into state micro-blocks, transient network node identifiers and logical clock sequences are configured, a causal directed acyclic graph is generated, and offline node records are cleaned up by disconnection tombstone feature stamps. Synchronization association score weights are calculated by combining road network topology and vehicle flow speed to achieve targeted route push and lock-free consistent data synchronization.

Benefits of technology

It improves the accuracy and efficiency of data synchronization, reduces the use of storage space and transmission bandwidth, and enhances the accuracy of data synchronization in dynamic road network environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN123030564A_ABST
    Figure CN123030564A_ABST
Patent Text Reader

Abstract

The present application relates to the technical field of distributed storage, and particularly to a distributed storage method for urban infrastructure data, comprising the following steps: encapsulating traffic state data of a data source infrastructure distributed node and a dynamic session identifier of a transient network connection node as data load, generating a state microblock, and configuring a point version vector stamp containing a transient network connection node identifier and a logical clock sequence for the state microblock.In the present application, a receiving end identifies concurrent states and causally progressive states according to a partial order relationship between a received point version vector stamp and a local point version vector stamp, establishes a causal synchronization edge between a state microblock at the receiving end and a state microblock at a pushing end, and merges a front state vertex and overwrites traffic state data accordingly, so that state convergence can be completed by multiple infrastructure distributed nodes without centralized locking, thereby improving data synchronization accuracy in a dynamic road network environment.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of distributed storage technology, and in particular to a distributed storage method for urban infrastructure data. Background Technology

[0002] Distributed storage technology refers to the technology of distributing data across multiple interconnected storage nodes according to predetermined partitioning rules, replication rules, or association relationships, and achieving collaborative data storage and access through data transmission, state synchronization, version management, fault detection, and consistency control between nodes.

[0003] Existing distributed storage typically distributes data across multiple storage nodes based on predetermined partitioning rules, replication rules, or fixed associations. Data availability is maintained through conventional data transmission, state synchronization, version management, and consistency control. However, in operating environments where urban infrastructure data is continuously generated, nodes are temporarily connected, and network connections frequently change, fixed node identities and static version records struggle to accurately distinguish data generated by different access sessions of the same node. This can easily lead to the mixing of updated content after reconnection with historical session records, causing biases in data source identification and update order conflicts. Conventional version management often saves clock records for each node individually. As the number of nodes increases or the update frequency rises, version information expands continuously with data updates, and offline node records are retained for extended periods. This results in increased synchronization message size, continuous storage space consumption, and an increase in invalid comparisons. For example, if a road sensing node exits due to network interruption, the relevant version dimensions still participate in subsequent synchronization judgments, potentially prolonging the state comparison time at the receiving end. Therefore, improvements are needed. Summary of the Invention

[0004] The purpose of this invention is to address the shortcomings of existing technologies by proposing a distributed storage method for urban infrastructure data.

[0005] To achieve the above objectives, the present invention adopts the following technical solution: a distributed storage method for urban infrastructure data, comprising the following steps: The traffic status data of the data source infrastructure distributed nodes and the dynamic session identifier of the transient network nodes are encapsulated into a data payload to generate a state microblock. A dotted version vector stamp containing the transient network node identifier and the logical clock sequence is configured for the state microblock. A partial order pointer connection is established between the state microblock and the local historical state microblock to generate a causal directed acyclic graph. Merge the continuous logical clock sequences within the dotted version vector stamps to generate a continuous compressed clock interval; determine that the transient network node that exceeds the heartbeat timeout monitoring period is an offline node, and generate a disconnected tombstone feature stamp; The garbage collection mechanism is triggered by the disconnected tombstone feature stamp to remove the logical clock dimension record corresponding to the offline node, and the continuous compressed clock interval is encapsulated to output compressed causal synchronization metadata. Based on the road network physical topology relationship between the data source infrastructure distributed nodes and the target infrastructure distributed nodes, a spatial location vector is generated, and the spatial location vector is multiplied by the real-time traffic flow speed vector to obtain the synchronous association scoring weight. An exponential decay function is introduced for the synchronization association score weights that are below the preset synchronization limit to generate a targeted routing push strategy.

[0006] Preferably, the method further includes: A network transmission channel is established according to the directional routing push strategy, and the compressed causal synchronization metadata and the front-end state vertices of the causal directed acyclic graph are distributed to the target infrastructure distributed nodes. At the receiving end of the target infrastructure distributed node, if the partial order relationship between the received point version vector stamp and the local point version vector stamp is determined to be either concurrent or causal progressive, a causal synchronization edge is constructed between the state microblocks of the receiving end and the pushing end. The leading state vertices are merged through the causal synchronization edge, and the traffic state data is overwritten, thereby completing the lock-free consistent data synchronization of the infrastructure distributed system.

[0007] Preferably, the step of obtaining the state micro-block is as follows: Traffic status data is read sequentially from the output cache of the distributed nodes of the data source infrastructure. The data record boundaries, generation order, transient network node markers, and transient network node access association information of each traffic status data are identified. The dynamic session identifier assigned when accessing the network is extracted from the network access record of the transient network node. The transient network node to which the dynamic session identifier belongs is verified according to the transient network node access association information. Traffic status data and dynamic session identifiers with the same transient network node are written into the same payload structure. The data record boundaries of the traffic status data and the identifier boundaries of the dynamic session identifier are marked respectively. The data payload fields are combined and encapsulated according to their order to generate a status micro-block.

[0008] Preferably, the steps for obtaining the causal directed acyclic graph are as follows: Read the transient network node identifier corresponding to the state micro-block, retrieve the logical clock sequence that the transient network node identifier has been recorded in the local historical state micro-block, extract the last position of the recorded logical clock sequence, allocate the current logical clock sequence to the state micro-block according to the successor order of the last position of the logical clock sequence, check the current logical clock sequence and the recorded logical clock sequence item by item, if the current logical clock sequence is not later than the last position of the recorded logical clock sequence, then extend the current logical clock sequence to after the last position of the logical clock sequence, write the transient network node identifier and the current logical clock sequence into the version record position of the state micro-block, and obtain the dotted version vector stamp; Locate the state micro-block corresponding to the point-like version vector stamp, read the transient network node identifier and logical clock sequence configured in the local historical state micro-block, filter the local historical state micro-blocks generated by the same transient network node according to the consistency of the transient network node identifier, remove local historical state micro-blocks that are later than the current logical clock sequence according to the chronological relationship of the logical clock sequence, select local historical state micro-blocks whose logical clock sequence is earlier than the current logical clock sequence and have no intermediate logical clock sequence as predecessor vertices, determine the state micro-block as the current vertex, write a partial order pointer connection from the current vertex to the predecessor vertex, restrict the partial order pointer connection to extend only along the chronological direction of the logical clock sequence, and form a causal directed acyclic graph.

[0009] Preferably, the step of obtaining the continuously compressed clock interval is as follows: The vertex version vector stamps are read from each vertex in the causal directed acyclic graph. The transient network node identifier and logical clock sequence recorded in each vertex version vector stamp are parsed. The logical clock sequences are classified according to the transient network node identifier. For each transient network node, the logical clock sequences are arranged in ascending order. The sequence number difference between adjacent logical clock sequences is compared item by item. When the sequence number difference is equal to one increment unit, the starting endpoint of the previous logical clock sequence is retained, and the ending endpoint of the next logical clock sequence is updated. When the sequence number difference exceeds one increment unit, the connection of the current endpoint is truncated at the position corresponding to the sequence number difference, and the starting endpoint of the next logical clock sequence is re-determined until the starting and ending endpoints of all logical clock sequences are merged to generate a continuous compressed clock interval.

[0010] Preferably, the step of obtaining the compressed causal synchronization metadata is as follows: Based on the continuously compressed clock intervals, the transient network node identifier corresponding to each continuously compressed clock interval is extracted. For each transient network node, the most recent heartbeat response time and the current monitoring time are registered. The current monitoring time is repeatedly read according to the pre-set heartbeat timeout monitoring cycle. The time difference between the current monitoring time and the most recent heartbeat response time is calculated, and the time difference is determined as the non-response time. The non-response time is compared item by item with the heartbeat timeout monitoring cycle. If the non-response time does not exceed the heartbeat timeout monitoring cycle, the online status of the transient network node is retained. If the non-response time exceeds the heartbeat timeout monitoring cycle, the transient network node is marked as an offline node. The transient network node identifier, the most recent heartbeat response time, the timeout judgment time, and the termination endpoint of the continuously compressed clock interval are written to the offline node to generate a disconnection tombstone feature stamp. If the transient network node marked as an offline node reconnects to the network, a new dynamic session identifier is assigned and it is processed as a new transient network node. Based on the disconnected tombstone feature stamp, the transient network node identifier recorded in the disconnected tombstone feature stamp is read. The logical clock dimension cleanup of the point-like version vector stamp is initiated. The transient network node identifier recorded in each point-like version vector stamp in the causal directed acyclic graph is read item by item. The transient network node identifier is checked to see if it is equal to the transient network node identifier recorded in the disconnected tombstone feature stamp. If the transient network node identifiers are the same, the logical clock dimension record in the corresponding point-like version vector stamp is deleted. If the transient network node identifiers are different, the logical clock dimension record in the corresponding point-like version vector stamp is retained. The corresponding continuous compressed clock intervals are selected according to the retained logical clock dimension records. The continuous compressed clock intervals are arranged according to the transient network node identifiers. The start endpoint, end endpoint and corresponding point-like version vector stamp of the continuous compressed clock interval are written item by item, and the compressed causal synchronization metadata is encapsulated.

[0011] Preferably, the step of obtaining the synchronous association scoring weight is as follows: Read the road network coordinates, road connection ports, road extension directions, and road traffic directions of the data source infrastructure distributed nodes. Search for the surrounding target infrastructure distributed nodes that can be reached through continuous road connections one by one. Record the road network coordinates of each target infrastructure distributed node. Arrange the road segments between the data source infrastructure distributed nodes and the target infrastructure distributed nodes according to the connection order of the road connection ports. Eliminate road segments with opposite traffic directions or interrupted road connection ports. Determine the effective connection direction from the data source infrastructure distributed node to each target infrastructure distributed node. Calculate the position difference of the road network coordinates on the horizontal coordinate axis, vertical coordinate axis, and height coordinate axis respectively. Correct the positive and negative directions of each position difference according to the effective connection direction to generate a spatial position vector. Within the coverage boundary of each target infrastructure distributed node, vehicle speed and direction are continuously collected. Vehicle speed values ​​are arranged in chronological order of entry into the coverage boundary. Vehicle speed values ​​whose directions do not correspond to the roads connecting to the target infrastructure distributed node are deleted. The remaining vehicle speed values ​​are decomposed into lateral, longitudinal, and vertical speed components. The positive and negative directions of each speed component are unified according to the coordinate axis direction corresponding to the spatial position vector. Each position component of the spatial position vector is multiplied by its corresponding speed component. The product of each component along the coordinate axis is summed to obtain a dot product. If the dot product is positive, it indicates that the traffic flow is propagating towards the target infrastructure distributed node, and the dot product is directly used as the synchronization association scoring weight. If the dot product is negative, it indicates that the traffic flow is propagating away from the target infrastructure distributed node, and the synchronization association scoring weight is reset to a preset minimum value to obtain the synchronization association scoring weight of the target infrastructure distributed node.

[0012] Preferably, the step of obtaining the targeted routing push strategy is as follows: The synchronization association score weight corresponding to each target infrastructure distributed node is read one by one. A preset synchronization limit is retrieved according to the same dimension. The synchronization association score weight is compared with the preset synchronization limit item by item. When the synchronization association score weight is greater than or equal to the preset synchronization limit, the synchronization association score weight is retained. The priority push order of the target infrastructure distributed nodes is determined according to the descending order of the synchronization association score weight. When the synchronization association score weight is lower than the preset synchronization limit, the difference between the synchronization association score weight and the preset synchronization limit is calculated. By substituting the difference as an independent variable into a preset negative exponential function, the attenuated push weight is determined according to the relationship that the push intensity decreases exponentially as the difference increases. The delayed push order of the target infrastructure distributed nodes is arranged according to the attenuated push weight. The target infrastructure distributed node identifier, priority push order, delayed push order and corresponding push weight are written respectively to generate a targeted routing push strategy.

[0013] Preferably, the steps to complete lock-free consistent data synchronization in a distributed infrastructure system are as follows: According to the targeted routing push strategy, the target infrastructure distributed node identifier, push order, and push weight corresponding to each target infrastructure distributed node are read. The network address, communication port, and current connection status of the target infrastructure distributed node are parsed sequentially according to the push order. The current round of distribution is stopped for target infrastructure distributed nodes whose network address cannot be accessed or whose communication port is not open. A connection request is initiated for target infrastructure distributed nodes whose network address can be accessed and whose communication port is open. After completing the identity response verification, the sending port and receiving port are locked. According to the target infrastructure distributed node identifier, the compressed causal synchronization metadata and the front-end state vertices of the causal directed acyclic graph are written into the corresponding sending sequence. The distribution order of the sending sequence is determined according to the push weight, and a network transmission channel is established. Based on the network transmission channel, the compressed causal synchronization metadata and the leading edge state vertices of the causal directed acyclic graph are received item by item at the receiving end of the target infrastructure distributed node. The target infrastructure distributed node identifier and the sending sequence boundary corresponding to the received content are verified. The point-like version vector stamp configured by the received leading edge state vertex is extracted. The local point-like version vector stamp configured by the local leading edge state vertex of the target infrastructure distributed node is read. The logical clock sequence is compared dimension by dimension according to the same transient network node identifier. When the received logical clock sequence is not earlier than the local logical clock sequence in all corresponding dimensions and at least one corresponding dimension is later than the local logical clock sequence, it is determined to be a causal progressive state. When the received logical clock sequence is later than the local logical clock sequence in some corresponding dimensions and earlier than the local logical clock sequence in the remaining corresponding dimensions, it is determined to be a concurrent state. The receiving end state microblock and the pushing end state microblock are located. Vertex references and logical clock sequence association records are written in the direction from the receiving end state microblock to the pushing end state microblock to form a causal synchronization connection. Read the receiving end state micro-blocks and pushing end state micro-blocks corresponding to both ends of the causal synchronization connection, extract the local leading edge state vertices corresponding to the receiving end state micro-blocks, extract the receiving leading edge state vertices corresponding to the pushing end state micro-blocks, retain the leading edge state vertices with later logical clock sequences dimension by dimension according to the transient network node identifiers recorded by the point version vector stamp, and simultaneously retain the leading edge state vertices that cannot form a sequential relationship in the concurrent state, delete the local leading edge state vertex references that have been covered by the leading edge state vertices with later logical clock sequences, reconstruct the leading edge state vertex reference relationship of the target infrastructure distributed node, read the traffic state data from the state micro-blocks corresponding to the retained leading edge state vertices, locate the storage location corresponding to the same dynamic session identifier of the target infrastructure distributed node according to the dynamic session identifier, write the traffic state data to the corresponding storage location and replace the original traffic state data, and complete the lock-free consistent data synchronization of the infrastructure distributed system.

[0014] Compared with the prior art, the advantages and positive effects of the present invention are as follows: In this invention, traffic status data and dynamic session identifiers are encapsulated into state microblocks, and transient network node identifiers and logical clock sequences are configured for each state microblock. This ensures that each piece of traffic status data simultaneously possesses source identification, session differentiation, and temporal positioning criteria. A partial-order pointer connection is established between the state microblock and the local historical state microblock based on the logical clock sequence, enabling the data update process generated by distributed storage nodes to form a traceable causal directed acyclic graph, reducing update order confusion and concurrent state misjudgment that occur when relying solely on overwrite writes. For continuous logical clock sequences of the same transient network node, the first and last endpoints are merged, compressing each clock record into a continuous compressed clock interval. Simultaneously, offline nodes are identified based on the heartbeat timeout monitoring cycle, and the logical clock dimension records corresponding to offline nodes are cleaned up using disconnection tombstone feature stamps. This allows the scale of synchronized metadata to adjust according to changes in the status of effective online nodes, reducing duplicate clock records and invalid node records. The system occupies storage space and transmission bandwidth; it generates spatial location vectors based on the physical topology of the road network between the data source infrastructure distributed nodes and the target infrastructure distributed nodes, and then calculates the synchronization association score weights in conjunction with the real-time traffic flow speed vectors. This allows the data push objects and push order to simultaneously reflect the road connection direction, spatial adjacency, and traffic flow propagation trend. For synchronization association score weights below the preset synchronization limit, exponential decay processing is performed, which can reduce the network transmission resources occupied by target infrastructure distributed nodes with insufficient association. The receiving end identifies concurrent states and causal progressive states based on the partial order relationship between the received point version vector stamp and the local point version vector stamp. Causal synchronization edges are established between the state microblocks of the receiving end and the state microblocks of the pushing end, and the leading state vertices are merged and traffic state data is overwritten accordingly. This allows multiple infrastructure distributed nodes to complete state convergence without centralized locking, thereby improving the data synchronization accuracy in the dynamic road network environment. Attached Figure Description

[0015] Figure 1 A diagram illustrating the synchronization of associated scoring weights and the weights pushed after decay; Figure 2 This is a schematic diagram illustrating the number of state microblocks contained within a continuously compressed clock interval. Detailed Implementation

[0016] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the invention.

[0017] Please see Figure 1-2 This invention provides a technical solution: a distributed storage method for urban infrastructure data, comprising the following steps: The traffic status data of the data source infrastructure distributed nodes and the dynamic session identifier of the transient network nodes are encapsulated into a data payload to generate a state microblock. A dot-like version vector stamp containing the transient network node identifier and the logical clock sequence is configured for the state microblock. A partial order pointer connection is established between the state microblock and the local historical state microblock to generate a causal directed acyclic graph. Merge consecutive logical clock sequences within the dotted version vector stamps to generate consecutive compressed clock intervals; Transient network nodes that exceed the heartbeat timeout monitoring period are identified as offline nodes. Disconnection tombstone feature stamps are generated. The disconnection tombstone feature stamps are used to trigger a garbage collection mechanism to remove the logical clock dimension records corresponding to offline nodes. Compressed causal synchronization metadata is encapsulated and continuously compressed clock intervals are output. Based on the road network physical topology relationship between the data source infrastructure distributed nodes and the target infrastructure distributed nodes, a spatial location vector is generated. The spatial location vector is multiplied by the real-time traffic flow speed vector to obtain the synchronous association scoring weight. An exponential decay function is introduced for the synchronization association score weights below the preset synchronization limit to generate a targeted routing push strategy; A network transmission channel is established based on the directional routing push strategy, and the compressed causal synchronization metadata and the front-end state vertices of the causal directed acyclic graph are distributed to the target infrastructure distributed nodes. At the receiving end of the target infrastructure distributed node, if the partial order relationship between the received point version vector stamp and the local point version vector stamp is determined to be either concurrent or causal progressive, then a causal synchronization edge is constructed between the state micro-blocks of the receiving end and the pushing end. The leading state vertices are merged and the traffic state data is overwritten through the causal synchronization edge, thus completing the lock-free consistent data synchronization of the infrastructure distributed system.

[0018] The steps for obtaining the state micro-block are as follows: Traffic status data is read sequentially from the output cache of the distributed nodes of the data source infrastructure. The data record boundaries, generation order, transient network node markers, and transient network node access association information of each traffic status data are identified. The dynamic session identifier assigned when accessing the network is extracted from the network access record of the transient network node. The transient network node to which the dynamic session identifier belongs is verified according to the transient network node access association information. Traffic status data and dynamic session identifiers with the same transient network node are written into the same payload structure. The data record boundaries of the traffic status data and the identifier boundaries of the dynamic session identifier are marked respectively. The data payload fields are combined and encapsulated according to their order to generate a status micro-block.

[0019] Specifically, based on traffic status data and transient network access records of connected nodes in the output cache, the fixed header and payload area of ​​each record are read according to the cache write offset. The record length, generation sequence number, acquisition time, transient connected node identifier, access port identifier, and access association key are extracted from the fixed header. The end position of the record is located according to the record length. When the number of bytes already reached in the cache is less than the record length, the current read offset is retained and subsequent bytes are awaited. When the number of bytes already reached equals the record length, the data record boundary is confirmed. Records of the same transient connected node are arranged in ascending order of generation sequence number. The connection establishment time in the network access record is retrieved using the access association key. The access port identifier and dynamic session identifier require that the transient network node identifier and access port identifier in the traffic status data be consistent with the corresponding fields in the network access record. If any field is inconsistent, the record will not be combined. If all fields are consistent, the lane number, vehicle speed, vehicle direction, occupancy rate, and collection time will be extracted as traffic status fields, and the dynamic session identifier will be extracted as session fields. The micro-block header, traffic status fields, session fields, and version record reserved positions will be arranged in the order of type length value structure. The micro-block header will register the starting offset and length of the traffic status field and the starting offset and length of the session field, as well as the generation sequence number. For example, if the traffic status field occupies 208 bytes and the dynamic session identifier occupies 16 bytes, the field boundaries corresponding to 208 bytes and 16 bytes will be registered respectively. The data will be continuously written into the same payload structure and the field boundary verification will be completed to generate the status micro-block.

[0020] The steps to obtain a causal directed acyclic graph are as follows: Read the transient network node identifier corresponding to the state microblock, retrieve the logical clock sequence that the transient network node identifier has been recorded in the local historical state microblock, extract the last bit of the recorded logical clock sequence, assign the current logical clock sequence to the state microblock according to the successor order of the last bit of the logical clock sequence, check the current logical clock sequence and the recorded logical clock sequence item by item, if the current logical clock sequence is not later than the last bit of the recorded logical clock sequence, then extend the current logical clock sequence to after the last bit of the logical clock sequence, write the transient network node identifier and the current logical clock sequence into the version record position of the state microblock, and obtain the dotted version vector stamp; The system locates the state micro-block corresponding to the point-like version vector stamp, reads the transient network node identifier and logical clock sequence configured in the local historical state micro-block, filters the local historical state micro-blocks generated by the same transient network node according to the consistency of the transient network node identifier, removes local historical state micro-blocks that are later than the current logical clock sequence according to the chronological relationship of the logical clock sequence, selects local historical state micro-blocks whose logical clock sequence is earlier than the current logical clock sequence and has no intermediate logical clock sequence as predecessor vertices, determines the state micro-block as the current vertex, writes a partial order pointer connection from the current vertex to the predecessor vertex, restricts the partial order pointer connection to extend only along the chronological direction of the logical clock sequence, forming a causal directed acyclic graph.

[0021] Specifically, based on the transient network node identifier and version record reserved position in the state microblock, the local historical state microblock index is retrieved using the transient network node identifier. The corresponding logical clock sequence is read, and the maximum sequence number is located as the last historical position. At the same time, the candidate sequence numbers given by the current round of logical clock allocator are read. The current logical clock sequence is then processed according to... It is confirmed that, among them, Representing the The current logical clock sequence ultimately used by each state microblock This represents the candidate number given in this round. The last bit of the historical logical clock sequence representing the identifier of the same transient network node. This represents the sequential number of the microblock in the processing queue. When the last historical digit is 37 and the candidate number is 36, the current logical clock sequence is 38. When the last historical digit is 37 and the candidate number is 42, the current logical clock sequence is 42. Then, the current logical clock sequence is checked against the historical index of the same transient network node identifier to see if it is occupied. If occupied, the index is incremented by 1 and checked again until an unused sequence number is obtained. The transient network node identifier is then combined with the final sequence number. ,in, Representing the The dotted version vector stamp of each state microblock This represents the transient network node identifier corresponding to the microblock in this state. The current logical clock sequence representing the completion of conflict verification will Write the version record into the reserved location, and register the index relationship between the status micro-block identifier, the transient network node identifier, and the current logical clock sequence to obtain the dotted version vector stamp.

[0022] Based on dot-matrix version vector stamps and local historical state micro-block indexes, a candidate historical set is established according to the transient network node identifiers in the dot-matrix version vector stamps. Only state micro-blocks with the same transient network node identifier and whose logical clock sequence is less than the current logical clock sequence are retained, and the predecessor vertex is determined as... ,in, This represents the predecessor vertex corresponding to the current microblock. The identifier representing a transient network node is A collection of local historical state microblocks The transient network node identifier representing the current state of the micro-block. Represents any state microblock in the candidate history set. Representing state microblocks Recorded logical clock sequence, The logical clock sequence representing the current state microblock. The process involves selecting the candidate state microblock with the largest logical clock sequence. If no state microblock meets the condition, the current state microblock is registered as the root vertex. For example, if the historical logical clock sequences are 12, 13, and 15 and the current logical clock sequence is 16, the state microblock corresponding to 15 is selected as the predecessor vertex, and the state microblock corresponding to 13 is not selected. Then, the logical clock sequence of the predecessor vertex is checked to see if it is less than the current logical clock sequence. If the check fails, the pointer writing stops. If the check succeeds, the current state microblock is registered as the current vertex. The predecessor vertex identifier, the predecessor logical clock sequence, and the state microblock storage address are written at the predecessor reference position. The partial order pointer connection from the current vertex to the predecessor vertex is registered in the adjacency index to form a causal directed acyclic graph.

[0023] The steps for obtaining the continuously compressed clock interval are as follows: The vertex version vector stamps are read from each vertex of the causal directed acyclic graph. The transient network node identifier and logical clock sequence recorded in each vertex version vector stamp are parsed. The logical clock sequences are classified according to the transient network node identifier. For each transient network node, the logical clock sequences are arranged in ascending order. The sequence number difference between adjacent logical clock sequences is compared one by one increment. When the sequence number difference is equal to one increment, the start endpoint of the previous logical clock sequence is retained and the end endpoint of the next logical clock sequence is updated. When the sequence number difference exceeds one increment, the connection of the current endpoint is truncated at the position corresponding to the sequence number difference, and the start endpoint of the next logical clock sequence is re-determined. This process continues until the start and end endpoints of all logical clock sequences are merged to generate a continuous compressed clock interval.

[0024] Specifically, based on the vertex-based version vector stamps configured at each vertex in the causal directed acyclic graph, transient network node identifiers and logical clock sequences are extracted item by item. Using the transient network node identifiers as grouping keys, the logical clock sequences within the same group are deduplicated and arranged in ascending order. For each group, a first interval is established, and the smallest logical clock sequence is simultaneously registered as both the start and end endpoints. Subsequent logical clock sequences are then processed according to... Maintenance, among which, The identifier representing a transient network node is The first generated at time A series of compressed clock intervals, Represents the start and end points of this interval. This represents the endpoint of the interval. This represents the transient network node identifier corresponding to the current group. Represents the permutation number of the current group interval, and reads the next logical clock sequence. At that time, if Then keep the starting endpoint unchanged and update the ending endpoint to ,in, Represents the current logical clock sequence to be merged, if Then close the current interval and use Establish the next consecutive compressed clock interval, if If the sequence number is repeated, it is considered a duplicate and skipped. For example, if the logical clock sequence is 1, 2, 3, 7, 8, 10, then the following steps are taken: , and Each interval simultaneously registers the corresponding first vertex reference, last vertex reference, and the number of state micro-blocks contained in the interval, completing the endpoint merging of all transient network node groups and generating a continuous compressed clock interval.

[0025] The steps for obtaining compressed causal synchronization metadata are as follows: Based on continuously compressed clock intervals, the transient network node identifier corresponding to each continuously compressed clock interval is extracted. For each transient network node, the most recent heartbeat response time and the current monitoring time are registered. The current monitoring time is repeatedly read according to a pre-set heartbeat timeout monitoring cycle. The time difference between the current monitoring time and the most recent heartbeat response time is calculated, and the time difference is determined as the non-response time. The non-response time is compared item by item with the heartbeat timeout monitoring cycle. If the non-response time does not exceed the heartbeat timeout monitoring cycle, the online status of the transient network node is retained. If the non-response time exceeds the heartbeat timeout monitoring cycle, the transient network node is marked as an offline node. The transient network node identifier, the most recent heartbeat response time, the timeout judgment time, and the termination endpoint of the continuously compressed clock interval are written to the offline node to generate a disconnection tombstone feature stamp. If the transient network node marked as an offline node reconnects to the network, a new dynamic session identifier is assigned and it is processed as a new transient network node. Based on the disconnected tombstone feature stamp, the transient network node identifier recorded in the disconnected tombstone feature stamp is read. The logical clock dimension cleanup of the point version vector stamp is initiated. The transient network node identifier of each point version vector stamp record in the causal directed acyclic graph is read item by item. The transient network node identifier is checked to see if it is equal to the transient network node identifier recorded in the disconnected tombstone feature stamp. If the transient network node identifiers are the same, the logical clock dimension record in the corresponding point version vector stamp is deleted. If the transient network node identifiers are different, the logical clock dimension record in the corresponding point version vector stamp is retained. The corresponding continuous compressed clock intervals are selected according to the retained logical clock dimension records. The continuous compressed clock intervals are arranged according to the transient network node identifiers. The start endpoint, end endpoint and corresponding point version vector stamp of the continuous compressed clock interval are written item by item, and the compressed causal synchronization metadata is encapsulated.

[0026] Specifically, based on continuously compressed clock intervals and network access records of each transient network node, the most recent heartbeat response time, heartbeat transmission cycle, and current monitoring time are read according to the transient network node identifier. The heartbeat timeout monitoring cycle is set based on the successful heartbeat records of the last 30 days. First, the time from successful heartbeat transmission to response is calculated and the 99th percentile value is taken. Then, the duration corresponding to three consecutive heartbeat transmission cycles is calculated, and the larger of the two values ​​is selected as the heartbeat timeout monitoring cycle. For example, if the heartbeat transmission cycle is 5 seconds, the 99th percentile value of the successful heartbeat response time of the last 30 days is 8 seconds, and three consecutive heartbeat transmission cycles are 15 seconds, then the heartbeat timeout monitoring cycle is set to 15 seconds. The current monitoring time is updated once every heartbeat transmission cycle. The current monitoring time is subtracted from the most recent heartbeat response time to obtain the non-response time. If the non-response time does not exceed 15 seconds, the online status is maintained; if the non-response time exceeds 15 seconds, the online status is maintained. When a transient connected node is registered as an offline node, the largest termination endpoint is read from the continuous compressed clock interval corresponding to that transient connected node. The transient connected node identifier, the most recent heartbeat response time, the timeout determination time, the heartbeat timeout monitoring period, and the largest termination endpoint are written into the same tombstone record to generate a disconnection tombstone feature stamp. When the same physical terminal is found to re-establish a network connection, the original dynamic session identifier is not used. A new 128-bit dynamic session identifier is allocated according to the UUIDv4 rules, and the new dynamic session identifier is associated with the new transient connected node identifier. The original disconnection tombstone feature stamp continues to be retained under the original transient connected node identifier. The reconnection record is processed as a completely new transient connected node.

[0027] Based on the disconnected tombstone feature stamp and continuously compressed clock intervals, the transient network node identifier and maximum termination endpoint are read from the disconnected tombstone feature stamp. The causal confirmation frontiers returned by each of the currently online target infrastructure distributed nodes are then read. The logical clock dimension cleanup conditions are based on… Check, among which, This represents the set of distributed infrastructure nodes that are currently maintaining network connectivity. Represents any target infrastructure distributed node in the set. Representative target infrastructure distributed nodes Transient network nodes that have been confirmed to have received the data The maximum logical clock sequence, The transient network node identifier representing the characteristic stamp record of the disconnected tombstone. This represents the maximum endpoint of the feature stamp record for the disconnected tombstone. This means that all target infrastructure distributed nodes within the set must meet comparison conditions. For example, if the maximum termination endpoint is 38, and the confirmation fronts of the three online target infrastructure distributed nodes are 40, 41, and 38 respectively, then the cleanup begins. If the fronts are 40, 41, and 37 respectively, then the logical clock dimension is not deleted temporarily. After entering the cleanup, the vertex version vector stamp is read vertex by vertex, and the transient network node identifier is deleted. The logical clock dimension is recorded, and the identifiers of the remaining transient network nodes and their corresponding logical clock sequences are retained. Continuous compressed clock intervals are selected according to the retained logical clock dimension. The intervals are arranged in the order of transient network node identifier, start endpoint, and end endpoint. The transient network node identifier, interval start endpoint, interval end endpoint, and corresponding point-like version vector stamp reference are written item by item and encapsulated to form compressed causal synchronization metadata.

[0028] The steps for obtaining the weights of the synchronous correlation rating are as follows: Read the road network coordinates, road connection ports, road extension directions, and road traffic directions of the data source infrastructure distributed nodes. Search for the surrounding target infrastructure distributed nodes that can be reached through continuous road connections one by one. Record the road network coordinates of each target infrastructure distributed node. Arrange the road segments between the data source infrastructure distributed nodes and the target infrastructure distributed nodes according to the connection order of the road connection ports. Eliminate road segments with opposite traffic directions or interrupted road connection ports. Determine the effective connection direction from the data source infrastructure distributed node to each target infrastructure distributed node. Calculate the position difference of the road network coordinates on the horizontal coordinate axis, vertical coordinate axis, and height coordinate axis respectively. Correct the positive and negative directions of each position difference according to the effective connection direction to generate a spatial position vector. Within the coverage boundary of each target infrastructure distributed node, vehicle speed and direction are continuously collected. Vehicle speed data are arranged in chronological order of entry into the coverage boundary. Vehicle speed data whose direction does not correspond to the road connecting the target infrastructure distributed node are deleted. The remaining vehicle speed data are decomposed into lateral, longitudinal, and vertical speed components. The positive and negative directions of each speed component are unified according to the coordinate axis direction corresponding to the spatial position vector. Each position component of the spatial position vector is multiplied by its corresponding speed component. The product of each component along the coordinate axis is summed to obtain the dot product. If the dot product is positive, it indicates that the traffic flow is propagating towards the target infrastructure distributed node, and the dot product is directly used as the synchronization association scoring weight. If the dot product is negative, it indicates that the traffic flow is propagating away from the target infrastructure distributed node, and the synchronization association scoring weight is reset to a preset minimum value, thus obtaining the synchronization association scoring weight of the target infrastructure distributed node.

[0029] Specifically, based on the road network coordinates, road connection ports, road extension directions, and road traffic directions of the data source infrastructure distributed nodes, a road network graph is constructed with road connection ports as vertices and road segments where the ports are connected end-to-end as directed edges. The target infrastructure distributed node is retrieved along the road traffic direction. The retrieval range is calculated based on the synchronization period and road speed limit. For example, when the synchronization period is 30 seconds and the speed limit is 60 km / h, the converted speed is 16.67 m / s, and the retrieval range is 500 m. Extension stops when the cumulative road length exceeds 500 m; if it does not exceed 500 m and reaches the target infrastructure distributed node, the path is retained. The termination and starting ports of adjacent road segments are checked segment by segment. If the ports are inconsistent, the connection is considered broken. If the road traffic direction deviates from the target infrastructure distributed node, the path is discarded. The coordinates of the data source infrastructure distributed nodes are then read. and target infrastructure distributed node coordinates ,according to Calculate the spatial location vector, where, Representative node Pointing to node Spatial position vector, Represents distributed nodes in the data source infrastructure. Represents the distributed nodes of the target infrastructure. and These represent the horizontal, vertical, and height coordinates of two nodes, respectively. For example, the coordinates of the two nodes are... m and When m, we get m generates a spatial position vector.

[0030] Based on spatial location vectors and vehicle speed values ​​and directions within the coverage boundary of the target infrastructure distributed nodes, records are arranged according to the time of vehicle entry into the coverage boundary. The road segment identifier of the vehicle is compared with the road segment identifiers in the previously obtained valid road paths. Speed ​​records are retained when the road segment identifiers match and the vehicle direction is in the same direction as the road traffic; other records are discarded. Lateral, longitudinal, and altitude velocity components are calculated based on the vehicle speed value, horizontal azimuth angle, and road slope / elevation angle. Coordinates are uniformly expressed in meters (m), and speeds are uniformly expressed in m / s. Calculate the dot product result, where, Representative data source infrastructure distributed nodes With the target infrastructure distributed nodes The result of the dot product, Represents distributed nodes in the data source infrastructure. Represents the distributed nodes of the target infrastructure. Represents a spatial location vector. Represents the vehicle velocity vector. Represents 3 positional components. Represents 3 velocity components, with positive values ​​taken as... As a weight for synchronous correlation scoring, for example m and The speed is 3360.4 m / s. For negative values, the minimum value is maintained at the baseline. For positive values, 1%, 5%, 10%, 15%, and 20% of the 5th percentile value are used sequentially for playback of data sent over the past 7 days. The minimum percentage corresponding to one delayed push per heartbeat cycle is selected; for example, if the 5th percentile value is 12... And when 10% is selected, the value is 1.2. The synchronous association score weights are obtained.

[0031] The steps to obtain the targeted routing push policy are as follows: The synchronization association score weights corresponding to each target infrastructure distributed node are read one by one. The preset synchronization limit is retrieved according to the same dimension. The synchronization association score weights are compared with the preset synchronization limit item by item. When the synchronization association score weight is greater than or equal to the preset synchronization limit, the synchronization association score weight is retained. The priority push order of the target infrastructure distributed nodes is determined according to the descending order of the synchronization association score weights. When the synchronization association score weight is lower than the preset synchronization limit, the difference between the synchronization association score weight and the preset synchronization limit is calculated. By substituting the difference as an independent variable into the preset negative exponential function, the push weight after attenuation is determined according to the relationship that the push intensity decreases exponentially as the difference increases. The delayed push order of the target infrastructure distributed nodes is arranged according to the attenuated push weights. The target infrastructure distributed node identifier, priority push order, delayed push order and corresponding push weight are written respectively to generate a targeted routing push strategy.

[0032] Specifically, based on the synchronization association score weight of each target infrastructure distributed node, the number of target infrastructure distributed nodes that completed transmission within each 30-second synchronization cycle over the past 7 days is read. The minimum number is taken as the priority transmission capacity. For example, if the minimum number is 6, the positive synchronization association score weights of each cycle are sorted in descending order, and the 6th digit is extracted. Then, the median of all 6th digit values ​​is taken as the preset synchronization limit. For example, if the median is 40... The preset synchronization limit is then set to 40. If the synchronous associated score weight is greater than or equal to this value, the priority push order will be registered in descending order of the original value; otherwise, it will be adjusted according to the following order: Calculate the push weight after decay, where, Representative target infrastructure distributed nodes After the decay, the push weight is applied. This represents the preset synchronization limit. Represents the original synchronous correlation score weight. Represents a negative exponential decay parameter. Represents the distributed node number of the target infrastructure. Represents the natural exponential function. Representing the dimensionless difference ratio, the negative exponential decay parameter is calculated according to... hour Substituting the default synchronization limit of 10% into the boundary setting... And the target value 4 , Represents the natural logarithm function, for example When Register the delayed push order according to the descending order of the push weight after attenuation, write the target infrastructure distributed node identifier, priority push order, delayed push order and push weight, and generate a targeted routing push strategy.

[0033] The steps to complete lock-free consistent data synchronization in a distributed infrastructure system are as follows: According to the targeted routing push strategy, the target infrastructure distributed node identifier, push order, and push weight corresponding to each target infrastructure distributed node are read. The network address, communication port, and current connection status of the target infrastructure distributed node are parsed in the order of push. The current round of distribution is stopped for target infrastructure distributed nodes whose network address cannot be accessed or whose communication port is not open. Connection requests are initiated for target infrastructure distributed nodes whose network address can be accessed and whose communication port is open. After completing the identity response verification, the sending port and receiving port are locked. According to the target infrastructure distributed node identifier, the compressed causal synchronization metadata and the front-end state vertices of the causal directed acyclic graph are written into the corresponding sending sequence. The distribution order of the sending sequence is determined according to the push weight, and a network transmission channel is established. Based on the network transmission channel, the receiving end of the target infrastructure distributed node receives compressed causal synchronization metadata and the leading edge state vertices of the causal directed acyclic graph item by item. It verifies the target infrastructure distributed node identifier and the sending sequence boundary corresponding to the received content, extracts the point-like version vector stamp configured by the received leading edge state vertex, reads the local point-like version vector stamp configured by the local leading edge state vertex of the target infrastructure distributed node, and compares the logical clock sequence dimension by dimension according to the same transient network node identifier. When the received logical clock sequence is not earlier than the local logical clock sequence in all corresponding dimensions and at least one corresponding dimension is later than the local logical clock sequence, it is determined to be a causal progressive state. When the received logical clock sequence is later than the local logical clock sequence in some corresponding dimensions and earlier than the local logical clock sequence in the remaining corresponding dimensions, it is determined to be a concurrent state. It locates the receiving end state microblock and the pushing end state microblock, and writes vertex references and logical clock sequence association records in the direction from the receiving end state microblock to the pushing end state microblock to form a causal synchronization connection. Read the receiving end state micro-blocks and pushing end state micro-blocks corresponding to both ends of the causal synchronization connection. Extract the local leading edge state vertices corresponding to the receiving end state micro-blocks and the receiving leading edge state vertices corresponding to the pushing end state micro-blocks. According to the transient network node identifier recorded by the point version vector stamp, retain the leading edge state vertices with later logical clock sequences dimension by dimension. In the concurrent state, retain the leading edge state vertices that cannot form a sequential relationship. Delete the local leading edge state vertex references that have been covered by the leading edge state vertices with later logical clock sequences. Reconstruct the leading edge state vertex reference relationship of the target infrastructure distributed node. Read the traffic state data from the state micro-blocks corresponding to the retained leading edge state vertices. Locate the storage location corresponding to the same dynamic session identifier of the target infrastructure distributed node according to the dynamic session identifier. Write the traffic state data to the corresponding storage location and replace the original traffic state data to complete the lock-free consistent data synchronization of the infrastructure distributed system.

[0034] Specifically, based on the target infrastructure distributed node identifier, push order, and push weight recorded in the targeted routing push strategy, the system reads the network address, communication port, certificate fingerprint, and current connection status registered when the target infrastructure distributed node joined the road network, according to the push order. It sends a route reachability probe to the network address and initiates a TCP connection to the communication port. If no SYN-ACK is returned, the current round of distribution for that target infrastructure distributed node ends. If a SYN-ACK is returned, the TCP three-way handshake is completed, and the peer's certificate fingerprint is read. The read value is compared byte-by-byte with the certificate fingerprint registered when the node joined the road network. If they match, a 128 is generated. The random challenge value, the target infrastructure distributed node identifier, and the current round's transmission sequence number are concatenated to calculate the HMAC-SHA256 response value. The peer uses the shared key registered when joining the road network to calculate the response value and returns it. If the two response values ​​match, the connection correspondence between the sending port and the receiving port is registered. Subsequently, a transmission sequence is established according to the target infrastructure distributed node identifier. The compressed causal synchronization metadata obtained earlier is placed at the beginning of the sequence, and the leading edge state vertices of the causal directed acyclic graph are placed at the end of the sequence in ascending order of the logical clock sequence. The push weight uses the value obtained earlier according to the preset synchronization limit and negative exponential decay parameter. For example, the push weight for 3 target infrastructure distributed nodes is 82. 63 and 12.65 At that time, the first two priority push nodes and the third delayed push node are arranged in sequence. Each transmission record registers the target infrastructure distributed node identifier, batch number, payload length and sequence boundary, and establishes a network transmission channel.

[0035] Based on the network transmission channel, compressed causal synchronization metadata and leading-edge state vertices are received. The target infrastructure distributed node identifier, payload length, and batch continuity are verified. If they do not meet the requirements, missing batches are requested. After successful verification, the logical clock dimension is expanded. The logical clock sequence corresponding to the identifier of any missing transient network nodes is compared to 0. The received point-like version vector stamp is... The local dotted version vector stamp is The causal progression state is according to Determine the concurrent state according to The determination is made, among which, The union of all transient network node identifiers at both ends. Represents and concentrates the identifier of any transient network node. and Represents and centralizes the identifiers of two distinct transient network nodes. This represents the logical clock sequence of the received point-based version vector stamp in the corresponding dimension. This represents the logical clock sequence of the local point-based version vector stamp in the corresponding dimension. This means that all dimensions meet the conditions. This means that there is at least one dimension that satisfies the condition. The conditions for the representation to be met simultaneously, for example and It is determined to be a causal progression state. and If the system is determined to be in a concurrent state, the receiver state microblock and the pusher state microblock are located, and the references of the two endpoints and the changed logical clock dimensions are written to form a causal synchronous connection.

[0036] Based on the receiving end state microblocks and pushing end state microblocks at both ends of the causal synchronization edge, the local leading-edge state vertex set and the receiving leading-edge state vertex set are read. After merging the two sets, vertices not covered by later causal vertices are retained, and then... Determine the set to retain, where, This represents the set of vertices representing the frontier state after reconstruction. Represents the set of vertices representing the local frontier state. Represents the set of vertices that receive the leading edge state. Represents the vertex to be determined. Represents another vertex. and These are point-like vector stamps representing the two vertices. This means that the previous point-like version vector stamp is no earlier than the subsequent point-like version vector stamp in all corresponding dimensions, and at least one dimension is later. This indicates that there are no vertices that satisfy the covering relationship. Represents set merging, retaining the larger logical clock sequence from the local dotted version vector stamp and the received dotted version vector stamp on a dimension-by-dimensional basis. For example, the local vector is... And the received vector is Delete the local vertex reference that was overwritten, and the local vector is And the received vector is Two concurrent vertices are retained simultaneously. The local storage location is located according to the dynamic session identifier in the retained vertices. The traffic status data of the overwritten version is deleted. The traffic status data corresponding to the retained vertices is registered as the current version set according to the logical clock sequence and the status micro-block identifier. A single version replaces the original record, and concurrent versions are registered in parallel to complete the lock-free consistent data synchronization of the infrastructure distributed system.

[0037] The above are merely preferred embodiments of the present invention and are not intended to limit the present invention in any other way. Any person skilled in the art may make changes or modifications to the above-disclosed technical content to create equivalent embodiments that can be applied to other fields. However, any simple modifications, equivalent changes, and modifications made to the above embodiments based on the technical essence of the present invention without departing from the scope of the present invention shall still fall within the protection scope of the present invention.

Claims

1. A distributed storage method for urban infrastructure data, characterized in that, Includes the following steps: The traffic status data of the data source infrastructure distributed nodes and the dynamic session identifier of the transient network nodes are encapsulated into a data payload to generate a state microblock. A dotted version vector stamp containing the transient network node identifier and the logical clock sequence is configured for the state microblock. A partial order pointer connection is established between the state microblock and the local historical state microblock to generate a causal directed acyclic graph. Merge the consecutive logical clock sequences within the dotted version vector stamps to generate a continuous compressed clock interval; The transient network node that exceeds the heartbeat timeout monitoring period is determined to be an offline node, and a disconnection tombstone feature stamp is generated; The garbage collection mechanism is triggered by the disconnected tombstone feature stamp to remove the logical clock dimension record corresponding to the offline node, and the continuous compressed clock interval is encapsulated to output compressed causal synchronization metadata. Based on the road network physical topology relationship between the data source infrastructure distributed nodes and the target infrastructure distributed nodes, a spatial location vector is generated, and the spatial location vector is multiplied by the real-time traffic flow speed vector to obtain the synchronous association scoring weight. An exponential decay function is introduced for the synchronization association score weights that are below the preset synchronization limit to generate a targeted routing push strategy.

2. The distributed storage method for urban infrastructure data according to claim 1, characterized in that, The method further includes: A network transmission channel is established according to the directional routing push strategy, and the compressed causal synchronization metadata and the front-end state vertices of the causal directed acyclic graph are distributed to the target infrastructure distributed nodes. At the receiving end of the target infrastructure distributed node, if the partial order relationship between the received point version vector stamp and the local point version vector stamp is determined to be either concurrent or causal progressive, a causal synchronization edge is constructed between the state microblocks of the receiving end and the pushing end. The leading state vertices are merged through the causal synchronization edge, and the traffic state data is overwritten, thereby completing the lock-free consistent data synchronization of the infrastructure distributed system.

3. The distributed storage method for urban infrastructure data according to claim 1, characterized in that, The steps for obtaining the state micro-block are as follows: Traffic status data is read sequentially from the output cache of the distributed nodes of the data source infrastructure. The data record boundaries, generation order, transient network node markers, and transient network node access association information of each traffic status data are identified. The dynamic session identifier assigned when accessing the network is extracted from the network access record of the transient network node. The transient network node to which the dynamic session identifier belongs is verified according to the transient network node access association information. Traffic status data and dynamic session identifiers with the same transient network node are written into the same payload structure. The data record boundaries of the traffic status data and the identifier boundaries of the dynamic session identifier are marked respectively. The data payload fields are combined and encapsulated according to their order to generate a status micro-block.

4. The distributed storage method for urban infrastructure data according to claim 1, characterized in that, The steps for obtaining the causal directed acyclic graph are as follows: Read the transient network node identifier corresponding to the state micro-block, retrieve the logical clock sequence that the transient network node identifier has been recorded in the local historical state micro-block, extract the last position of the recorded logical clock sequence, allocate the current logical clock sequence to the state micro-block according to the successor order of the last position of the logical clock sequence, check the current logical clock sequence and the recorded logical clock sequence item by item, if the current logical clock sequence is not later than the last position of the recorded logical clock sequence, then extend the current logical clock sequence to after the last position of the logical clock sequence, write the transient network node identifier and the current logical clock sequence into the version record position of the state micro-block, and obtain the dotted version vector stamp; Locate the state micro-block corresponding to the point-like version vector stamp, read the transient network node identifier and logical clock sequence configured in the local historical state micro-block, filter the local historical state micro-blocks generated by the same transient network node according to the consistency of the transient network node identifier, remove local historical state micro-blocks that are later than the current logical clock sequence according to the chronological relationship of the logical clock sequence, select local historical state micro-blocks whose logical clock sequence is earlier than the current logical clock sequence and have no intermediate logical clock sequence as predecessor vertices, determine the state micro-block as the current vertex, write a partial order pointer connection from the current vertex to the predecessor vertex, restrict the partial order pointer connection to extend only along the chronological direction of the logical clock sequence, and form a causal directed acyclic graph.

5. The distributed storage method for urban infrastructure data according to claim 1, characterized in that, The steps for obtaining the continuous compressed clock interval are as follows: The vertex version vector stamps are read from each vertex in the causal directed acyclic graph. The transient network node identifier and logical clock sequence recorded in each vertex version vector stamp are parsed. The logical clock sequences are classified according to the transient network node identifier. For each transient network node, the logical clock sequences are arranged in ascending order. The sequence number difference between adjacent logical clock sequences is compared item by item. When the sequence number difference is equal to one increment unit, the starting endpoint of the previous logical clock sequence is retained, and the ending endpoint of the next logical clock sequence is updated. When the sequence number difference exceeds one increment unit, the connection of the current endpoint is truncated at the position corresponding to the sequence number difference, and the starting endpoint of the next logical clock sequence is re-determined until the starting and ending endpoints of all logical clock sequences are merged to generate a continuous compressed clock interval.

6. The distributed storage method for urban infrastructure data according to claim 1, characterized in that, The steps for obtaining the compressed causal synchronization metadata are as follows: Based on the continuously compressed clock interval, the transient network node identifier corresponding to each continuously compressed clock interval is extracted. For each transient network node, the most recent heartbeat response time and the current monitoring time are registered. The current monitoring time is repeatedly read according to the pre-set heartbeat timeout monitoring cycle. The time difference between the current monitoring time and the most recent heartbeat response time is calculated. The time difference is determined as the non-response time. The non-response time is compared with the heartbeat timeout monitoring cycle item by item. When the non-response time does not exceed the heartbeat timeout monitoring cycle, the online status of the transient network node is retained. When the non-response time exceeds the heartbeat timeout monitoring cycle, the transient network node is marked as an offline node. The transient network node identifier, the most recent heartbeat response time, the timeout judgment time and the termination endpoint of the continuously compressed clock interval of the offline node are written to generate a disconnection tombstone feature stamp. If a transient connected node that was marked as an offline node reconnects to the network, it will be assigned a new dynamic session identifier and treated as a new transient connected node. Based on the disconnected tombstone feature stamp, the transient network node identifier recorded in the disconnected tombstone feature stamp is read. The logical clock dimension cleanup of the point-like version vector stamp is initiated. The transient network node identifier recorded in each point-like version vector stamp in the causal directed acyclic graph is read item by item. The transient network node identifier is checked to see if it is equal to the transient network node identifier recorded in the disconnected tombstone feature stamp. If the transient network node identifiers are the same, the logical clock dimension record in the corresponding point-like version vector stamp is deleted. If the transient network node identifiers are different, the logical clock dimension record in the corresponding point-like version vector stamp is retained. The corresponding continuous compressed clock intervals are selected according to the retained logical clock dimension records. The continuous compressed clock intervals are arranged according to the transient network node identifiers. The start endpoint, end endpoint and corresponding point-like version vector stamp of the continuous compressed clock interval are written item by item, and the compressed causal synchronization metadata is encapsulated.

7. The distributed storage method for urban infrastructure data according to claim 1, characterized in that, The steps for obtaining the synchronous association scoring weights are as follows: Read the road network coordinates, road connection ports, road extension directions, and road traffic directions of the data source infrastructure distributed nodes. Search for the surrounding target infrastructure distributed nodes that can be reached through continuous road connections one by one. Record the road network coordinates of each target infrastructure distributed node. Arrange the road segments between the data source infrastructure distributed nodes and the target infrastructure distributed nodes according to the connection order of the road connection ports. Eliminate road segments with opposite traffic directions or interrupted road connection ports. Determine the effective connection direction from the data source infrastructure distributed node to each target infrastructure distributed node. Calculate the position difference of the road network coordinates on the horizontal coordinate axis, vertical coordinate axis, and height coordinate axis respectively. Correct the positive and negative directions of each position difference according to the effective connection direction to generate a spatial position vector. Within the coverage boundary of each target infrastructure distributed node, vehicle speed and direction are continuously collected. The vehicle speed values ​​are arranged in the order of vehicle entry into the coverage boundary. Vehicle speed values ​​whose directions do not correspond to the roads connecting to the target infrastructure distributed node are deleted. The remaining vehicle speed values ​​are decomposed into lateral speed components, longitudinal speed components, and height speed components. The positive and negative directions of each speed component are unified according to the coordinate axis direction corresponding to the spatial position vector. Each position component of the spatial position vector is multiplied by the corresponding speed component. The component products of each coordinate axis are summed to obtain the dot product result. If the dot product result is positive, it indicates that the traffic flow is propagating towards the target infrastructure distributed node. The dot product result is directly used as the synchronous association scoring weight. If the dot product result is negative, it indicates that the traffic flow is deviating from the target infrastructure distributed node propagation. In this case, the synchronization association scoring weight is reset to the preset basic maintenance minimum value to obtain the synchronization association scoring weight of the target infrastructure distributed node.

8. The distributed storage method for urban infrastructure data according to claim 1, characterized in that, The steps for obtaining the targeted routing push strategy are as follows: The synchronization association score weight corresponding to each target infrastructure distributed node is read one by one. A preset synchronization limit is retrieved according to the same dimension. The synchronization association score weight is compared with the preset synchronization limit item by item. When the synchronization association score weight is greater than or equal to the preset synchronization limit, the synchronization association score weight is retained. The priority push order of the target infrastructure distributed nodes is determined according to the descending order of the synchronization association score weight. When the synchronization association score weight is lower than the preset synchronization limit, the difference between the synchronization association score weight and the preset synchronization limit is calculated. By substituting the difference as an independent variable into a preset negative exponential function, the attenuated push weight is determined according to the relationship that the push intensity decreases exponentially as the difference increases. The delayed push order of the target infrastructure distributed nodes is arranged according to the attenuated push weight. The target infrastructure distributed node identifier, priority push order, delayed push order and corresponding push weight are written respectively to generate a targeted routing push strategy.

9. The distributed storage method for urban infrastructure data according to claim 2, characterized in that, The steps to complete lock-free consistent data synchronization in a distributed infrastructure system are as follows: According to the targeted routing push strategy, the target infrastructure distributed node identifier, push order, and push weight corresponding to each target infrastructure distributed node are read. The network address, communication port, and current connection status of the target infrastructure distributed node are parsed sequentially according to the push order. The current round of distribution is stopped for target infrastructure distributed nodes whose network address cannot be accessed or whose communication port is not open. A connection request is initiated for target infrastructure distributed nodes whose network address can be accessed and whose communication port is open. After completing the identity response verification, the sending port and receiving port are locked. According to the target infrastructure distributed node identifier, the compressed causal synchronization metadata and the front-end state vertices of the causal directed acyclic graph are written into the corresponding sending sequence. The distribution order of the sending sequence is determined according to the push weight, and a network transmission channel is established. Based on the network transmission channel, the compressed causal synchronization metadata and the leading edge state vertices of the causal directed acyclic graph are received item by item at the receiving end of the target infrastructure distributed node. The target infrastructure distributed node identifier and the sending sequence boundary corresponding to the received content are verified. The point-like version vector stamp configured by the received leading edge state vertex is extracted. The local point-like version vector stamp configured by the local leading edge state vertex of the target infrastructure distributed node is read. The logical clock sequence is compared dimension by dimension according to the same transient network node identifier. When the received logical clock sequence is not earlier than the local logical clock sequence in all corresponding dimensions and at least one corresponding dimension is later than the local logical clock sequence, it is determined to be a causal progressive state. When the received logical clock sequence is later than the local logical clock sequence in some corresponding dimensions and earlier than the local logical clock sequence in the remaining corresponding dimensions, it is determined to be a concurrent state. The receiving end state microblock and the pushing end state microblock are located. Vertex references and logical clock sequence association records are written in the direction from the receiving end state microblock to the pushing end state microblock to form a causal synchronization connection. Read the receiving end state micro-blocks and pushing end state micro-blocks corresponding to both ends of the causal synchronization connection, extract the local leading edge state vertices corresponding to the receiving end state micro-blocks, extract the receiving leading edge state vertices corresponding to the pushing end state micro-blocks, retain the leading edge state vertices with later logical clock sequences dimension by dimension according to the transient network node identifiers recorded by the point version vector stamp, and simultaneously retain the leading edge state vertices that cannot form a sequential relationship in the concurrent state, delete the local leading edge state vertex references that have been covered by the leading edge state vertices with later logical clock sequences, reconstruct the leading edge state vertex reference relationship of the target infrastructure distributed node, read the traffic state data from the state micro-blocks corresponding to the retained leading edge state vertices, locate the storage location corresponding to the same dynamic session identifier of the target infrastructure distributed node according to the dynamic session identifier, write the traffic state data to the corresponding storage location and replace the original traffic state data, and complete the lock-free consistent data synchronization of the infrastructure distributed system.