High-concurrency real-time vector map distribution system and method

CN122903516APending Publication Date: 2026-10-13INSPUR SOFTWARE TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202610970123.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-07-01
Publication Date
2026-10-13

AI Technical Summary

Technical Problem

1、静态预切片模式:数据更新周期长,无法满足如交通流量、物流轨迹、物联网设备位置等需秒级或分钟级更新的场景需求

Benefits of technology

1、性能显著提升:通过内核态直接编码与异步IO,典型硬件配置和网络环境下,单节点可支持数万级并发QPS,智能路由使低层级请求响应达亚毫秒级

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122903516A_ABST
    Figure CN122903516A_ABST
Patent Text Reader

Abstract

The application discloses a high-concurrency real-time vector map distribution system and method, belongs to the technical field of geographic information systems, and aims to solve the technical problem of how to provide a solution integrating real-time calculation, efficient transmission optimization and intelligent multi-level caching. The system comprises a client, a spatial data storage device, an asynchronous slice distribution engine and a multi-level heterogeneous caching device. The multi-level heterogeneous caching device is configured with three-level caching modules. The asynchronous slice distribution engine is used for caching routing scheduling decision-making and merging and distribution of vector slice binary streams returned by the spatial data storage device. The spatial data storage device stores original geographic vector elements and is used for performing spatial retrieval, dynamic geometry thinning calculation and geometry data coding in a database kernel state based on calculation instructions in a binary stream request. The client is used for hardware acceleration decoding and graphic rendering based on a binary response stream and preloading of map slices of a next map viewport range.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of geographic information system technology, specifically to a high-concurrency real-time vector map distribution system and method. Background Technology

[0002] With the widespread adoption of WebGIS and mobile map applications, users have placed extremely high demands on the real-time performance, smooth interaction, and dynamic content of map data. Existing technical solutions mainly suffer from the following bottlenecks: 1. Static pre-slicing mode: Long data update cycles cannot meet the needs of scenarios requiring updates within seconds or minutes, such as traffic flow, logistics trajectories, and IoT device locations. Full regeneration of slices is costly and lacks timeliness. 2. Pure Real-Time Computing Mode: When faced with high concurrency requests, especially small-scale (large-area) queries, traditional spatial databases need to perform complex range queries and return massive amounts of raw geometric data, resulting in huge pressure on database I / O, server CPU and memory, and a significant increase in response latency. In addition, the details of raw vector data at small scales far exceed the screen resolution, and transmitting complete geometric data causes serious waste of network bandwidth. Existing caching strategies are mostly aimed at static files and lack efficient and consistent cache update and invalidation mechanisms for real-time data, resulting in low cache hit rate or outdated data. 3. Disjointed client-side experience: The client-side caching strategy is simple and cannot effectively predict user behavior for preloading. When zooming or panning the map quickly, the "white screen" waiting phenomenon occurs frequently, which affects the user experience. Existing preloading technologies are mostly based on simple motion trend vector prediction, which has limited prediction accuracy and lacks a coordination mechanism with multi-level caching.

[0003] The technical problem that needs to be solved is how to provide a solution that integrates real-time computing, efficient transmission optimization, and intelligent multi-level caching. Summary of the Invention

[0004] The technical objective of this invention is to address the above-mentioned shortcomings by providing a high-concurrency real-time vector map distribution system and method that integrates real-time computing, efficient transmission optimization, and intelligent multi-level caching into a single solution.

[0005] In a first aspect, the present invention provides a high-concurrency real-time vector map distribution system, comprising a client, a spatial data storage device, an asynchronous tile distribution engine, and a multi-level heterogeneous caching device; The multi-level heterogeneous caching device is equipped with three-level caching modules: a server-side snapshot caching module, an edge distribution node caching module, and a client-side persistent caching module. The server-side snapshot caching module is used to store static index image files pre-generated for low-scaling levels, the edge distribution node caching module is used to store real-time calculated slice results, and the client-side persistent caching module is used to store slice data accessed by users. The asynchronous tile distribution engine parses the map tile requests sent by the client to obtain the tile grid coordinates. Based on the scaling level Z in the tile grid coordinates, it makes a cache routing and scheduling decision to determine which level of the multi-level heterogeneous cache device should be the target cache module to respond with the tile data. If the target cache module does not find the corresponding tile data, it sends a binary stream request to the spatial data storage device to merge and distribute the vector tile binary stream returned by the spatial data storage device. It constructs a binary response stream based on the vector tile binary stream and returns the binary response stream and its hash fingerprint to the client. It constructs tile data based on the vector tile binary stream, its hash fingerprint, and metadata and writes the tile data to the edge distribution node cache module. This provides an incremental cache update mechanism driven by source data change events based on the hash fingerprint. The incremental cache update mechanism ensures the consistency of tile data in the multi-level heterogeneous cache devices. The metadata includes the tile grid coordinates, tile size, and generation time corresponding to the vector tile binary stream. The spatial data storage device stores the original geographic vector features, which are used to perform spatial retrieval, dynamic geometric thinning calculation and geometric data encoding in the database kernel state based on the calculation instructions in the binary stream request, generate a vector tile binary stream, and return the vector tile binary stream to the asynchronous tile distribution engine. The calculation instructions include the tile grid coordinates, the spatial retrieval range converted from the tile grid coordinates and the geometric optimization parameters. The client is used to build tile data based on the binary response stream and store it in the client persistent cache module. It is used for hardware-accelerated decoding and graphics rendering based on the binary response stream and for asynchronous preloading of map tiles in the next map viewport range.

[0006] Preferably, the asynchronous tile distribution engine is built on a non-blocking asynchronous IO model, including a hierarchical threshold routing unit. The hierarchical threshold routing unit has a preset scaling level threshold N and is configured with cached route scheduling logic. Based on the tile grid coordinates, the hierarchical threshold routing unit performs the following operations to realize cached route scheduling decisions: compare the scaling level in the tile grid coordinates with the scaling level threshold N. If Z < N, it is determined that the map tile request is an overview view, and the server snapshot cache module is used as the route target cache module. If Z ≥ N, it is determined that the map tile request is a detail view, and the edge distribution node cache module is used as the route target cache module. Correspondingly, the asynchronous slice dispatch engine generates computation instructions for the following operations: Perform a cache query: If the target cache module of the route is hit, the slice data is retrieved from the target cache module of the route and returned to the client; if the target cache module of the route is not hit, the real-time calculation process is triggered. Real-time calculation trigger: The slice coordinates are converted into a spatial rectangle (minX, minY, maxX, maxY) on the projection plane as the spatial retrieval range. The calculation instructions are constructed based on the slice grid coordinates, the spatial retrieval range converted from the slice grid coordinates, and the geometric optimization parameter k, and the calculation instructions are sent to the spatial data storage device.

