Land space overall planning data quality inspection and review optimization method
By optimizing the quality inspection and review of national land spatial planning data through data packet splitting and parallel computing, the problem of low efficiency in computing large amounts of data has been solved, enabling rapid quality inspection results and efficient deployment of resource utilization.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- WUDA GEOINFORMATICS CO LTD
- Filing Date
- 2026-04-09
- Publication Date
- 2026-05-08
AI Technical Summary
Existing land use master planning data quality inspection and review tools are inefficient when dealing with large amounts of data, unable to quickly obtain calculation results, and are complex and costly to deploy, failing to effectively utilize idle computing resources within the local area network.
By employing a data packet splitting strategy, combined with single-machine parallel computing and local area network distributed computing, data packets are split into multiple independent tasks. This allows for parallel quality inspection and review using idle resources within the single machine and local area network, generating a quality inspection and review report.
It improves the efficiency of quality inspection and review calculations for large data volumes, reduces computing costs, simplifies the deployment process, makes full use of idle computing resources within the local area network, and achieves rapid and visualized quality inspection results.
Smart Images

Figure CN121996650A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of data quality inspection and review technology, and more specifically, to an optimized method for quality inspection and review of land and space master planning data. Background Technology
[0002] During the current quality inspection and review process of submitted data for the overall national spatial planning, there are frequent instances of performing complex topological or attribute logic calculations on single or multiple layers of massive datasets. In cases of exceptionally large datasets, this can lead to abnormally slow or even impossible calculations for certain layers in a single submitted output.
[0003] Currently, data quality inspection and review mainly consist of client-side quality inspection and review tools and server-side quality inspection and review services (existing technologies are introduced from aspects such as existing patents, literature, and products). Client-side quality inspection and review tools (CS-side) are typically used for automatic or semi-automatic calculation, inspection, and modification of topological, attribute, and various logical problems in data. These tools, based on specific algorithms, calculation rule engines, or data classification technologies, define the quality and logical requirements of land spatial planning data in a rule-based manner, and are characterized by automation, lightweight design, and high scalability.
[0004] The disadvantages of this data quality inspection and review scheme are as follows: Existing C / S-based data quality inspection and review tools can only perform quality inspection and review calculations on topological relationships, attribute logic, and spatial attribute consistency for data of appropriate volume. As land spatial planning becomes increasingly detailed, the scale of data is becoming larger, resulting in a larger data volume. Therefore, in some cases where the data volume of certain layers in the submitted data is particularly large, the calculation process may fail to obtain results normally or the calculation may be abnormally time-consuming. This creates many inconveniences for scenarios where quick results are needed for subsequent work. Server-side data quality inspection and review programs (BS-based) typically utilize spatial big data computing technologies, employing distributed computing capabilities (such as Spark, Flink, Hadoop, etc.) and customized rules and algorithms for fully automated data quality inspection and review. Data preview and interaction are then achieved through WebGIS technology. The disadvantages include high technical barriers and complex deployment; potential spatial computing performance bottlenecks; weak interactivity and visualization capabilities; and high costs for cluster hardware (servers, storage) and maintenance. Summary of the Invention
[0005] This invention addresses the technical problems existing in the prior art by providing an optimized method for quality inspection and review of land and space master planning data, overcoming the shortcomings of low efficiency in the existing quality inspection and review of land and space master planning data.
[0006] This invention provides an optimization method for quality inspection and review of land and space master planning data, including:
[0007] Obtain the data package of the overall land space planning data that needs to be inspected and reviewed, and divide each layer in the data package into multiple independent tasks to be inspected according to the data volume and splitting strategy, and generate a task list. The splitting strategy is to split each layer according to the data business characteristics and data spatial distribution characteristics.
[0008] The quality inspection and review calculations for multiple tasks to be inspected after being split are performed in parallel based on a single-machine parallel computing mechanism and / or a local area network parallel computing mechanism, generating the quality inspection and review calculation results for each task to be inspected.
[0009] The system aggregates the quality inspection and review calculation results of all tasks awaiting quality inspection and generates a quality inspection and review report for the overall land and space planning data.
[0010] This invention provides an optimization method for quality inspection and review of land and space master planning data. Based on business and spatial characteristics, the method employs technologies such as splitting and merging data packets, parallel computing of spatial data on a single machine, and distributed computing utilizing idle resources within a local area network. This solves the problem of abnormally slow or inability to calculate results for quality inspection and review of some massive data layers in frequently submitted land and space master planning data. Attached Figure Description
[0011] Figure 1 A flowchart of an optimization method for quality inspection and review of land and space master planning data is provided as an embodiment of the present invention;
[0012] Figure 2 This is an overall schematic diagram of an optimization method for quality inspection and review of land and space master planning data provided in one embodiment of the present invention;
[0013] Figure 3 This is a task splitting flowchart according to an embodiment of the present invention;
[0014] Figure 4 A flowchart illustrating a single-machine parallel computing mode according to an embodiment of the present invention;
[0015] Figure 5 This is a flowchart illustrating a local area network parallel computing mode according to an embodiment of the present invention. Detailed Implementation
[0016] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention. In addition, the technical features of the various embodiments or individual embodiments provided by the present invention can be arbitrarily combined with each other to form feasible technical solutions. Such combinations are not constrained by the order of steps and / or structural composition patterns, but must be based on the ability of those skilled in the art to implement them. When the combination of technical solutions is contradictory or cannot be implemented, it should be considered that such a combination of technical solutions does not exist and is not within the scope of protection claimed by the present invention.
[0017] An analysis of the existing data quality inspection and review design reveals the following shortcomings of the existing technology:
[0018] 1. Existing C / S architecture quality inspection and review tools generally complete all calculations in a single-process serial manner, without splitting tasks according to data layers or spatial features (such as grids, administrative regions, tiles, or quadtree partitioning). This results in the entire data package being processed sequentially in a single thread; CPU multi-core idleness, waste of I / O and memory bandwidth, and vector linear degradation when dealing with large data volume calculations. During peak periods, the only option is to "pile up machines and queue them up," which cannot be elastically parallelized, becoming the dual root cause of performance bottlenecks and resource waste.
[0019] 2. Most current quality inspection and review services operate on a hybrid "C / S+B / S" architecture, but in reality, geometric, topological, and rule calculations are still performed on the CS side. Flexibility and scalability are constrained by a single node. Data needs to be stored on the server before being loaded, resulting in significant network and disk bottlenecks. During peak periods, queuing is the only option, and horizontal scaling is not possible. Maintenance, upgrades, and cross-platform costs remain high.
[0020] 3. While current spatial big data analysis can accomplish tasks in quality inspection and review calculations, it still faces numerous constraints in practical applications. System compatibility is poor; it frequently freezes and crashes on Windows platforms, and deployment in Linux environments is complex, making ordinary office computers unsuitable and often requiring high-end graphics workstations or server clusters. The user experience is also unsatisfactory; data processing progress is difficult to predict, intermediate results are inconvenient to view, error messages are obscure, and troubleshooting often consumes a significant amount of time. System maintenance costs remain high; each upgrade may cause compatibility issues, data standard updates require repeated debugging and adaptation, and the training period for professionals is long, resulting in high human resource costs. The interactivity of data results is weak.
[0021] 4. Current quality inspection and review tools can only use a single computer for calculations and cannot intelligently allocate the computing power of other idle computers on the local area network. When frequently processing large-scale spatial data, this single-machine mode leads to slow computing speed and low efficiency, while a large number of idle computer resources in the office are wasted.
[0022] Based on the existing quality inspection and review technology system, by utilizing parallel computing on a single machine, distributed computing on idle machines within a local area network, and long-term connection to maintain communication, the computing architecture of data quality inspection and review can be optimized. This integrates the advantages of the BS side to the CS side tools, while solving problems such as efficiency, deployment difficulties, and rapid visualization in massive data computing.
[0023] Based on this, the present invention provides an optimization method for quality inspection and review of land and space master planning data, which mainly includes three parts:
[0024] This invention addresses the issue of abnormally slow or inability to calculate results for quality inspection and review of some massive data layers in frequently submitted national land spatial planning data. The main technical problems involved are data packet splitting and result merging based on business and spatial characteristics, parallel spatial data computing on a single machine, and distributed computing utilizing idle resources within a local area network.
[0025] 1. Data Packet Splitting and Result Merging: For the data processing needs of the overall land spatial planning, based on business characteristics and data features, data packet splitting strategies can be divided into two typical scenarios: The first type is suitable for scenarios with small single-layer data volumes but complex calculation rules. This type of splitting method is relatively standardized, mainly based on the number of small-data layers in the data packet and the type of calculation rules to be executed for each layer, decomposing the task into different calculation units. Each calculation unit corresponds to the rule set of a specific layer, achieving refined task allocation. The second type is suitable for scenarios with large single-layer data volumes and high computational complexity. This type of splitting needs to comprehensively consider business logic and spatial distribution characteristics, and can adopt three subdivision schemes: First, attribute-based splitting, dividing the data into different tasks and numbering them according to the unique values of one or more fields; second, spatial index-based splitting, using methods such as grid partitioning, adaptive quadtrees, R-trees, Hilbert R-trees, or GeoHash to achieve spatial partitioning and numbering based on geometric type and spatial distribution characteristics; third, a hybrid splitting strategy, first classifying according to business attributes, and then performing spatial partitioning and numbering within each category subset. This hierarchical splitting method can both meet business needs and optimize computational efficiency.
[0026] 2. Single-Machine Spatial Data Parallel Computation: In single-machine spatial data parallel computing, the program first divides the data into multiple logical units based on the split tasks. Each process independently handles the computation tasks of a specific layer. The program automatically detects the number of CPU cores and assigns a dedicated computation process to each layer. For example, a quad-core CPU can handle the computation of four different tasks simultaneously. Each process maintains its own data copy in memory and uses a message queue to achieve necessary data synchronization. Finally, the main process aggregates the computation results of each task. This partitioning-based parallel partitioning method maintains the logical integrity of the data while fully utilizing multi-core performance, making the execution speed of operations such as overlay analysis and buffer computation increase approximately linearly with the number of cores.
[0027] 3. Distributed Computing Utilizing Idle Resources within a Local Area Network (LAN): In a LAN environment, a client-server (CS) architecture is adopted to fully utilize the computing resources of each machine. Specifically, any machine with the software installed can act as a central scheduling system, responsible for managing and allocating the computing tasks required by data packets. After quality control and auditing programs are installed on each working machine, these programs report their CPU, memory, and other resource status to the machine that initiated the task when the task is started. When the data packet quality control machine receives a task to start computing, it will split the task and distribute it to suitable computers for processing based on the idle status of each client. Each machine participating in the computing will reserve 25% of its resources for office use. After all machines have completed their respective computing parts, they send the results back to the task initiator for aggregation and merging. This fully utilizes idle computers in the office without affecting their normal use, significantly improving the completion speed of large-scale data computing tasks.
[0028] The following is for reference. Figure 1 This paper describes the optimized method for quality inspection and review of land and space master planning data provided by the present invention. (See also...) Figure 1 and Figure 2 The method mainly includes the following steps:
[0029] Step 1: Obtain the data package of the overall land space planning data that needs to be inspected and reviewed. Divide each layer in the data package into multiple independent tasks to be inspected based on the data volume and the splitting strategy, and generate a task list. The splitting strategy is to split each layer according to the data business characteristics and data spatial distribution characteristics.
[0030] Understandably, starting with "data packet selection": first, the selected data packets are analyzed as a whole, and then, according to the established calculation rules and algorithms, each layer in the data packet is divided into several independent tasks based on the data volume and strategy, and uniformly numbered to generate a task list.
[0031] In one embodiment of the present invention, see Figure 3In step 1, the data of each layer in the data packet is split into multiple independent quality inspection tasks according to the data volume and splitting strategy, generating a task list, including:
[0032] Step 11: Extract the target vector layer set of the data packet, perform depth analysis on each target vector layer in the target vector layer set, and obtain the data volume information of each target vector layer.
[0033] The main steps to obtain the data volume information for each target vector layer are as follows:
[0034] Based on the structure definition of the data packet, extract all vector layers from the file database;
[0035] Based on standard database specifications, all target vector layers are selected from all vector layers;
[0036] A deep analysis is performed on each target vector layer to generate metadata containing geometry type, number of features, and number of feature nodes. The number of features and number of feature nodes in the metadata constitute the data volume information of the target vector layer.
[0037] First, the metadata of the data packets is obtained. Specifically, based on the data packet structure definition, all vector data layers are extracted from the file database, and the target vector layer set is filtered according to standard database specifications. Based on this target vector layer set, each layer undergoes in-depth analysis to generate a metadata set containing attributes such as geometry type, number of features, number of feature nodes, and layer boundaries (layer spatial information). Further, combining quality inspection and review rules with relevant layers, a metadata list of all quality inspection and review rules is compiled and generated. This metadata list includes all quality inspection and review items and the layers involved in each item, where each data entry in a layer corresponds to a quality inspection and review item.
[0038] Step 12: Based on the data volume information of any target vector layer, determine whether the target vector layer needs to be split.
[0039] Understandably, after obtaining the metadata of each target vector layer, the data volume of any target vector layer can be known based on the metadata. Based on the data volume information of any target vector layer, it can be determined whether the target vector layer needs to be split.
[0040] Specifically, the system iterates through the metadata list to retrieve each piece of metadata (corresponding to each target vector layer). Within each piece of metadata, it retrieves the configuration information for the quality inspection review items, as well as the number of features and nodes in the layer, to determine whether to add it to the task list or split it into subtasks. Minimum and maximum thresholds for the number of features and nodes are set in the system's global parameters.
[0041] The criteria for determining whether each target vector layer needs to be split are:
[0042] (1) If the number of features and the number of feature nodes of any target vector layer are both less than the corresponding minimum threshold, then the target vector layer does not need to be split.
[0043] (2) If the number of features and the number of feature nodes of any target vector layer are both greater than the corresponding maximum threshold, then the target vector layer needs to be split.
[0044] (3) For other cases, it is determined whether the target vector layer needs to be split based on the geometry type, number of features and number of feature nodes of the target vector layer.
[0045] The detailed judgment method and explanation are as follows:
[0046] Statistically calculate the number of features N, the number of feature nodes V, and the geometric type complexity coefficient G for any given target vector layer;
[0047] Configure the maximum number of features T_feature_max, the maximum number of feature nodes T_vertex_max, and the maximum geometric complexity G_max that the target vector layer can accommodate. Also configure the feature number weight W_feature, feature node weight W_vertex, and geometry type weight W_geometry, where W_feature + W_vertex + W_geometry = 1.
[0048] The number of features N, the number of feature nodes V, and the geometric type complexity coefficient G of any target vector layer are standardized respectively:
[0049] Norm_Feature = min(1.0, N / T_feature_max);
[0050] Norm_Vertex = min(1.0, V / T_vertex_max);
[0051] Norm_Geometry = G;
[0052] Where Norm_Feature is the number of standardized features, Norm_Vertex is the number of standardized feature nodes, and Norm_Geometry is the standardized geometry complexity coefficient G.
[0053] Calculate the segmentation score for any of the target vector layers:
[0054] Score = W_feature×Norm_Feature+W_vertex×Norm_Vertex+ W_geometry×Norm_Geometry
[0055] If the score is greater than or equal to the preset segmentation threshold S_threshold, then any target vector layer needs to be segmented; otherwise, any target vector layer does not need to be segmented.
[0056] Step 13: If splitting is not required, then any one of the target vector layers is treated as a quality inspection task.
[0057] Step 14: If splitting is required, the target vector layer is split into multiple quality inspection tasks based on the data service characteristics and data spatial distribution characteristics of any target vector layer.
[0058] Understandably, for a target vector layer that needs to be split, the splitting is performed based on its data business characteristics and data spatial distribution characteristics. There are three main splitting methods: the first method is to split the target vector layer based on its data business characteristics; the second method is to split the target vector layer based on its data spatial distribution characteristics; and the third method is to split any one of the target vector layers based on its data business characteristics, and then further split the target vector layer based on its data spatial distribution characteristics.
[0059] The first splitting method includes:
[0060] If any of the target vector layers contains business attribute features and spatial distribution features, the data is split based on the unique value in the attribute field of any of the target vector layers;
[0061] If any of the target vector layers does not contain business attribute features, the target vector layer is indirectly split based on spatial matching:
[0062] The standard layer is broken down into multiple independent spatial graphic elements corresponding to the unique values of the attribute fields, based on the unique values of the attribute fields.
[0063] Using multiple independent spatial graphics as the filtering range, perform topological operations on the spatial relationships of any target vector layer to filter out target layer data with unique values for each attribute field, and generate multiple tasks to be inspected.
[0064] Specifically, in the business scenario of layer data splitting, there are two core processing methods depending on whether the layer to be split has attribute information that can be directly used for splitting:
[0065] The first method is direct splitting based on attribute fields: When the layer to be split contains clear business attributes and spatial characteristics, its attribute information and spatial distribution patterns can be accurately grasped. In this case, data splitting can be performed directly based on the unique values in the layer's attribute fields, thereby generating a structured task list. For example, fields with unique identifiers, such as "administrative region code" or "administrative region name," can be extracted from the layer to split the entire layer data into independent datasets corresponding to individual lower-level administrative regions. This process can be quickly achieved by obtaining a list of unique values for splitting using SQL statements. An example statement is: SELECT DISTINCT(xzqdm) FROM table;. This statement can first extract all unique administrative region codes, and then use these as the basis to complete the data splitting.
[0066] The second method is indirect splitting based on spatial matching: when the layer to be split has no available attribute fields as a basis for splitting, it needs to be split through spatial association. The specific process is as follows: first, the standard administrative region layer is split into independent spatial graphic elements corresponding to individual administrative regions according to the unique value of "administrative region code" or "administrative region name"; then, using these independent administrative region spatial graphics as the filtering range, topological operations such as spatial intersection / containment are performed on the target splitting layer to filter out the target layer data within each administrative region, and finally, multiple quality inspection tasks are formed by administrative region division.
[0067] The second splitting method is detailed below:
[0068] Based on their geometric types, spatial data in layers can be categorized into point layers, line layers, and polygon layers. Points are the simplest geometric type with the lowest spatial computational complexity. Lines have medium complexity, involving length calculations, buffers, and topology checks. Polygons have the highest complexity, involving area calculations, spatial relationship determination (containment and intersection), and typically have the largest number of nodes.
[0069] Spatial data is split into three categories based on geometric type, and each category of layers uses a different splitting method.
[0070] Point data is split using an adaptive quadtree index. The core idea of adaptive quadtree splitting is: starting from a root node that covers all points (the unsplit point layer), recursively check the number of points in each node. If it exceeds a set threshold, the node is divided into four child nodes (southeast, northeast, southwest, and northwest). This check-split process is repeated for each child node until the number of points in all nodes is less than or equal to the threshold. Finally, adaptive sub-blocks of different sizes are obtained, and each sub-block corresponds to a quality inspection task.
[0071] Core concepts and prerequisite definitions:
[0072] Node: The basic unit of a quadtree. Each node contains: spatial range: [x_min, x_max, y_min, y_max] (rectangular boundary); the set of all points within the node: points; and a list of child nodes: children (containing 4 child nodes after splitting, or empty if not split).
[0073] Threshold: The maximum number of nodes allowed in a single node, denoted as T (set according to the amount of data and the granularity of splitting, for example, T=1000).
[0074] Termination condition: The number of points in a node, len(points) ≤ T, or the node has reached the minimum splitting granularity (optional, to avoid infinite splitting).
[0075] The complete steps of adaptive quadtree splitting include:
[0076] a. Initialize the root node;
[0077] b. Calculate the spatial boundary of all points in the root node: x_min = min(x coordinates of all points), x_max = max(x coordinates of all points), y_min = min(y coordinates of all points), y_max = max(y coordinates of all points).
[0078] c, the spatial range of the root node is [x_min, x_max, y_min, y_max], which includes all points.
[0079] d, Recursive checking and splitting of nodes: For the current node, count the number of its internal points N = len(points).
[0080] If N > T: split the current node into 4 equal-sized child nodes along the midpoint of the x-axis and the midpoint of the y-axis: Southwest child node (SW): [x_min, x_mid, y_min, y_mid], Northwest child node (NW): [x_min, x_mid, y_mid, y_max], Southeast child node (SE): [x_mid, x_max, y_min, y_mid], Northeast child node (NE): [x_mid, x_max, y_mid, y_max].
[0081] Iterate through all points of the current node and assign each point to its child nodes (determine whether point (x, y) is within the space of the child nodes).
[0082] For each child node, repeat the recursive operation of "number of checkpoints → split (if necessary)".
[0083] If N≤T: This node does not need to be split and is used as the final sub-block.
[0084] e, collect the final block:
[0085] After the recursion ends, all unsplit leaf nodes are the split sub-blocks. The number of points in each block is less than or equal to the threshold. Each sub-block is a task to be inspected.
[0086] Line data is segmented using the STR (Sort-Tile-Recursive) tree algorithm. STR trees are spatial index structures whose core principle is to recursively sort, divide, and recursively partition the spatial range, ultimately ensuring that the number of line features within each node does not exceed a set threshold. For line layer segmentation, the overall approach is: first, determine the overall spatial range of all line features; then, sort and divide the space alternately by dimension, checking if the number of lines within each node exceeds the threshold. If it does, recursively segment until all child nodes meet the threshold requirement.
[0087] First, preprocess the line layer:
[0088] First, iterate through all line features in the line layer to obtain two core pieces of information:
[0089] Spatial extent: Calculate the minimum bounding rectangle (MBR) of all line features, denoted as MBR_total = [x_min, y_min, x_max, y_max], where x_min / x_max are the minimum / maximum values of the x-coordinates of all line endpoints, and y_min / y_max are the minimum / maximum values of the y-coordinates;
[0090] Number threshold: Set the maximum number of lines allowed in a single node K (for example, K=20000, that is, the number of lines in each sub-block does not exceed 20000).
[0091] The core segmentation logic of an STR tree is as follows:
[0092] Sort: For all line features within the current node to be segmented, first sort them in ascending order by the core coordinates along the x-axis (usually the x-center coordinates of the line feature MBR, x_centroid = (x1 + x2) / 2, where x1 / x2 are the left and right boundaries of a single line MBR); if the threshold is still not met after x-axis segmentation, then sort them by the core coordinates along the y-axis (the y-center coordinates of the line feature MBR, y_centroid = (y1 + y2) / 2), where x1 / x2 are the left and right boundaries of a single line MBR, and so on alternately.
[0093] Tiles: Calculate the number of tiles m based on the quantity threshold K: m = ceil(N / K), where N is the total number of line features in the current node, and ceil() is the floor function (e.g., when N=25000 and K=10000, m=3); Divide the line features into m groups according to the sorted order, and divide the current node's MBR into m sub-MBRs according to the corresponding dimensions (x / y), with each sub-group corresponding to a sub-MBR (i.e., a tile).
[0094] Recursive: For each sub-block, check if the number of its internal features exceeds the threshold K. If it does not exceed the threshold, the sub-block is the final segmentation result. If it does exceed the threshold, switch the dimension (e.g., use the x-axis this time and the y-axis next time) and repeat the "sort-block" steps until all sub-blocks meet the threshold requirements.
[0095] Special case handling: If the MBR of a single line element spans multiple sub-blocks: assign the line element to all covered sub-blocks simultaneously (or assign it to one of the sub-blocks according to the centroid coordinates of the line, depending on the service); if a sub-block contains wireless elements after recursive segmentation: discard the empty block directly.
[0096] The polygon data is split using an R* tree index or an adaptive quadtree method. The segmentation method of the adaptive quadtree is the same as that of the point layer, and will not be repeated here.
[0097] The following explains the R* tree index splitting method:
[0098] R* tree (R-Star Tree) is a high-performance spatial indexing algorithm, an optimized version of the classic R tree. It is designed to solve the problems of indexing, partitioning, and querying efficiency of massive spatial data. Its core advantage lies in significantly reducing the spatial overlap between index nodes and the area of the MBR (Minimum Bounding Rectangle) by optimizing the node splitting strategy, thereby improving the efficiency of spatial queries (such as range queries and neighborhood queries) and data partitioning.
[0099] The key parameters are defined as follows:
[0100] Polygon Feature: A single spatial polygon in a massive polygon layer, denoted as f, whose minimum bounding rectangle MBR(f) = (x_min, y_min, x_max, y_max), where x_min, y_min, x_max, and y_max are the four vertices of the polygon feature (rectangle), respectively.
[0101] ;
[0102] ;
[0103] Node thresholds: Maximum number of features M that a leaf node can carry (customizable, such as 10000 / 20000), minimum fill factor h=M / 2 (ensuring that the node is not less than half filled).
[0104] Segmentation objective: To split the massive polygon layer into several data blocks, each block corresponding to a leaf node in an R* tree, with the number of features within the block ≤ M, and optimal spatial clustering (minimum overlap).
[0105] The core implementation steps of the R* tree index splitting method include:
[0106] (1) Data preprocessing:
[0107] Filter out invalid features (empty geometry and other invalid data) from a large number of polygon layers.
[0108] Calculate the MBR for each valid polygon feature to form a dataset F={f1,f2,...,fn}, where fn represents the MBR of the nth valid polygon feature.
[0109] (2) Initialize the R* tree and threshold:
[0110] Initialize an empty R* tree and configure the core parameters: maximum number of features M in leaf nodes and minimum fill factor h. Determine the basic structure of the tree (leaf nodes store polygon features + MBR, and non-leaf nodes store child node MBR + pointers).
[0111] Feature insertion and node splitting (core splitting logic): The R* tree adopts an "insert first, split later" strategy. When the number of features in a node exceeds M, a split is triggered to ensure optimal node space after splitting.
[0112] (3) Feature insertion:
[0113] Traverse F and insert each face feature into the leaf node with the smallest MBR expansion after insertion.
[0114] (4) Pre-splitting optimization (forced re-insertion):
[0115] If the number of node features exceeds M, first re-insert some features within the node into other nodes to reduce the number of splits.
[0116] Node splitting: If the threshold is still exceeded after re-insertion, perform a two-step optimal splitting process:
[0117] Step 1: Dimension selection: Traverse the x / y axes and calculate the "total area increment of the MBR between the two nodes after splitting" and "overlapping area" under each dimension. Select the dimension with the smallest increment and the least overlap as the splitting axis.
[0118] Among them, the formula for total area increment is: ΔArea=Area(MBR(S1))+Area(MBR(S2))−Area(MBR(S)) (S is the original node feature set, S1 / S2 is the partitioned subset); the formula for overlapping area is:Overlap=Area(MBR(S1)∩MBR(S2)).
[0119] The second step is to select the split point: Sort the features by coordinates on the optimal dimension, traverse the split points that satisfy m ≤|S1|≤Mm, select the point with the smallest increase in total area, and split the feature into two new nodes.
[0120] (5) Recursive update: If the parent node also exceeds the threshold due to the addition of a child node, repeat the above splitting logic until the whole tree is stable.
[0121] (6) Data block output: After the R* tree is constructed, each leaf node is an independent data block: traverse all leaf nodes and extract the polygon features within the nodes. Output the nodes as independent polygon data blocks, complete the layer splitting, and generate multiple tasks to be inspected.
[0122] Step 15: Merge all tasks awaiting quality inspection to generate a global task list.
[0123] Step 2: Perform parallel quality inspection and review calculations on multiple tasks to be inspected after being split up, based on a single-machine parallel computing mechanism and / or a local area network parallel computing mechanism, and generate the quality inspection and review calculation results for each task.
[0124] Understandably, the global task queue includes multiple tasks awaiting quality inspection. For quality inspection and review calculations of small-to-medium granularity tasks, a single-machine parallel computing mode can be selected. For large-scale tasks awaiting quality inspection, a local area network parallel computing mode can be selected. Alternatively, a combination of single-machine parallel computing mode and local area network parallel computing mode can be used to execute the quality inspection and review of all tasks awaiting quality inspection.
[0125] For quality inspection tasks that choose single-machine parallel computing, the parallel quality inspection and review calculations for multiple quality inspection tasks based on the single-machine parallel computing mechanism mainly include the following steps:
[0126] a', The main process detects the number of available CPU cores on a single machine and determines the number of worker processes based on the number of available CPU cores;
[0127] b', based on the number of tasks to be inspected and the number of work processes, as well as the computing performance of each work process, the data size and computing complexity of each task to be inspected, initially allocate all tasks to be inspected to all work processes.
[0128] c', during the execution of the quality inspection task by the worker process, calculate the polling weight of each worker process based on the load status of each worker process;
[0129] d', migrates some of the quality inspection tasks on the process with a polling weight less than the preset threshold to the process with a polling weight greater than the preset threshold;
[0130] e', repeatedly execute c' and d' until all tasks pending quality inspection have been calculated and completed;
[0131] See Figure 4 This is a flowchart illustrating a single-machine parallel computing mode. The multi-process parallel computing process for the quality inspection task on a single machine is mainly designed for situations where the data volume of the submitted data packets is relatively small or where there are limited single-machine resources. Compared to traditional serial quality inspection software, even when using single-machine parallel computing, there is a significant improvement in efficiency.
[0132] First, the main process starts to detect the resource environment of the single machine, detects the number of available CPU cores Ctotal, and determines the number of worker processes Nworker=max(1,Ctotal−Creserve) based on the number of available CPU cores Ctotal, where Creserve is the number of system reserved cores (usually set to 1).
[0133] Based on the number of tasks to be inspected and the number of work processes, as well as the computing performance of each work process, the data size and computational complexity of each task to be inspected, all tasks to be inspected are initially allocated, and each work process is allocated one or more tasks to be inspected.
[0134] During the parallel quality inspection and review of all pending quality inspection tasks across all work processes, the pending quality inspection tasks on each work process will be dynamically migrated based on the computation and execution status of each work process, so as to complete the quality inspection and review of all pending quality inspection tasks as quickly as possible.
[0135] Specifically, monitor the load status of each worker process in real time: L i (t)= Q i (t) / P max , where Q i (t) represents the length of the task queue for process i at time t, P max This represents the maximum processing capacity.
[0136] Calculate the polling weight for each worker process based on its load status:
[0137] ;
[0138] Among them, W i Let P be the polling weight of process i. i The historical performance score for process i. P is a smoothing factor (to prevent division by zero). j This represents the historical performance score for process j.
[0139] Each time, some of the tasks awaiting quality inspection on the work process with a polling weight less than the preset threshold are migrated to the work process with a polling weight greater than the preset threshold. During the calculation of the tasks awaiting quality inspection, the migration of tasks is continuously carried out until all tasks awaiting quality inspection have been completed.
[0140] Specifically, a computation buffer is allocated to each worker process:
[0141] ;
[0142] Where k is the safety factor (taken as 2-4), M max M represents the upper limit of the algorithm's memory requirements, and γ is the data inflation factor (typically 1.2-1.5). available N represents the system's available memory. worker D represents the number of working processes. total N represents the total amount of data in the workflow. chunk Assign a number of tasks to the process.
[0143] For tasks that select local area network parallel computing, perform parallel quality inspection and review calculations on multiple tasks based on the local area network parallel computing mechanism:
[0144] "a" scans the computing nodes in the local area network and filters out available computing nodes based on the latency and resource score of each computing node;
[0145] "b" allocates a corresponding number of quality inspection tasks to each computing node based on the computing power of each available computing node and the data volume and computational complexity of each quality inspection task in the global task queue.
[0146] c” If there are still unassigned tasks awaiting quality inspection in the global task queue, then during the execution of the available computing nodes, the priority dynamic weight of each available computing node is calculated based on the resource score of each available node.
[0147] "d" assigns the unassigned portion or all of the pending quality inspection tasks to the available computing node with the highest priority dynamic weight;
[0148] "e", repeat "c" and "d" until all pending quality inspection tasks in the global task queue have been calculated.
[0149] See Figure 5Distributed parallel computing, utilizing idle resources in a local area network (LAN) environment, is primarily used in situations where hardware resources are relatively abundant but equipment utilization is low. With the continuous improvement of modern computer hardware performance, hardware resources in daily office scenarios often struggle to operate at full capacity, leaving most computing resources idle for extended periods. By constructing a distributed computing system, idle computing power across nodes can be intelligently allocated while ensuring that office tasks prioritize the use of necessary resources. This resource utilization model not only significantly improves the return on hardware investment but also provides additional computing power support for existing programs. In practice, establishing a dynamic resource allocation mechanism ensures both the responsiveness of office applications and full utilization of idle computing resources.
[0150] First, scan all computing nodes in the local area network and monitor the latency (Timeout) of each computing node. i :
[0151] Timeout i =2×AvgNetworkLatency+Jitter i;
[0152] AvgNetworkLatency refers to the average round-trip latency (in milliseconds) of the local area network, measured by historical PING. i This refers to the random jitter of the i-th computing node.
[0153] Random jitter (0~50ms) to avoid broadcast storms.
[0154] If the latency of a compute node is too high, the compute node becomes unavailable, meaning that subsequent parametric tasks cannot be computed.
[0155] Each computing node periodically (e.g., every 5 seconds) reports its own resource status, which mainly includes CPU utilization (number of idle cores, clock speed), available memory (MB / GB), and network bandwidth (Mbps).
[0156] Calculate the resource score for each compute node based on its resource status:
[0157] ;
[0158] Among them, FreeCPU i This represents the number of idle CPU cores in node i (e.g., 2 idle cores out of 4 cores), MaxCPU is the total number of CPU cores in node i (a fixed value), and FreeMem... i Available memory (unit: GB), MaxMem is the total memory of the node (fixed value), Bandwidth iThe measured bandwidth is (in Mbps), MaxBandwidth is the theoretical maximum bandwidth of the local area network (e.g., 1Gbps), and w1, w2, and w3 are weighting coefficients that satisfy w1+w2+w3=1.
[0159] Each compute node is determined to be usable based on its resource score, only if the score is [score missing]. i If the value is greater than or equal to a preset threshold (e.g., 0.6), then the computing node is a usable computing node, and only usable computing nodes will be used for subsequent quality inspection and review of the quality inspection tasks.
[0160] Based on the computing power of each available computing node and the data volume and computational complexity of each task to be inspected in the global task queue, a corresponding number of tasks to be inspected are allocated to each computing node.
[0161] During the process of assigning quality inspection tasks to each available computing node, if there are still unassigned quality inspection tasks in the global task queue, the dynamic priority weight of each available computing node is calculated. The formula for calculating the dynamic priority weight is as follows:
[0162] ;
[0163] in, Let be the dynamic weight of the priority of the i-th available computing node. The historical reliability of the compute nodes (0.0~1.0) is initially set to 1.0, and decays by a factor of 0.9 when a task fails, so that tasks are preferentially assigned to stable nodes.
[0164] Then, the unassigned part or all of the pending quality inspection tasks are prioritized and assigned to the available computing nodes with the highest priority dynamic weight. Through continuous dynamic task allocation, until all pending quality inspection tasks in the global task queue are allocated and calculated, the quality inspection and review calculation results for each pending quality inspection task are generated.
[0165] Step 3: Gather the quality inspection and review calculation results of all tasks pending quality inspection and generate a quality inspection and review report of the overall land space planning data.
[0166] Understandably, after performing quality inspection and review calculations on all the decomposed tasks to be inspected, the quality inspection and review calculation results for all tasks to be inspected are obtained. Subsequently, taking the target vector map layer as a unit, the quality inspection and review calculation results of multiple tasks to be inspected for the same target vector map layer are aggregated to generate a quality inspection and review report for each target vector map layer, and thus generate a quality inspection and review report for the entire national land space master plan data.
[0167] This invention provides an optimization method for quality inspection and review of land and space master planning data. It proposes an architecture combining data splitting and serverless parallel computing. Through intelligent task decomposition technology, based on business rules and dataset characteristics, it employs an adaptive splitting algorithm (including layer-level splitting at the aggregation package level and spatial splitting at the element level within layers) to dynamically generate an optimal list of computational tasks. Simultaneously, a hybrid computing mode is introduced, where a decision engine automatically evaluates task granularity and intelligently selects execution strategies. For small-to-medium granularity tasks, single-machine multi-process parallel computing is used, while for large-scale tasks, a serverless distributed computing mechanism dynamically schedules idle computing nodes within the local area network. Furthermore, a resource optimization mechanism achieves computational resource awareness and load balancing, maintaining specific resource utilization while exponentially increasing overall quality inspection and review efficiency. This solution effectively solves the pain points of "full recalculation" and frequent calculations in traditional quality inspection models. While ensuring the accuracy of results, it significantly improves the throughput and efficiency of quality inspection and review of large-scale spatial data, making it particularly suitable for situations involving frequent modifications and aggregations of land and space planning data.
[0168] It should be noted that the descriptions of each embodiment in the above embodiments have different focuses. For parts that are not described in detail in a certain embodiment, please refer to the relevant descriptions in other embodiments.
[0169] Those skilled in the art will understand that embodiments of the present invention can be provided as methods, systems, or computer program products. Therefore, the present invention can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present invention can take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0170] This invention is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart illustrations. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0171] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0172] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0173] Although preferred embodiments of the invention have been described, those skilled in the art, upon learning the basic inventive concept, can make other changes and modifications to these embodiments. Therefore, the appended claims are intended to be interpreted as including both the preferred embodiments and all changes and modifications falling within the scope of the invention.
[0174] Obviously, those skilled in the art can make various modifications and variations to this invention without departing from its spirit and scope. Therefore, if these modifications and variations fall within the scope of the claims of this invention and their equivalents, this invention also intends to include these modifications and variations.
Claims
1. An optimization method for quality inspection and review of land and space master planning data, characterized in that, include: Obtain the data package of the overall land space planning data that needs to be inspected and reviewed, and divide each layer in the data package into multiple independent tasks to be inspected according to the data volume and splitting strategy, and generate a task list. The splitting strategy is to split each layer according to the data business characteristics and data spatial distribution characteristics. The quality inspection and review calculations for multiple tasks to be inspected after being split are performed in parallel based on a single-machine parallel computing mechanism and / or a local area network parallel computing mechanism, generating the quality inspection and review calculation results for each task to be inspected. The system aggregates the quality inspection and review calculation results of all tasks awaiting quality inspection and generates a quality inspection and review report for the overall land and space planning data.
2. The method for optimizing the quality inspection and review of land and space master planning data according to claim 1, characterized in that, The process involves splitting each layer in the data packet into multiple independent quality inspection tasks based on data volume and splitting strategy, generating a task list, including: Extract the target vector layer set of the data packet, perform depth analysis on each target vector layer in the target vector layer set, and obtain the data volume information of each target vector layer; Based on the data volume information of any target vector layer, determine whether the target vector layer needs to be split. If splitting is not required, then any one of the target vector layers will be treated as a quality inspection task. If splitting is required, the target vector layer is split into multiple quality inspection tasks based on the data service characteristics and data spatial distribution characteristics of any target vector layer. Merge all pending quality inspection tasks to generate a global task queue.
3. The method for optimizing the quality inspection and review of land and space master planning data according to claim 2, characterized in that, Extract the target vector layer set of the data packet, perform depth analysis on each target vector layer in the target vector layer set, and obtain the data volume information of each target vector layer, including: Based on the structure definition of the data packet, extract all vector graphics layers from the file database; Based on standard database specifications, all target vector layers are selected from all vector layers; Each target vector layer is subjected to in-depth analysis to generate meta-information containing geometry type, number of features, and number of feature nodes. The number of features and number of feature nodes in the meta-information constitute the data volume information of the target vector layer. The step of determining whether a target vector layer needs to be split based on the data volume information of any target vector layer includes: If the number of features and the number of feature nodes in any target vector layer are both less than the corresponding minimum threshold, then the target vector layer does not need to be split. If the number of features and the number of feature nodes in any target vector layer are both greater than the corresponding maximum threshold, then the target vector layer needs to be split. In other cases, it is determined whether the target vector layer needs to be split based on the geometry type, number of features, and number of feature nodes of the target vector layer.
4. The method for optimizing the quality inspection and review of land and space master planning data according to claim 3, characterized in that, For other cases, the determination of whether a target vector layer needs to be split is based on its geometry type, number of features, and number of feature nodes, including: Statistically calculate the number of features N, the number of feature nodes V, and the geometric type complexity coefficient G for any given target vector layer; Configure the maximum number of features T_feature_max, the maximum number of feature nodes T_vertex_max, and the maximum geometric complexity G_max that the target vector layer can accommodate. Also configure the feature number weight W_feature, feature node weight W_vertex, and geometry type weight W_geometry, where W_feature + W_vertex + W_geometry = 1. The number of features N, the number of feature nodes V, and the geometric type complexity coefficient G of any target vector layer are standardized respectively: Norm_Feature = min(1.0, N / T_feature_max); Norm_Vertex = min(1.0, V / T_vertex_max); Norm_Geometry = G; Where Norm_Feature is the number of standardized features, Norm_Vertex is the number of standardized feature nodes, and Norm_Geometry is the standardized geometry complexity coefficient G. Calculate the segmentation score for any of the target vector layers: Score = W_feature×Norm_Feature+W_vertex×Norm_Vertex+ W_geometry×Norm_Geometry; If the score is greater than or equal to the preset segmentation threshold S_threshold, then any target vector layer needs to be segmented; otherwise, any target vector layer does not need to be segmented.
5. The method for optimizing the quality inspection and review of land and space master planning data according to claim 2, characterized in that, If splitting is required, based on the data service characteristics and data spatial distribution characteristics of any target vector layer, the target vector layer is split into multiple tasks, including: Based on the data service characteristics of any one of the target vector layers, the data of any one of the target vector layers is split. Alternatively, based on the data spatial distribution characteristics of any one of the target vector layers, the data of any one of the target vector layers can be split. Alternatively, based on the data service characteristics of any one of the target vector layers, the data of any one of the target vector layers can be split, and then based on the data spatial distribution characteristics of any one of the target vector layers, the data of any one of the target vector layers can be split again.
6. The method for quality inspection and optimization of land and space master planning data according to claim 5, characterized in that, Based on the data service characteristics of any one of the target vector layers, data splitting is performed on any one of the target vector layers, including: If any of the target vector layers contains business attribute features and spatial distribution features, the data is split based on the unique value in the attribute field of any target vector layer to generate multiple split tasks to be inspected. If any of the target vector layers does not contain business attribute features, the target vector layer is indirectly split based on spatial matching: The standard layer is broken down into multiple independent spatial graphic elements corresponding to the unique values of the attribute fields, based on the unique values of the attribute fields. Using multiple independent spatial graphics as the filtering range, perform topological operations on the spatial relationships of any target vector layer to filter out target layer data with unique values for each attribute field. Each target layer data with unique values for each attribute field is a task to be inspected.
7. The method for optimizing the quality inspection and review of land and space master planning data according to claim 5, characterized in that, Based on the data spatial distribution characteristics of any one of the target vector layers, data splitting is performed on any one of the target vector layers, including: Each target vector layer is classified into point layers, line layers, and polygon layers according to its geometric type. The point layer splitting method based on the adaptive quadtree indexing method includes: Starting with the unsplit point layer as the root node, recursively check the number of point features in each node. If the number of point features exceeds the set threshold, the node is divided into 4 child nodes. The splitting process is repeated for each child node until the number of point features in all child nodes is less than or equal to the set threshold. All leaf nodes are the split sub-blocks. One sub-block corresponds to one quality inspection task. The layer segmentation based on the STR tree segmentation algorithm includes: a) For all line features within the current node to be segmented, sort them in ascending order according to the core coordinates of the x-axis dimension of each line feature. The core coordinates refer to the center coordinates of the line features. b. Calculate the segmentation score m=ceil(N / K) based on the quantity threshold K, where N is the total number of line features in the current node, and ceil() is the rounding function. c. Sort all line features into m subgroups according to the core coordinates of the x-axis dimension. At the same time, divide the minimum bounding moment (MBR) of the current node to be segmented into m sub-MBRs according to the corresponding x-axis dimension. Each subgroup corresponds to a sub-MBR, that is, a child node. d. For each child node, check whether the number of its internal line elements exceeds the number threshold K. If it does not exceed the threshold K, the child node is the final segmentation result. If it exceeds the threshold K, switch to the y-axis dimension, sort all the line elements of the child node in ascending order according to the core coordinate of the y-axis dimension of each line element, and calculate the segmentation score m=ceil(N / K) according to the number threshold K, where N represents the total number of all line elements in the child node. e. Sort all line features into m subgroups according to the core coordinates of the y-axis dimension. At the same time, divide the minimum bounding moment (MBR) of the current node to be segmented into m sub-MBRs according to the corresponding y-axis dimension. Each subgroup corresponds to a sub-MBR, that is, a child node. f, for each child node, check whether the number of its internal line features exceeds the quantity threshold K. If it does not exceed the threshold K, the child node is the final segmentation result; if it does exceed the threshold K, return a, until the number of line features in all child nodes does not exceed the quantity threshold K. Each leaf node corresponds to a quality inspection task. Among them, based on R* trees, the facet layer is split using an insertion-then-split strategy: Calculate the MBR for each valid polygon feature to form a set F of polygon features to be processed; Initialize an empty R* tree, configure the core parameters: maximum number of features M in the leaf nodes and minimum fill factor h, and determine the basic structure of the tree; Iterate through the set of face features F to be processed, and insert each face feature into the leaf node that minimizes the MBR expansion after insertion; If the number of polygon features in the inserted leaf node exceeds M, then some of the polygon features in the leaf node should be re-inserted into other nodes first. If the number of face features in the leaf node still exceeds M after re-insertion, calculate the "total MBR area increment of the two nodes after splitting" and "overlapping area" in the x-axis and y-axis dimensions respectively, and select the dimension with the smallest increment and the smallest overlapping area as the splitting axis. Sort all face features within the leaf node by coordinates along the dividing axis, traverse the dividing points that satisfy m ≤ |S1|≤ Mm, select the dividing point with the smallest total area increment, and split all face features within the leaf node into two new leaf nodes S1 and S2, where |S1| refers to the number of face features within the leaf node S1 after the split. If the number of face features in the split leaf node S2 also exceeds M, then the leaf node S2 is split again until the number of face features in all leaf nodes does not exceed M. Each leaf node corresponds to a task to be inspected.
8. The method for optimizing the quality inspection and review of land and space master planning data according to claim 1, characterized in that, The parallel quality inspection and review calculations for the multiple tasks after being split, based on a single-machine parallel computing mechanism and / or a local area network parallel computing mechanism, generate the quality inspection and review calculation results for each task, including: For quality inspection tasks that are selected for single-machine parallel computing, the quality inspection and review calculations for multiple quality inspection tasks are performed in parallel based on the single-machine parallel computing mechanism: a', The main process detects the number of available CPU cores on a single machine and determines the number of worker processes based on the number of available CPU cores; b', based on the number of tasks to be inspected and the number of work processes, as well as the computing performance of each work process, the data size and computing complexity of each task to be inspected, initially allocate all tasks to be inspected to all work processes. c', during the execution of the quality inspection task by the worker process, calculate the polling weight of each worker process based on the load status of each worker process; d', migrates some of the quality inspection tasks on the process with a polling weight less than the preset threshold to the process with a polling weight greater than the preset threshold; e', repeatedly execute c' and d' until all tasks pending quality inspection have been calculated and completed; For tasks that select local area network parallel computing, perform parallel quality inspection and review calculations on multiple tasks based on the local area network parallel computing mechanism: "a" scans the computing nodes in the local area network and filters out available computing nodes based on the latency and resource score of each computing node; "b" allocates a corresponding number of quality inspection tasks to each computing node based on the computing power of each available computing node and the data volume and computational complexity of each quality inspection task in the global task queue. c” If there are still unassigned tasks awaiting quality inspection in the global task queue, then during the execution of the available computing nodes, the priority dynamic weight of each available computing node is calculated based on the resource score of each available node. "d" assigns the unassigned portion or all of the pending quality inspection tasks to the available computing node with the highest priority dynamic weight; "e", repeat "c" and "d" until all pending quality inspection tasks in the global task queue have been calculated.
9. The method for optimizing the quality inspection and review of land and space master planning data according to claim 1, characterized in that, The aggregated quality inspection and review calculation results from multiple tasks include: Taking the target vector layer as a unit, the quality inspection and review calculation results of multiple quality inspection tasks for the same target vector layer are aggregated together to generate a quality inspection and review report for each target vector layer.
Citation Information
Patent Citations
Method for constructing calculation intensity cube of spatial calculation domain
CN106951325A
Massive building pattern spot feature rapid calculation method and system
CN110874271A
Multi-source heterogeneous space big data segmentation method based on Kafka message middleware
CN118113799A
GIS-based city planning data automatic checking method and system, and medium
CN121144435A
Spatial indexing for distributed storage using local indexes
US20170337229A1