[0007] Preferably, the asynchronous slice distribution engine includes a hash fingerprint incremental update unit, which is used to provide an incremental cache update mechanism driven by source data change events based on hash fingerprints, and to achieve consistency of slice data in multi-level heterogeneous cache devices through the incremental cache update mechanism. The hash fingerprint incremental update unit is used to perform the following operations to implement the source data change event-driven incremental cache update mechanism: Initialize hash fingerprint: For each known geographic grid, calculate the hash fingerprint of the geographic grid data block, associate and store the hash fingerprint of the geographic grid data block with the grid identifier to form a historical fingerprint database. When calculating the hash fingerprint of the geographic grid data block, the hash fingerprint is generated based on the vector slice binary stream in the slice data corresponding to the geographic grid and through a predefined hash algorithm. Listen for source data change events: Listen for data update events from raw geographic vector features in the spatial data storage device. Data updates include data addition, deletion, and modification operations. Locate the affected grid set: Based on the feature identifiers carried in the data update event and combined with the current tiling scheme, calculate all geographic grids affected by the data update event, and obtain the grid coordinates of the affected geographic grids. The grid coordinates of the geographic grids are represented by the grid coordinates of the corresponding tiles, including the scaling level Z, the tile column number X, and the tile row number Y. Recalculate hash fingerprints: For each affected geographic grid, recalculate the current hash fingerprint of the geographic grid data block as the new hash fingerprint; Indicator comparison: For each affected geographic grid, the new hash fingerprint is compared with the hash fingerprint stored in the historical fingerprint database. If they match, it means that the content of the current geographic grid has not changed substantially. If they do not match, it means that the data of the current geographic grid has been changed. Command generation: For geographic grids whose data has changed, an update command is generated and sent to the multi-level heterogeneous caching device to notify the downstream cache to pull the latest tile data of the geographic grid. Alternatively, an invalidation command is generated and sent to the multi-level heterogeneous caching device to notify the downstream cache to mark the tile data of the geographic grid as invalid or delete it directly. The downstream cache includes an edge distribution node caching module and a client persistent caching module. Update the historical fingerprint database: For each affected geographic grid, write the new hash fingerprint to the historical fingerprint database and overwrite the old hash fingerprint.

[0008] Preferably, the asynchronous slice distribution engine also includes a binary stream overlay operator. When the asynchronous slice distribution engine requests binary streams corresponding to multiple layers from the spatial data storage device in parallel, the binary stream overlay operator is used to receive vector slice binary streams from multiple data sources, and directly perform structured splicing and merging in memory to generate a binary response stream of a composite layer. The binary stream overlay operator identifies the structural segments in each vector slice binary stream, including geometric segments, attribute segments, and index segments, according to a predefined protocol specification. It then performs data block splicing and field merging in memory to generate a binary response stream of a composite layer. When multiple vector slice binary streams have overlapping or conflicting data blocks, they are overwritten or merged according to preset priorities or merging rules.

[0009] Preferably, the spatial data storage device includes a high-performance computing operator, a kernel-mode encoder, and a topology-preserving operator; High-performance computing operators are used to directly perform spatial retrieval and geometric operations in the database kernel state based on computing instructions, and output intermediate geometric data; The topology-preserving operator is used to receive intermediate geometry data, based on the scaling level Z and geometry optimization parameters. The system dynamically calculates the geometric simplification tolerance T. Using T as a threshold, it performs dynamic geometric thinning calculations, including loop closure checks and self-intersection checks. For thinned polygon features, loop closure checks are performed to ensure closed polygon boundaries. For thinned line or polygon features, self-intersection checks are performed to detect and correct topological errors at their intersections. The simplified geometric data is then output. ; The kernel-mode encoder is used to receive simplified geometric data, encode it directly into a vector slice binary stream in the kernel-mode of the database, and then output it.

[0010] Preferably, the spatial data storage device includes a point feature dynamic clustering unit. When the scaling level specified in the calculation instruction is lower than the preset clustering threshold, the point feature dynamic clustering unit performs the following operations: determining the grid division granularity according to the scaling level Z, dividing the specified geographical area into multiple grid units, grouping and aggregating the point features falling into each grid unit, calculating the cluster representative point location and aggregation statistics of the grid unit, and outputting the clustering results to the kernel-state encoder for encoding. Among them, the cluster representative point location includes the geometric center or weighted center of all point features within the map grid or the location with the highest frequency of occurrence, and the aggregated statistical information includes the total number of point features within the map grid and a summary of the distribution of key attributes. When the scaling level specified in the calculation instruction is higher than the preset clustering threshold, the dynamic clustering unit of the point feature is bypassed, and the original point feature data is returned from the spatial data storage device by the high-performance computing operator in the spatial data storage device in the conventional manner.

[0011] Preferably, the client includes a motion trend prediction unit and an asynchronous preloading queue; The motion trend prediction unit is used to perform the following: Listen for map interaction events and collect the motion state parameters of the map viewport in real time. The motion state parameters include the displacement of the center point, the instantaneous movement speed, and the zoom acceleration. A probabilistic sector prediction model based on motion vectors is constructed based on the current direction and speed of movement to predict the map viewport coverage within a preset time window in the future. Calculate the coordinate sequence of all tiles within the map viewport coverage area; Add the slice coordinate sequence to the asynchronous preload queue; Correspondingly, the asynchronous preloading queue is used to load the data corresponding to the slice coordinate sequence during network idle periods or low-priority threads and store it in the client persistent cache module. The data corresponding to the slice coordinate sequence is a vector slice binary stream.

[0012] Preferably, the system further includes a spatially aware cache invalidation device, which is used to monitor data update events of the spatial data storage device, calculate the grid coordinate set of the affected specific slice based on the spatial bounding box of the modified geographic vector feature, and send a precise invalidation command for the specific slice to the asynchronous slice distribution engine and the multi-level cache device. Correspondingly, the multi-level heterogeneous cache device receives a precise invalidation instruction and, based on the set of grid coordinates of the affected specific slice in the precise invalidation instruction, marks the local cache of the relevant slice data as invalid or deletes it. Correspondingly, the asynchronous slice distribution engine receives a precise failure instruction and, based on the set of grid coordinates of the specific slice affected in the precise failure instruction, marks the local cache of the relevant slice data as invalid or deletes it.

[0013] Preferably, the space-aware cache invalidation device is used to perform the following operations: Listen for data update events in the spatial data storage device to obtain the modified geographic vector features. Data update events include feature addition events, feature modification events, and feature deletion events. Calculate the spatial bounding box of the modified geographic vector feature. The spatial bounding box is a minimum axis-aligned rectangle that can completely contain the modified geographic vector feature. The spatial bounding box is represented by a quadruple consisting of minimum longitude, minimum latitude, maximum longitude, and maximum latitude. Obtain the required scaling level range [Z_min, Z_max] and the system's pre-configured map tiling scheme. For each level Z within the scaling level range, perform the following operations: convert the minimum and maximum longitude of the spatial bounding box into the tile column index range [x_min, x_max] under that scaling level; convert the minimum and maximum latitude of the spatial bounding box into the tile row index range [y_min, y_max] under that scaling level; generate a set of tile coordinates (Z, x, y) for all tiles that satisfy x ∈ [x_min, x_max] and y ∈ [y_min, y_max] under that scaling level; merge the tile coordinate sets of all scaling levels; and output the grid coordinate set of the specific tile affected. A precise failure instruction is constructed based on the set of grid coordinates of the affected specific slice, and the precise failure instruction is sent to the multi-level heterogeneous cache device and the asynchronous slice distribution engine. The precise failure instruction includes an instruction type identifier, the set of grid coordinates of the affected specific slice, and a timestamp or version number. Correspondingly, in a multi-level heterogeneous caching device, after receiving a precise invalidation command, the edge distribution node caching module executes the following: deletes the corresponding slice entry from the cache storage, marks the corresponding slice entry as expired, or sets the entry to automatically expire in a very short time. After receiving a precise invalidation command, the client persistent caching module deletes or marks the slice data with the corresponding coordinates in the local storage as invalid through long-connection push or version number comparison mechanism; After receiving the precise invalidation command, the server-side snapshot caching module marks the affected slice data as pending updates, calls the asynchronous slice distribution engine and spatial data storage device to execute asynchronous tasks, regenerates the slice data, and updates the corresponding slice blocks in the static image file.

[0014] Secondly, the present invention provides a high-concurrency real-time vector map distribution method, implemented by a high-concurrency real-time vector map distribution system as described in any one of claims 1-9, comprising the following steps: The asynchronous tile distribution engine receives and parses map tile requests from clients to obtain tile grid coordinates. Based on the scaling level Z in the tile grid coordinates, it makes a cache routing scheduling decision to determine which level of the multi-level heterogeneous cache device should be the target cache module to respond to the tile data. If the target cache module does not find the corresponding tile data, it sends a binary stream request to the spatial data storage device. Based on the computation instructions in the binary stream request, spatial retrieval, dynamic geometric thinning calculation and geometric data encoding are performed in the database kernel mode through the spatial data storage device to generate a vector slice binary stream, and the vector slice binary stream is returned to the asynchronous slice distribution engine. The computation instructions include slice grid coordinates, spatial retrieval range converted from slice grid coordinates and geometric optimization parameters. The asynchronous slice distribution engine merges and distributes the vector slice binary streams, constructs a binary response stream based on the vector slice binary streams, returns the binary response stream and its hash fingerprint to the client, constructs slice data based on the vector slice binary stream, its hash fingerprint and metadata, and writes the slice data to the edge distribution node cache module. This is used to provide an incremental cache update mechanism driven by source data change events based on hash fingerprints. The incremental cache update mechanism achieves consistency of slice data in multi-level heterogeneous cache devices. The metadata includes the slice grid coordinates, slice size and generation time corresponding to the vector slice binary stream. Based on the binary response stream, the client constructs tile data and stores it in the client's persistent cache module. Based on the binary response stream, the client performs hardware-accelerated decoding and graphics rendering, and asynchronously preloads map tiles for the next map viewport range through the client.

[0015] The high-concurrency real-time vector map distribution system and method of the present invention have the following advantages: 1. Significantly Improved Performance: Through direct kernel-mode encoding and asynchronous I / O, a single node can support tens of thousands of concurrent QPS under typical hardware configurations and network environments. Intelligent routing enables low-level request response times to reach sub-millisecond levels. 2. Extreme bandwidth optimization: Dynamic thinning significantly reduces the size of small-scale slices (by 40%-70% in typical data scenarios); point clustering reduces point data traffic by more than 95%; multi-level cache hits greatly reduce back-to-origin pressure; 3. Strong real-time data performance: Spatial awareness triggering and hash fingerprint incremental update mechanism ensure that data updates take effect globally within seconds, balancing caching performance and data freshness; 4. Excellent user experience: The combination of client-side predictive loading and multi-level caching basically eliminates the "white image" phenomenon during the interaction process, achieving a smooth zooming and panning experience; 5. Flexible system expansion: The components are loosely coupled and can be expanded independently and horizontally to adapt to application scenarios of different scales. Attached Figure Description

[0016] To more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0017] The invention will be further described below with reference to the accompanying drawings.

[0018] Figure 1 This is a schematic diagram of the overall architecture of a high-concurrency real-time vector map distribution system according to Example 1; Figure 2 This is a flowchart of dynamic geometric thinning and kernel-state encoding data processing in a high-concurrency real-time vector map distribution system, as shown in Example 1. Figure 3 This is a schematic diagram of a cached routing decision tree in a high-concurrency real-time vector map distribution system, as shown in Example 1. Figure 4 This is a schematic diagram of a client viewport motion prediction model in a high-concurrency real-time vector map distribution system, as shown in Example 1. in, Figure 1 It demonstrates the connection relationships and data flow between the client, the asynchronous slice distribution engine, the spatial data storage device, and the multi-level heterogeneous caching devices (server-side snapshot caching module, edge distribution node caching module, and client-side persistent caching module); Figure 2 It demonstrates the complete processing chain from the original vector feature input to topology-preserving thinning, loop closure detection, self-intersection check, and kernel-state MVT encoding output; Figure 3 The system demonstrates the two-level traffic splitting logic of the overview view / detail view based on the zoom level threshold N, the hit / miss processing branches of each level of cache, and the real-time calculation trigger conditions. Figure 4 Displays the spatial relationship between the current viewport, motion direction vector, probability sector prediction range, and preloaded slice grid. Detailed Implementation

[0019] The present invention will be further described below with reference to the accompanying drawings and specific embodiments, so that those skilled in the art can better understand and implement the present invention. However, the embodiments are not intended to limit the present invention. In the absence of conflict, the embodiments of the present invention and the technical features in the embodiments can be combined with each other.

[0020] This invention provides a high-concurrency real-time vector map distribution system and method to address the technical problem of how to provide a solution that integrates real-time computing, efficient transmission optimization, and intelligent multi-level caching. Example

[0021] This invention discloses a high-concurrency real-time vector map distribution system, comprising a client, a spatial data storage device, an asynchronous tile distribution engine, and a multi-level heterogeneous caching device.

[0022] The multi-level heterogeneous caching device is equipped with three-level caching modules: a server-side snapshot caching module, an edge distribution node caching module, and a client-side persistent caching module. The server-side snapshot caching module is used to store static index image files pre-generated for low-scaling levels, the edge distribution node caching module is used to store real-time computed slice results, and the client-side persistent caching module is used to store slice data accessed by users.

[0023] This embodiment's multi-level heterogeneous caching device consists of a server-side snapshot caching module, an edge distribution node caching module, and a client-side persistent caching module. The server-side snapshot caching module stores pre-generated static index image files for low-scaling levels (small scales), employing a single-file embedded index structure to support extremely fast read speeds. The edge distribution node caching module is deployed on CDN or edge computing nodes to cache popular real-time computing slice results. The client-side persistent caching module utilizes browser local storage (such as IndexedDB) to persist slice data accessed by the user. Each level of caching collaborates through a unified hierarchical routing scheduling logic and hash fingerprint comparison mechanism to achieve efficient hierarchical data storage, synchronization, and consistency maintenance.

[0024] The asynchronous tile distribution engine parses map tile requests sent by clients to obtain tile grid coordinates. Based on the scaling level Z in the tile grid coordinates, it makes cache routing and scheduling decisions to determine which level of the multi-level heterogeneous caching device should be the target cache module to respond with tile data. If the target cache module does not find the corresponding tile data, it sends a binary stream request to the spatial data storage device to merge and distribute the vector tile binary stream returned by the spatial data storage device. A binary response stream is constructed based on the vector tile binary stream, and the binary response stream and its hash fingerprint are returned to the client. Tile data is constructed based on the vector tile binary stream, its hash fingerprint, and metadata, and written to the edge distribution node cache module. This provides an incremental cache update mechanism driven by source data change events based on the hash fingerprint. The incremental cache update mechanism ensures the consistency of tile data in the multi-level heterogeneous caching devices. The metadata includes the tile grid coordinates, tile size, and generation time corresponding to the vector tile binary stream.

[0025] In this embodiment, the asynchronous slice distribution engine acts as a request scheduling center, parsing spatial parameters (such as slice grid coordinates (Z, X, Y)) in the client request; based on the preset cache routing scheduling logic, it decides which level of cache should respond to the request or whether real-time calculation needs to be triggered; if real-time calculation is required, it sends an instruction containing the retrieval range and optimization parameters (such as simplification tolerance) to the spatial data storage device.

[0026] As a specific implementation of the asynchronous tile distribution engine, it is built on a non-blocking asynchronous IO model and includes a hierarchical threshold routing unit. The hierarchical threshold routing unit has a preset scaling level threshold N and is configured with cached route scheduling logic. Based on the tile grid coordinates, the hierarchical threshold routing unit performs the following operations to realize cached route scheduling decisions: compare the scaling level in the tile grid coordinates with the scaling level threshold N. If Z < N, it is determined that the map tile request is an overview view, and the server snapshot cache module is used as the route target cache module. If Z ≥ N, it is determined that the map tile request is a detail view, and the edge distribution node cache module is used as the route target cache module.

[0027] Correspondingly, the asynchronous slice dispatch engine generates computation instructions for the following operations: (1) Execute cache query: If the route target cache module is hit, the slice data is obtained from the route target cache module and returned to the client; if the route target cache module is not hit, the real-time calculation process is triggered. (2) Real-time calculation trigger: The slice coordinates are converted into a spatial rectangle (minX, minY, maxX, maxY) on the projection plane as the spatial retrieval range. The calculation instructions are constructed based on the slice grid coordinates, the spatial retrieval range converted from the slice grid coordinates, and the geometric optimization parameter k, and the calculation instructions are sent to the spatial data storage device.

[0028] As a specific implementation of the asynchronous slice distribution engine, the asynchronous slice distribution engine includes a hash fingerprint incremental update unit. This unit provides an incremental cache update mechanism driven by source data change events based on hash fingerprints, achieving consistency of slice data across multi-level heterogeneous cache devices. Specifically, the hash fingerprint incremental update unit performs the following operations to implement the source data change event-driven incremental cache update mechanism: (1) Initialize hash fingerprint: For each known geographic grid, calculate the hash fingerprint of the geographic grid data block, associate the hash fingerprint of the geographic grid data block with the grid identifier and store it to form a historical fingerprint database. When calculating the hash fingerprint of the geographic grid data block, the hash fingerprint is generated based on the vector slice binary stream in the slice data corresponding to the geographic grid and through a predefined hash algorithm. (2) Listen for source data change events: Listen for data update events from the original geographic vector features in the spatial data storage device. Data updates include data addition, deletion and modification operations; (3) Locate the set of affected grids: Based on the feature identifiers carried in the data update event and combined with the current tiling scheme, calculate all geographic grids affected by the data update event and obtain the grid coordinates of the affected geographic grids. The grid coordinates of the geographic grids are represented by the grid coordinates of the corresponding tiles, including the scaling level Z, the tile column number X, and the tile row number Y. (4) Recalculate hash fingerprints: For each affected geographic grid, recalculate the current hash fingerprint of the geographic grid data block as the new hash fingerprint; (5) Indicator comparison: For each affected geographic grid, the new hash fingerprint is compared with the hash fingerprint stored in the historical fingerprint database. If they match, it means that the content of the current geographic grid has not changed substantially. If they do not match, it means that the data of the current geographic grid has changed. (6) Instruction generation: For geographic grids whose data has changed, an update instruction is generated and sent to the multi-level heterogeneous caching device to notify the downstream cache to pull the latest slice data of the geographic grid, or an invalidation instruction is generated and sent to the multi-level heterogeneous caching device to notify the downstream cache to mark the slice data of the geographic grid as invalid or delete it directly. The downstream cache includes an edge distribution node caching module and a client persistent caching module. (7) Update the historical fingerprint database: For each affected geographic grid, write the new hash fingerprint to the historical fingerprint database and overwrite the old hash fingerprint.

[0029] As an improvement to the asynchronous slice distribution engine, it also includes a binary stream overlay operator. When the asynchronous slice distribution engine requests binary streams corresponding to multiple layers from the spatial data storage device in parallel, the binary stream overlay operator receives vector slice binary streams from multiple data sources and performs structured splicing and merging directly in memory to generate a binary response stream of a composite layer. Specifically, the binary stream overlay operator identifies the structural segments in each vector slice binary stream, including geometric segments, attribute segments, and index segments, according to a predefined protocol specification, and performs data block splicing and field merging in memory to generate a binary response stream of a composite layer. When multiple vector slice binary streams have overlapping or conflicting data blocks, they are overwritten or merged according to preset priorities or merging rules.

[0030] The spatial data storage device stores raw geographic vector features, which are used to perform spatial retrieval, dynamic geometric thinning calculation and geometric data encoding in the database kernel state based on the calculation instructions in the binary stream request, generate a vector tile binary stream, and return the vector tile binary stream to the asynchronous tile distribution engine. The calculation instructions include the tile grid coordinates, the spatial retrieval range converted from the tile grid coordinates, and the geometric optimization parameters.

[0031] As a specific implementation of a space data storage device, it includes a high-performance computing operator, a kernel-mode encoder, and a topology-preserving operator. The high-performance computing operator is used to directly perform spatial retrieval and geometric operations in the database kernel mode based on computational instructions, outputting intermediate geometric data; the topology-preserving operator is used to receive the intermediate geometric data and, based on the scaling level Z and geometric optimization parameters... The system dynamically calculates the geometric simplification tolerance T. Using T as a threshold, it performs dynamic geometric thinning calculations, including loop closure checks and self-intersection checks. For thinned polygon features, loop closure checks are performed to ensure closed polygon boundaries. For thinned line or polygon features, self-intersection checks are performed to detect and correct topological errors at their intersections. The simplified geometric data is then output. The kernel-mode encoder is used to receive simplified geometric data, directly encode it into a vector slice binary stream in the kernel mode of the database, and then output it.

[0032] The spatial data storage device in this embodiment serves as the data foundation of the system. It not only stores raw geographic vector features (points, lines, and polygons), but more importantly, it incorporates high-performance spatial computing operators and a kernel-mode encoder. This device can be implemented based on PostgreSQL + PostGIS extensions. Topology-preserving thinning calls the `ST_SimplifyPreserveTopology` function, and MVT vector tile encoding calls the `ST_AsMVT` function. These functions are executed directly within the database process space (i.e., database kernel mode) without context switching. The device supports performing spatial retrieval and geometric operations (such as clipping and simplification) directly in the database kernel mode after receiving external commands, and encodes the results in real-time into a compact, structured binary data stream (such as an optimized vector tile format), thereby avoiding the significant overhead of copying raw geometric data to user mode for processing.

[0033] As an improvement to the spatial data storage device, it also includes a dynamic point feature clustering unit. When the scaling level specified in the calculation instruction is lower than a preset clustering threshold, the dynamic point feature clustering unit performs the following operations: determining the grid division granularity based on the scaling level Z, dividing the specified geographical area into multiple grid cells, grouping and aggregating the point features falling within each grid cell, calculating the cluster representative point location and aggregation statistics of the grid cell, and outputting the clustering results to the kernel-mode encoder for encoding. The cluster representative point location includes the geometric center, weighted center, or the location with the highest frequency of occurrence of all point features within the map grid, and the aggregation statistics include the total number of point features within the map grid and a summary of the distribution of key attributes. When the scaling level specified in the calculation instruction is higher than the preset clustering threshold, the dynamic point feature clustering unit is bypassed, and the high-performance computing operator in the spatial data storage device returns the original point feature data from the spatial data storage device in a conventional manner.

[0034] The client is used to build tile data based on the binary response stream and store it in the client persistent cache module. It is used for hardware-accelerated decoding and graphics rendering based on the binary response stream and for asynchronous preloading of map tiles in the next map viewport range.

[0035] As a specific implementation of the client, it includes a motion trend prediction unit and an asynchronous preloading queue.

[0036] The motion trend prediction unit is used to perform the following: (1) Listen to map interaction events and collect the motion state parameters of the map viewport in real time. The motion state parameters include the displacement of the center point, the instantaneous movement speed and the zoom acceleration. (2) Construct a probabilistic sector prediction model based on motion vectors based on the current direction and speed of movement to predict the map viewport coverage within a preset time window in the future; (3) Calculate the coordinate sequence of all tiles involved within the map viewport coverage area; (4) Add the slice coordinate sequence to the asynchronous preload queue.

[0037] Correspondingly, the asynchronous preloading queue is used to load the data corresponding to the slice coordinate sequence during network idle periods or low-priority threads and store it in the client persistent cache module. The data corresponding to the slice coordinate sequence is a vector slice binary stream.

[0038] As an improvement to the system in this embodiment, the system also includes a spatially aware cache invalidation device. The spatially aware cache invalidation device is used to listen to data update events of the spatial data storage device, calculate the grid coordinate set of the affected specific slice based on the spatial bounding box of the modified geographic vector features, and send a precise invalidation command for the specific slice to the asynchronous slice distribution engine and the multi-level cache device.

[0039] Correspondingly, the multi-level heterogeneous caching device receives a precise invalidation command and, based on the grid coordinate set of the specific affected slice in the precise invalidation command, marks the local cache of the relevant slice data as invalid or deletes it. Similarly, the asynchronous slice distribution engine receives a precise invalidation command and, based on the grid coordinate set of the specific affected slice in the precise invalidation command, marks the local cache of the relevant slice data as invalid or deletes it.

[0040] As a specific implementation of the space-aware cache invalidation device, the device is used to perform the following operations: (1) Listen to data update events in the spatial data storage device and obtain the modified geographic vector features. Data update events include feature addition events, feature modification events and feature deletion events; (2) Calculate the spatial bounding box of the modified geographic vector feature. The spatial bounding box is a minimum axis-aligned rectangle that can completely contain the modified geographic vector feature. The spatial bounding box is represented by a quadruple consisting of minimum longitude, minimum latitude, maximum longitude, and maximum latitude. (3) Obtain the scaling level range [Z_min, Z_max] to be processed and the map tiling scheme pre-configured by the system. For each level Z in the scaling level range, perform the following operations: convert the minimum longitude and maximum longitude of the spatial bounding box into the tile column index range [x_min, x_max] under the scaling level, convert the minimum latitude and maximum latitude of the spatial bounding box into the tile row index range [y_min, y_max] under the scaling level, generate a set of tile coordinates (Z, x, y) that satisfy x ∈ [x_min, x_max] and y ∈ [y_min, y_max] under the scaling level, merge the tile coordinate sets of all scaling levels, and output the grid coordinate set of the affected specific tile. (4) Construct a precise failure instruction based on the set of grid coordinates of the affected specific slice, and send the precise failure instruction to the multi-level heterogeneous cache device and the asynchronous slice distribution engine. The precise failure instruction includes the instruction type identifier, the set of grid coordinates of the affected specific slice, and the timestamp or version number.

[0041] Correspondingly, in the multi-level heterogeneous caching device, after receiving the precise invalidation command, the edge distribution node caching module executes the following: deletes the corresponding slice entry from the cache storage, marks the corresponding slice entry as expired, or sets the entry to automatically expire in a very short time; after receiving the precise invalidation command, the client persistent caching module deletes or marks the slice data of the corresponding coordinates in the local storage as invalid through long connection push or version number comparison mechanism; after receiving the precise invalidation command, the server snapshot caching module marks the affected slice data as pending update, calls the asynchronous slice distribution engine and spatial data storage device to execute asynchronous tasks, regenerates the slice data and updates the corresponding slice block in the static image file.

[0042] The system in this embodiment can perform the following operations to achieve high-concurrency real-time vector map distribution: (1) Receiving requests: The system receives map tile requests sent by the client, which include geographic range and zoom level parameters; (2) Cache route determination: Through multi-level cache route scheduling logic, determine whether the request can be directly responded to by the server snapshot cache or the edge distribution node cache; (3) Real-time computation (if a cache miss): If a cache miss occurs, the asynchronous slice distribution engine schedules the spatial data storage device and combines the dynamic geometric thinning algorithm (if needed) with the kernel-mode encoding operator to generate the required vector slice binary stream in real time; (4) Feedback and Rendering: The generated slice data is returned to the client, and its hash fingerprint is used to update the cache at all levels. After receiving the data, the client uses the GPU for hardware-accelerated rendering and display.

[0043] The system in this embodiment provides the following services.

[0044] Service 1: Adaptive Geometric Thinning and Kernel-State Encoding Based on Scaling Hierarchy Based on an asynchronous slice distribution engine and spatial data storage device, this service solves the problem of excessive data transmission at small scales. The execution steps are as follows: (1) For a map tile request, obtain its zoom level "Z"; (2) According to the formula (T is the distance on the Web Mercator projection plane, which is converted to meters or degrees according to the latitude in actual calculation.) Dynamic calculation of geometric simplification tolerance "T", where "k" is an adjustable base number with a preferred range of 0.3 to 1.0 (e.g., k=0.5). The larger "Z" (the larger the scale), the smaller "T" is, and the more details are retained; conversely, the greater the simplification. (3) In the spatial data storage device, the topology preservation operator is enabled. When performing geometric node thinning (such as the Douglas-Peucker algorithm), the operator performs closed loop determination and feature self-intersection verification in real time to ensure that the simplified geometry does not produce topological errors (such as cracks or self-intersections in polygons). (4) The thinned geometric data is directly converted into the target binary stream by the kernel-mode encoding operator, significantly reducing the number of memory copying operations. This process is shown in the attached diagram. Figure 2 As shown.

[0045] Service 2: Intelligent Multi-Level Caching Routing and Incremental Updates Implemented using an asynchronous slice distribution engine, this service maximizes caching efficiency and ensures data real-time performance. The routing logic is as follows: (1) Set a level threshold “N” (preferably 8 to 12, for example N=10), and the judgment logic is: if Z < N, it is an overview view; if Z ≥ N, it is a detail view. (2) If the request level “Z < N”, it is determined to be an overview view, and the route directly points to the static image file of the server snapshot cache module to achieve microsecond-level response; (3) If the requested level is “Z ≥ N”, it is determined to be a detailed view. First, the edge distribution node cache module is queried. If it is not found, the asynchronous slice distribution engine triggers real-time calculation. The result is returned to the client and written to the edge cache.

[0046] Based on the hash fingerprint incremental update unit in the asynchronous slice distribution engine, the incremental update mechanism is implemented as follows: (1) Calculate a unique hash fingerprint for the data block corresponding to each geographic grid (Tile). (2) When the source data changes, the system calculates a new fingerprint for the affected grid. (3) By comparing the new and old fingerprints, an update or invalidation command for the grid data is sent to the relevant edge distribution node cache module and the client persistent cache module only when the fingerprint changes, thus avoiding a full cache refresh. The routing decision logic is attached. Figure 3 As shown.

[0047] Service 3: Client Viewport Motion Prediction and Preloading Implemented on the client side, this service achieves a "zero-wait" experience for map interaction and improves preloading hit rate. The operation steps are as follows: (1) The client SDK collects the motion state of the map viewport in real time, including the center point displacement vector, instantaneous movement speed and zoom acceleration; (2) Construct a probabilistic sector prediction model based on motion vectors. Based on the current motion trend, predict the range most likely to be covered by the viewport in the next short period of time (e.g., 300-500ms), and calculate the tile grid coordinate sequence involved in this range to generate a sector probabilistic prediction range. The model takes the current motion direction as the center direction. Instantaneous velocity magnitude As the intensity parameter, the orientation angle is constructed to follow a normal distribution. The probability sector, where , Based on the deviation of the direction (e.g., taking) Right now ), The velocity decay coefficient is used. The sector radius is determined by the prediction time window and the current velocity. The model calculates the coordinates of all possible map tiles within the probability sector and arranges them in descending order of probability density for use in the preloading queue. (3) Add the predicted grid sequence to the asynchronous preloading queue. Utilize network idle periods or low-priority threads to preload these slice data and store them in the client's local temporary storage or persistent cache. A schematic of the prediction model is attached. Figure 4 As shown.

[0048] Service 4: Cross-Source Binary Stream Lossless Merging Based on the binary stream overlay operator in the asynchronous slice distribution engine, this service efficiently handles multi-layer overlay requests. The implementation method is as follows: when a request needs to merge layers from different data sources (such as different database tables or services), the asynchronous slice distribution engine obtains the binary streams from each source in parallel. The engine's built-in binary stream overlay operator can directly perform structured splicing and field merging of these streams in memory according to the protocol specification, without needing to fully decode them into geometric objects. The final output is a unified composite layer binary response stream, greatly improving merging efficiency.

[0049] Service 5: Dynamic Clustering Processing for Point-Oriented Elements This service is based on dynamic clustering units of point features in a spatial data storage device, solving the problems of rendering performance and transmission pressure for massive point features at low levels. The mechanism is as follows: the system sets a clustering threshold level (preferably ranging from scaling levels 6 to 9, e.g., Z=8). When the requested scaling level is lower than this threshold, the operators in the spatial data storage device automatically switch modes: instead of returning each individual point feature, they perform real-time aggregation calculations on the point features within a specified grid, returning only the representative point locations (such as cluster centers) and aggregation statistics (such as feature quantity and key attribute summaries). This significantly reduces the amount of data and the client rendering burden.

[0050] Service 6: Spatial Awareness of Precise Cache Expiration This service is implemented based on a space-aware cache invalidation mechanism, ensuring that the global cache can quickly and accurately reflect the latest state after data updates. The implementation process is as follows: (1) Monitor all data update (add, delete, modify) events in the spatial data storage device; (2) For each update, automatically calculate the bounding box of the modified features; (3) Based on the map tiling scheme, reverse map the bounding box to the set of coordinates of all affected geographic grids; (4) Immediately send precise invalidation instructions for these specific grids to the multi-level cache device to trigger it to update or clear the old cache, thereby ensuring the real-time consistency of data distribution.

[0051] This embodiment's system is based on scaling-level dynamic calculation of geometric simplification tolerance, performing topology preservation thinning and encoding in kernel mode; intelligent cache routing and hash fingerprint incremental update mechanism; client viewport motion prediction and preloading; dynamic clustering of point features; cross-source binary streaming merging; and spatially aware precise cache invalidation. This invention achieves integrated storage and computing with global collaborative caching, significantly improving concurrent processing capabilities and response speed, optimizing bandwidth consumption, ensuring data real-time performance, and significantly improving the map interaction experience. Example

[0052] This invention discloses a high-concurrency real-time vector map distribution method, based on the system implementation disclosed in Embodiment 1, with the following steps: Step S100: Receive and parse the map tile request sent by the client through the asynchronous tile distribution engine to obtain the tile grid coordinates. Make a cache routing scheduling decision based on the scaling level Z in the tile grid coordinates to determine which level of cache module in the multi-level heterogeneous cache device should be the target cache module to respond to the tile data. If the target cache module does not find the corresponding tile data, send a binary stream request to the spatial data storage device. Step S200: Based on the calculation instructions in the binary stream request, spatial retrieval, dynamic geometric thinning calculation and geometric data encoding are performed in the database kernel state through the spatial data storage device to generate a vector slice binary stream, and the vector slice binary stream is returned to the asynchronous slice distribution engine. The calculation instructions include slice grid coordinates, spatial retrieval range converted from slice grid coordinates and geometric optimization parameters. Step S300: Merge and distribute the vector slice binary stream through the asynchronous slice distribution engine, construct a binary response stream based on the vector slice binary stream, return the binary response stream and its hash fingerprint to the client, construct slice data based on the vector slice binary stream, its hash fingerprint and metadata, and write the slice data into the edge distribution node cache module to provide an incremental cache update mechanism driven by source data change events based on hash fingerprint. The incremental cache update mechanism achieves consistency of slice data in multi-level heterogeneous cache devices. The metadata includes the slice grid coordinates, slice size and generation time corresponding to the vector slice binary stream. Step S400: Based on the binary response stream, construct the tile data through the client and store it in the client's persistent cache module. According to the binary response stream, perform hardware-accelerated decoding and graphics rendering through the client, and asynchronously preload the map tiles of the next map viewport range through the client.

[0053] The high-concurrency real-time vector map distribution system method provided by the present invention has been described in detail above. Specific examples have been used to illustrate the principle and implementation of the present invention. The description of the above embodiments is only for the purpose of helping to understand the method and core idea of ​​the present invention. At the same time, for those skilled in the art, there will be changes in the specific implementation and application scope based on the idea of ​​the present invention. Therefore, the content of this specification should not be construed as a limitation of the present invention.

Claims

1. A high-concurrency real-time vector map distribution system, characterized in that, This includes the client, spatial data storage device, asynchronous slice distribution engine, and multi-level heterogeneous caching device; The multi-level heterogeneous caching device is equipped with three-level caching modules: a server-side snapshot caching module, an edge distribution node caching module, and a client-side persistent caching module. The server-side snapshot caching module is used to store static index image files pre-generated for low-scaling levels, the edge distribution node caching module is used to store real-time calculated slice results, and the client-side persistent caching module is used to store slice data accessed by users. The asynchronous tile distribution engine parses the map tile requests sent by the client to obtain the tile grid coordinates. Based on the scaling level Z in the tile grid coordinates, it makes a cache routing and scheduling decision to determine which level of the multi-level heterogeneous cache device should be the target cache module to respond with the tile data. If the target cache module does not find the corresponding tile data, it sends a binary stream request to the spatial data storage device to merge and distribute the vector tile binary stream returned by the spatial data storage device. It constructs a binary response stream based on the vector tile binary stream and returns the binary response stream and its hash fingerprint to the client. It constructs tile data based on the vector tile binary stream, its hash fingerprint, and metadata and writes the tile data to the edge distribution node cache module. This provides an incremental cache update mechanism driven by source data change events based on the hash fingerprint. The incremental cache update mechanism ensures the consistency of tile data in the multi-level heterogeneous cache devices. The metadata includes the tile grid coordinates, tile size, and generation time corresponding to the vector tile binary stream. The spatial data storage device stores the original geographic vector features, which are used to perform spatial retrieval, dynamic geometric thinning calculation and geometric data encoding in the database kernel state based on the calculation instructions in the binary stream request, generate a vector tile binary stream, and return the vector tile binary stream to the asynchronous tile distribution engine. The calculation instructions include the tile grid coordinates, the spatial retrieval range converted from the tile grid coordinates and the geometric optimization parameters. The client is used to build tile data based on the binary response stream and store it in the client persistent cache module. It is used for hardware-accelerated decoding and graphics rendering based on the binary response stream and for asynchronous preloading of map tiles in the next map viewport range.

2. The high-concurrency real-time vector map distribution system according to claim 1, characterized in that, The asynchronous tile distribution engine is built on a non-blocking asynchronous I / O model and includes a hierarchical threshold routing unit. The hierarchical threshold routing unit has a preset scaling level threshold N and is configured with cached route scheduling logic. Based on the tile grid coordinates, the hierarchical threshold routing unit performs the following operations to realize cached route scheduling decisions: compare the scaling level in the tile grid coordinates with the scaling level threshold N. If Z < N, it is determined that the map tile request is an overview view, and the server snapshot cache module is used as the route target cache module. If Z ≥ N, it is determined that the map tile request is a detail view, and the edge distribution node cache module is used as the route target cache module. Correspondingly, the asynchronous slice dispatch engine generates computation instructions for the following operations: Perform a cache query: If the target cache module of the route is hit, the slice data is retrieved from the target cache module of the route and returned to the client; if the target cache module of the route is not hit, the real-time calculation process is triggered. Real-time calculation trigger: The slice coordinates are converted into a spatial rectangle (minX, minY, maxX, maxY) on the projection plane as the spatial retrieval range. The calculation instructions are constructed based on the slice grid coordinates, the spatial retrieval range converted from the slice grid coordinates, and the geometric optimization parameter k, and the calculation instructions are sent to the spatial data storage device.

3. The high-concurrency real-time vector map distribution system according to claim 1, characterized in that, The asynchronous slice distribution engine includes a hash fingerprint incremental update unit, which is used to provide an incremental cache update mechanism driven by source data change events based on hash fingerprints. The incremental cache update mechanism is used to achieve consistency of slice data in multi-level heterogeneous cache devices. The hash fingerprint incremental update unit is used to perform the following operations to implement the source data change event-driven incremental cache update mechanism: Initialize hash fingerprint: For each known geographic grid, calculate the hash fingerprint of the geographic grid data block, associate and store the hash fingerprint of the geographic grid data block with the grid identifier to form a historical fingerprint database. When calculating the hash fingerprint of the geographic grid data block, the hash fingerprint is generated based on the vector slice binary stream in the slice data corresponding to the geographic grid and through a predefined hash algorithm. Listen for source data change events: Listen for data update events from raw geographic vector features in the spatial data storage device. Data updates include data addition, deletion, and modification operations. Locate the affected grid set: Based on the feature identifiers carried in the data update event and combined with the current tiling scheme, calculate all geographic grids affected by the data update event, and obtain the grid coordinates of the affected geographic grids. The grid coordinates of the geographic grids are represented by the grid coordinates of the corresponding tiles, including the scaling level Z, the tile column number X, and the tile row number Y. Recalculate hash fingerprints: For each affected geographic grid, recalculate the current hash fingerprint of the geographic grid data block as the new hash fingerprint; Indicator comparison: For each affected geographic grid, the new hash fingerprint is compared with the hash fingerprint stored in the historical fingerprint database. If they match, it means that the content of the current geographic grid has not changed substantially. If they do not match, it means that the data of the current geographic grid has been changed. Command generation: For geographic grids whose data has changed, an update command is generated and sent to the multi-level heterogeneous caching device to notify the downstream cache to pull the latest tile data of the geographic grid. Alternatively, an invalidation command is generated and sent to the multi-level heterogeneous caching device to notify the downstream cache to mark the tile data of the geographic grid as invalid or delete it directly. The downstream cache includes an edge distribution node caching module and a client persistent caching module. Update the historical fingerprint database: For each affected geographic grid, write the new hash fingerprint to the historical fingerprint database and overwrite the old hash fingerprint.

4. The high-concurrency real-time vector map distribution system according to claim 1, characterized in that, The asynchronous slice distribution engine also includes a binary stream overlay operator. When the asynchronous slice distribution engine requests binary streams corresponding to multiple layers from the spatial data storage device in parallel, the binary stream overlay operator is used to receive vector slice binary streams from multiple data sources, and directly perform structured splicing and merging in memory to generate a binary response stream of a composite layer. The binary stream overlay operator identifies the structural segments in each vector slice binary stream, including geometric segments, attribute segments, and index segments, according to a predefined protocol specification. It then performs data block splicing and field merging in memory to generate a binary response stream of a composite layer. When multiple vector slice binary streams have overlapping or conflicting data blocks, they are overwritten or merged according to preset priorities or merging rules.

5. A high-concurrency real-time vector map distribution system according to claim 1, characterized in that, The spatial data storage device includes a high-performance computing operator, a kernel-state encoder, and a topology-preserving operator; High-performance computing operators are used to directly perform spatial retrieval and geometric operations in the database kernel state based on computing instructions, and output intermediate geometric data; The topology-preserving operator is used to receive intermediate geometry data, based on the scaling level Z and geometry optimization parameters. The system dynamically calculates the geometric simplification tolerance T. Using T as a threshold, it performs dynamic geometric thinning calculations, including loop closure checks and self-intersection checks. For thinned polygon features, loop closure checks are performed to ensure closed polygon boundaries. For thinned line or polygon features, self-intersection checks are performed to detect and correct topological errors at their intersections. The simplified geometric data is then output. ; The kernel-mode encoder is used to receive simplified geometric data, encode it directly into a vector slice binary stream in the kernel-mode of the database, and then output it.

6. A high-concurrency real-time vector map distribution system according to claim 5, characterized in that, The spatial data storage device includes a point feature dynamic clustering unit. When the scaling level specified in the calculation instruction is lower than the preset clustering threshold, the point feature dynamic clustering unit performs the following operations: determining the grid division granularity according to the scaling level Z, dividing the specified geographical area into multiple grid units, grouping and aggregating the point features falling into each grid unit, calculating the cluster representative point location and aggregation statistics of the grid unit, and outputting the clustering results to the kernel-state encoder for encoding. Among them, the cluster representative point location includes the geometric center or weighted center of all point features within the map grid or the location with the highest frequency of occurrence, and the aggregated statistical information includes the total number of point features within the map grid and a summary of the distribution of key attributes. When the scaling level specified in the calculation instruction is higher than the preset clustering threshold, the dynamic clustering unit of the point feature is bypassed, and the original point feature data is returned from the spatial data storage device by the high-performance computing operator in the spatial data storage device in the conventional manner.

7. A high-concurrency real-time vector map distribution system according to claim 1, characterized in that, The client includes a motion trend prediction unit and an asynchronous preloading queue; The motion trend prediction unit is used to perform the following: Listen for map interaction events and collect the motion state parameters of the map viewport in real time. The motion state parameters include the displacement of the center point, the instantaneous movement speed, and the zoom acceleration. A probabilistic sector prediction model based on motion vectors is constructed based on the current direction and speed of movement to predict the map viewport coverage within a preset time window in the future. Calculate the coordinate sequence of all tiles within the map viewport coverage area; Add the slice coordinate sequence to the asynchronous preload queue; Correspondingly, the asynchronous preloading queue is used to load the data corresponding to the slice coordinate sequence during network idle periods or low-priority threads and store it in the client persistent cache module. The data corresponding to the slice coordinate sequence is a vector slice binary stream.

8. A high-concurrency real-time vector map distribution system according to claim 1, characterized in that, The system also includes a spatially aware cache invalidation device, which is used to monitor data update events of the spatial data storage device, calculate the grid coordinate set of the affected specific slice based on the spatial bounding box of the modified geographic vector features, and send a precise invalidation command for the specific slice to the asynchronous slice distribution engine and the multi-level cache device. Correspondingly, the multi-level heterogeneous cache device receives a precise invalidation instruction and, based on the set of grid coordinates of the affected specific slice in the precise invalidation instruction, marks the local cache of the relevant slice data as invalid or deletes it. Correspondingly, the asynchronous slice distribution engine receives a precise failure instruction and, based on the set of grid coordinates of the specific slice affected in the precise failure instruction, marks the local cache of the relevant slice data as invalid or deletes it.

9. A high-concurrency real-time vector map distribution system according to claim 8, characterized in that, The spatially aware cache invalidation device is used to perform the following operations: Listen for data update events in the spatial data storage device to obtain the modified geographic vector features. Data update events include feature addition events, feature modification events, and feature deletion events. Calculate the spatial bounding box of the modified geographic vector feature. The spatial bounding box is a minimum axis-aligned rectangle that can completely contain the modified geographic vector feature. The spatial bounding box is represented by a quadruple consisting of minimum longitude, minimum latitude, maximum longitude, and maximum latitude. Obtain the required scaling level range [Z_min, Z_max] and the system's pre-configured map tiling scheme. For each level Z within the scaling level range, perform the following operations: convert the minimum and maximum longitude of the spatial bounding box into the tile column index range [x_min, x_max] under that scaling level; convert the minimum and maximum latitude of the spatial bounding box into the tile row index range [y_min, y_max] under that scaling level; generate a set of tile coordinates (Z, x, y) for all tiles that satisfy x ∈ [x_min, x_max] and y ∈ [y_min, y_max] under that scaling level; merge the tile coordinate sets of all scaling levels; and output the grid coordinate set of the specific tile affected. A precise failure instruction is constructed based on the set of grid coordinates of the affected specific slice, and the precise failure instruction is sent to the multi-level heterogeneous cache device and the asynchronous slice distribution engine. The precise failure instruction includes an instruction type identifier, the set of grid coordinates of the affected specific slice, and a timestamp or version number. Correspondingly, in a multi-level heterogeneous caching device, after receiving a precise invalidation command, the edge distribution node caching module executes the following: deletes the corresponding slice entry from the cache storage, marks the corresponding slice entry as expired, or sets the entry to automatically expire in a very short time. After receiving a precise invalidation command, the client persistent caching module deletes or marks the slice data with the corresponding coordinates in the local storage as invalid through long-connection push or version number comparison mechanism; After receiving the precise invalidation command, the server-side snapshot caching module marks the affected slice data as pending updates, calls the asynchronous slice distribution engine and spatial data storage device to execute asynchronous tasks, regenerates the slice data, and updates the corresponding slice blocks in the static image file.

10. A high-concurrency real-time vector map distribution method, characterized in that, This is achieved through a high-concurrency real-time vector map distribution system as described in any one of claims 1-9, comprising the following steps: The asynchronous tile distribution engine receives and parses map tile requests from clients to obtain tile grid coordinates. Based on the scaling level Z in the tile grid coordinates, it makes a cache routing scheduling decision to determine which level of the multi-level heterogeneous cache device should be the target cache module to respond to the tile data. If the target cache module does not find the corresponding tile data, it sends a binary stream request to the spatial data storage device. Based on the computation instructions in the binary stream request, spatial retrieval, dynamic geometric thinning calculation and geometric data encoding are performed in the database kernel mode through the spatial data storage device to generate a vector slice binary stream, and the vector slice binary stream is returned to the asynchronous slice distribution engine. The computation instructions include slice grid coordinates, spatial retrieval range converted from slice grid coordinates and geometric optimization parameters. The asynchronous slice distribution engine merges and distributes the vector slice binary streams, constructs a binary response stream based on the vector slice binary streams, returns the binary response stream and its hash fingerprint to the client, constructs slice data based on the vector slice binary stream, its hash fingerprint and metadata, and writes the slice data to the edge distribution node cache module. This is used to provide an incremental cache update mechanism driven by source data change events based on hash fingerprints. The incremental cache update mechanism achieves consistency of slice data in multi-level heterogeneous cache devices. The metadata includes the slice grid coordinates, slice size and generation time corresponding to the vector slice binary stream. Based on the binary response stream, the client constructs tile data and stores it in the client's persistent cache module. Based on the binary response stream, the client performs hardware-accelerated decoding and graphics rendering, and asynchronously preloads map tiles for the next map viewport range through the client.