A multi-dimensional construction data storage system and method
By extracting and encoding multidimensional feature values from construction data, and using a dimension-aware hash algorithm to generate logical storage coordinates and a multidimensional inverted index, the problems of rigid data models and low query efficiency in construction data storage are solved, achieving efficient data organization and fast retrieval.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- YUNNAN AGRICULTURAL UNIVERSITY
- Filing Date
- 2026-04-16
- Publication Date
- 2026-07-21
AI Technical Summary
Existing construction data storage methods are difficult to adapt flexibly to the dynamic changes in multidimensional data relationships during construction, resulting in rigid data models. Logically related data are scattered in physical storage, increasing disk seek time and failing to effectively express the complex relationships between spatiotemporal object types.
By extracting the original feature values of the four dimensions of time, space, object and type of construction data units, normalizing and encoding them, calculating the time resolution factor, spatial resolution factor and encoding similarity factor, using the dimension-aware hash algorithm to generate logical storage coordinates, and building a multi-dimensional inverted index, efficient data organization and fast retrieval are achieved.
The data layout was optimized, storage efficiency and query performance were improved, the problems of data silos and low query efficiency were solved, and efficient storage and scalability of construction data were achieved.
Smart Images

Figure CN122018825B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of data storage technology, and in particular to a multi-dimensional construction data storage system and method. Background Technology
[0002] In the field of contemporary construction engineering management, with the widespread application of smart construction site technologies, building information models (BIM), and IoT devices, massive amounts of multi-source, heterogeneous construction data are continuously generated throughout the entire lifecycle of engineering projects. This data requires effective storage. Traditional construction data storage methods primarily rely on relational databases or file systems for data organization. These methods have significant limitations when handling multi-dimensional relational data. Relational databases depend on predefined table structures, making it difficult to flexibly adapt to the dynamically changing multi-dimensional data relationships during construction. This leads to rigid data models that cannot effectively express the complex relationships between time series, spatial distribution, object hierarchy, and type classification. Furthermore, existing storage technologies typically organize data using a single dimension, such as time order, ignoring the inherent multi-dimensional relational characteristics of construction data. This results in logically closely related data being scattered across physical storage, increasing disk seek time. Existing technologies have not yet completely solved the problem of the inherent relational nature of multi-dimensional data, particularly when dealing with the dynamic relationships between spatiotemporal object types unique to construction. Therefore, the construction engineering field urgently needs an innovative storage method that can deeply understand the multi-dimensional nature of construction data, intelligently integrate different dimensional features, and dynamically optimize data layout, thereby comprehensively improving the overall efficiency of construction data storage, retrieval, and analysis.
[0003] Therefore, it is necessary to provide a multi-dimensional construction data storage system and method to solve the above-mentioned technical problems. Summary of the Invention
[0004] To address the aforementioned technical problems, this invention provides a multi-dimensional construction data storage system and method, achieving the beneficial effect of efficient and intelligent storage of multi-dimensional construction data. This invention provides a multi-dimensional construction data storage method, including: S1: Extract the original feature values of the four dimensions of time, space, object and type of each construction data unit to be stored, and perform normalization encoding to generate time dimension code, space dimension code, object dimension code and type dimension code respectively; S2: Calculate the time resolution factor based on the time dimension code, calculate the space resolution factor based on the space dimension code, and calculate the encoding similarity factor based on the object dimension code and the type dimension code; S3: Combine the time dimension code, space dimension code, object dimension code, and type dimension code into a multidimensional feature identifier corresponding to each construction data unit to be stored; S4: Based on multidimensional feature identifiers and combined with time resolution factor, spatial resolution factor and coding similarity factor, the logical storage coordinates of each construction data unit to be stored are calculated by dimension-aware hashing algorithm; S5: Based on the order of logical storage coordinates, each construction data unit to be stored and its corresponding logical storage coordinates are combined into an ordered structure of memory data items and inserted into memory. S6: When the total amount of data accumulated in all memory data items in the ordered structure in memory reaches the preset flush threshold, all memory data items are converted into ordered data blocks in batches according to the logical storage coordinates, flushed to the disk storage layer, and the physical storage address is recorded.
[0005] Preferably, in step S1, the original feature value is extracted from the metadata of the construction data unit, wherein the metadata is standardized descriptive information pre-associated with the construction data unit, including creation time, spatial location, construction object identifier, and data type identifier.
[0006] Preferably, in step S1, the normalization encoding process includes: Using a pre-defined encoding conversion table, the original feature values of the four dimensions are mapped to standardized codes in a fixed format.
[0007] Preferably, in step S2, the calculation of the time resolution factor includes: The number of complete time units contained in the time dimension code is determined by matching the format of the time dimension code using regular expressions, which serves as the encoding granularity. Divide the encoding granularity by the preset maximum number of time units and normalize it to a time resolution factor with a value between 0 and 1.
[0008] Preferably, in step S2, the calculation of the spatial resolution factor includes: Count the number of times the predefined separator appears in the spatial dimension code, and add 1 to this count to obtain the level depth of the spatial dimension code; Divide the level depth by the preset maximum level depth value and normalize it to a spatial resolution factor with a value between 0 and 1.
[0009] Preferably, in step S2, the calculation step of the encoding similarity factor includes: Extract the structural feature vectors of the object dimension code and the type dimension code respectively; Calculate the similarity between two structural feature vectors and normalize it to an encoding similarity factor with a value between 0 and 1.
[0010] Preferably, in step S4, the calculation of logical storage coordinates includes: Based on the numerical relationship between the temporal resolution factor and the spatial resolution factor, the splicing order is determined by concatenating the spatial dimension code and the temporal dimension code in the multidimensional feature identifier to generate a spatiotemporal joint code. Then, a hash operation is performed on the spatiotemporal joint code to obtain the initial hash value. Based on the numerical value of the encoding similarity factor, the preset threshold range, and the predefined combination strategy, the object dimension code and the type dimension code in the multidimensional feature identifier are concatenated to generate a combined string, and the combined string is calculated by a checksum algorithm to obtain the combined checksum. The initial hash value is combined with the combined checksum by bitwise operations to generate an intermediate hash value; Calculate the weighted sum of the temporal resolution factor, spatial resolution factor, and coding similarity factor, determine the shift parameter based on the weighted sum, and perform a shift transformation on the intermediate hash value based on the shift parameter to obtain the final hash value; The final hash value is input into the address mapping function to calculate the logical storage coordinates.
[0011] Preferably, the displacement parameter is the number of bits for a cyclic left shift. The number of bits for a cyclic left shift is obtained by calculating the integer part of the weighted sum and taking the modulo of the integer part with the bit width of the intermediate hash value.
[0012] Preferably, step S6 further includes a multidimensional index construction step, including: After the ordered data blocks are written to the disk storage layer, a multidimensional inverted index is built. The multidimensional inverted index includes four independent inverted index tables: time dimension inverted index table, space dimension inverted index table, object dimension inverted index table, and type dimension inverted index table. Each inverted index table maps a specific dimension encoding value to a list of physical storage addresses for all ordered data blocks containing that encoding value.
[0013] This invention provides a multi-dimensional construction data storage system, comprising: The feature extraction and encoding module is used to extract the original feature values of the four dimensions of time, space, object and type of each construction data unit to be stored, and perform normalization encoding to generate time dimension code, space dimension code, object dimension code and type dimension code respectively. The resolution factor calculation module is used to calculate the time resolution factor based on the time dimension code, the spatial resolution factor based on the spatial dimension code, and the encoding similarity factor based on the object dimension code and the type dimension code. The feature identifier generation module is used to combine the time dimension code, space dimension code, object dimension code, and type dimension code into a multi-dimensional feature identifier corresponding to each construction data unit to be stored. The logical storage coordinate calculation module is used to calculate the logical storage coordinates of each construction data unit to be stored based on multi-dimensional feature identifiers and combined with time resolution factor, spatial resolution factor and coding similarity factor, through a dimension-aware hash algorithm. The memory ordered structure management module is used to combine each construction data unit to be stored and its corresponding logical storage coordinates into an ordered structure in memory based on the order of logical storage coordinates and insert it into memory. The batch persistent storage module is used to convert all memory data items into ordered data blocks in the order of logical storage coordinates when the total amount of data accumulated in the ordered structure in memory reaches the preset flush threshold, and then flush them to the disk storage layer and record the physical storage address.
[0014] Compared with related technologies, the multi-dimensional construction data storage system and method provided by the present invention have the following beneficial effects: This invention significantly improves the efficiency of construction data storage and achieves breakthroughs in intelligent management capabilities by introducing multi-dimensional feature extraction, resolution factor calculation, and dimension-aware hashing algorithms. First, it extracts raw feature values of four dimensions—time, space, object, and type—from each construction data unit and performs standardized encoding to generate a unified dimension code. This step ensures the standardization and consistency of the data format, laying the foundation for subsequent processing. By calculating the time resolution factor, spatial resolution factor, and encoding similarity factor, the system can quantitatively evaluate the granularity and correlation strength of the data, thereby dynamically adjusting the storage strategy. The dimension-aware hashing algorithm uses these factors to intelligently generate logical storage coordinates, allowing data with similar characteristics to naturally cluster in physical storage, greatly optimizing the data layout. At the memory management level, this method maintains an ordered structure for temporary storage of data items and sorts them according to logical coordinates, effectively reducing random disk write operations and improving write performance. When data accumulates to a certain threshold, the system batch converts it into ordered data blocks and writes them to disk. This batch processing mechanism significantly reduces input / output overhead and increases storage throughput. Meanwhile, by constructing a multi-dimensional inverted index, each dimension code is mapped to a list of data block addresses containing that code, enabling fast and accurate multi-condition queries and supporting complex combinations of time ranges, spatial regions, and object types for retrieval. Through multi-dimensional feature fusion and intelligent hash mapping, the pain points of traditional construction data storage, such as data silos, low query efficiency, and poor scalability, are resolved, achieving efficient data organization, fast retrieval, and scalable storage. Attached Figure Description
[0015] Figure 1 This is a flowchart of a multi-dimensional construction data storage method according to the present invention; Figure 2 This is a module structure diagram of a multi-dimensional construction data storage system according to the present invention. Detailed Implementation
[0016] The present invention will now be described in further detail with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the invention and not intended to limit it. Furthermore, it should be noted that, for ease of description, only the parts relevant to the invention are shown in the drawings, not all structures. Moreover, unless otherwise specified, the embodiments and features described herein can be combined with each other.
[0017] It should also be noted that, for ease of description, the accompanying drawings show only the parts relevant to the invention and not all of them. Before discussing exemplary embodiments in more detail, it should be mentioned that some exemplary embodiments are described as processes or methods depicted as flowcharts. Although the flowcharts describe operations (or steps) as being processed sequentially, many of these operations can be performed in parallel, concurrently, or simultaneously. Furthermore, the order of the operations can be rearranged. The process can be terminated when its operation is completed, but it may also have additional steps not included in the drawings. The process may correspond to a method, function, procedure, subroutine, subprogram, etc.
[0018] Example 1 A multi-dimensional construction data storage method, in specific implementation, such as... Figure 1 As shown, a flowchart of a multi-dimensional construction data storage method according to the present invention is illustrated, including: Step S1: Extract the original feature values of the four dimensions of time, space, object and type for each construction data unit to be stored, and perform normalization encoding to generate time dimension code, space dimension code, object dimension code and type dimension code respectively.
[0019] Specifically, in step S1, the original feature values are extracted from the metadata of the construction data unit. The metadata is standardized descriptive information pre-associated with the construction data unit, including creation time, spatial location, construction object identifier, and data type identifier.
[0020] Specifically, in step S1, the normalization encoding process includes: Using a pre-defined encoding conversion table, the original feature values of the four dimensions are mapped to standardized codes in a fixed format.
[0021] In the specific implementation process, the original feature values are first extracted from the metadata attached to the construction data units to be stored. This metadata is standardized descriptive information that is pre-associated with the construction data units, specifically including data in four dimensions: creation time represented by a timestamp accurate to milliseconds, spatial location information encoded in a three-dimensional coordinate system, unique identifiers of construction objects named according to the construction breakdown structure specification, and data type identifiers defined according to the industry standard classification system. Next, the normalization encoding processing flow is initiated, calling the preset encoding conversion table for automated mapping. The preset encoding conversion is essentially a structured mapping rule base. Among them, the time dimension conversion sub-table unifies various original time formats into international standard format time dimension codes, the spatial dimension conversion sub-table converts different coordinate systems into hierarchical spatial dimension codes, the object dimension conversion sub-table maps heterogeneous object identifiers to object dimension codes that conform to the naming specification, and the type dimension conversion sub-table consolidates complex business classifications into standardized type dimension codes. In practice, the system processes the original feature values dimension by dimension. For example, when processing the time dimension, it identifies the format pattern of the original time string, then finds the corresponding standardized time expression by querying the time conversion sub-table, ultimately generating time dimension codes, including but not limited to those in year-month-day-hour-minute-second format. When processing the spatial dimension, the system parses the original spatial description and converts the engineering partition code into a hierarchical encoding structure with a unified delimiter using the spatial conversion sub-table. The same preset conversion rules are followed when processing object and type dimensions, ensuring that all output codes have a fixed length and format. The entire process strictly adheres to the mapping rules defined in the encoding conversion table, ultimately generating four standardized dimension codes for each construction data unit. These codes provide a standardized input data foundation for subsequent factor calculations and hash mappings.
[0022] Step S2: Calculate the temporal resolution factor based on the temporal dimension code, calculate the spatial resolution factor based on the spatial dimension code, and calculate the encoding similarity factor based on the object dimension code and the type dimension code.
[0023] Specifically, in step S2, the calculation steps for the time resolution factor include: The number of complete time units contained in the time dimension code is determined by matching the format of the time dimension code using regular expressions, which serves as the encoding granularity. Divide the encoding granularity by the preset maximum number of time units and normalize it to a time resolution factor with a value between 0 and 1.
[0024] Specifically, in step S2, the calculation steps for the spatial resolution factor include: Count the number of times the predefined separator appears in the spatial dimension code, and add 1 to this count to obtain the level depth of the spatial dimension code; Divide the level depth by the preset maximum level depth value and normalize it to a spatial resolution factor with a value between 0 and 1.
[0025] Specifically, in step S2, the calculation steps for the encoding similarity factor include: Extract the structural feature vectors of the object dimension code and the type dimension code respectively; Calculate the similarity between two structural feature vectors and normalize it to an encoding similarity factor with a value between 0 and 1.
[0026] In the specific implementation process, the time resolution factor is first calculated. This is done by matching the format of the time dimension code using regular expressions to analyze the number of complete time units contained in the string. For example, the time dimension code "October 15, 2023, 14:30:45" contains six units: year, month, day, hour, minute, and second, while the time dimension code "October 2023" only contains two units: year and month. The actual number of detected time units is used as the encoding granularity. Then, the encoding granularity is divided by the preset maximum number of time units (for example, the preset maximum number of time units is set to 6) to obtain an unnormalized intermediate value. Finally, a linear transformation is used to adjust the intermediate value to a floating-point number within the range of 0 to 1, which is then used as the time resolution factor. Next, the spatial resolution factor is calculated. Specifically, the spatial dimension code string is scanned, and predefined separators are counted. For example, the number of occurrences of hyphens and forward slashes, including but not limited to, are counted. The spatial dimension code P001-B001-F05 contains two separators. The process begins by adding 1 to the delimiter count to obtain a layer depth of 3. This layer depth is then divided by a preset maximum layer depth (e.g., 8) to obtain an unnormalized ratio. Finally, the ratio is converted to a spatial resolution factor between 0 and 1 through scaling. Next, the encoding similarity factor is calculated. Specifically, structural features are extracted from both the object dimension code and the type dimension code. These features include, but are not limited to, encoding length, the proportion of numeric characters, the proportion of alphanumeric characters, the proportion of uppercase letters, the proportion of lowercase letters, the proportion of special characters, and the frequency of character type changes. Each dimension code is converted into a structural feature vector. The cosine similarity between the two structural feature vectors is then calculated, which is the dot product of the two vectors divided by their respective moduli, resulting in a similarity value between -1 and 1. Finally, the similarity value is linearly normalized to the range of 0 to 1 and used as the encoding similarity factor. The entire calculation process ensures that each factor is a standardized value, facilitating unified processing in subsequent steps.
[0027] Step S3: Combine the time dimension code, space dimension code, object dimension code, and type dimension code into a multidimensional feature identifier corresponding to each construction data unit to be stored.
[0028] In the specific implementation process, the time dimension code, spatial dimension code, object dimension code, and type dimension code of each construction data unit are combined in a preset fixed order to generate a unified multidimensional feature identifier. This order prioritizes the time dimension code, followed by the spatial dimension code, then the object dimension code, and finally the type dimension code to ensure structural consistency. The combination operation uses string concatenation, inserting a unique separator between each dimension code. This separator is a special character that will not appear in any dimension code, such as, but not limited to, a vertical bar or a hash symbol, to clearly distinguish the encoded content of different dimensions. The multidimensional feature identifier is a complete string sequence whose length is equal to the sum of the lengths of the four dimension codes plus the length of the three separators. This identifier uniquely corresponds to a construction data unit and contains all the dimensional feature information of that unit. During the combination process, the system first verifies the integrity and validity of each dimension code to ensure that they have been normalized and coded to conform to a fixed format standard. Then, the four dimension codes are concatenated one by one in the above order to form the final multidimensional feature identifier. Through this combination method, not only is the independent information of each dimension preserved, but the correlation between dimensions is also established, providing a foundation for subsequent intelligent storage and retrieval.
[0029] Step S4: Based on the multidimensional feature identifier and combined with the time resolution factor, spatial resolution factor and coding similarity factor, calculate the logical storage coordinates of each construction data unit to be stored using the dimension-aware hash algorithm.
[0030] Specifically, in step S4, the calculation steps for the logical storage coordinates include: Based on the numerical relationship between the temporal resolution factor and the spatial resolution factor, the splicing order is determined by concatenating the spatial dimension code and the temporal dimension code in the multidimensional feature identifier to generate a spatiotemporal joint code. Then, a hash operation is performed on the spatiotemporal joint code to obtain the initial hash value. Based on the numerical value of the encoding similarity factor, the preset threshold range, and the predefined combination strategy, the object dimension code and the type dimension code in the multidimensional feature identifier are concatenated to generate a combined string, and the combined string is calculated by a checksum algorithm to obtain the combined checksum. The initial hash value is combined with the combined checksum by bitwise operations to generate an intermediate hash value; Calculate the weighted sum of the temporal resolution factor, spatial resolution factor, and coding similarity factor, determine the shift parameter based on the weighted sum, and perform a shift transformation on the intermediate hash value based on the shift parameter to obtain the final hash value; The final hash value is input into the address mapping function to calculate the logical storage coordinates.
[0031] Specifically, the shift parameter is the number of bits for the circular left shift. The number of bits for the circular left shift is obtained by calculating the integer part of the weighted sum and taking the modulo of the integer part with the bit width of the intermediate hash value.
[0032] In the specific implementation process, the splicing order is first determined based on the numerical relationship between the time resolution factor and the spatial resolution factor. For example, the values of the time resolution factor and the spatial resolution factor are compared. If the time resolution factor is greater than the spatial resolution factor, the time dimension code is placed before the spatial dimension code for splicing; otherwise, the spatial dimension code is placed before the time dimension code for splicing, generating a spatiotemporal joint code. Subsequently, a hash operation is performed on the spatiotemporal joint code using a preset hash function, including but not limited to using SHA-256 and MD5 to calculate the hash value of the spatiotemporal joint code, to obtain the initial hash value. Next, the numerical value of the encoded similarity factor is compared with a preset threshold range, which includes a high similarity threshold and a low similarity threshold. A corresponding concatenation method is selected according to a predefined combination strategy. If the encoded similarity factor is greater than or equal to the high similarity threshold, the object dimension code and type dimension code are directly concatenated. If the encoded similarity factor is between the low and high similarity thresholds, a separator is inserted between the object dimension code and type dimension code before concatenation. If the encoded similarity factor is less than or equal to the low similarity threshold, the object dimension code and type dimension code are hashed and reduced separately before concatenation to generate a combined string. Then, a checksum algorithm, including but not limited to CRC32 and Adler-32, is applied to the combined string to calculate the checksum value, obtaining the combined checksum. Finally, the initial hash value and the combined checksum are fused by bitwise operations, performing a bitwise XOR operation to generate an intermediate hash value. Next, the weighted sum of the temporal resolution factor, spatial resolution factor, and coding similarity factor is calculated. The weighting coefficients are preset according to the construction data type. For example, the weight of the temporal resolution factor is 0.5, the weight of the spatial resolution factor is 0.3, and the weight of the coding similarity factor is 0.2. The weighted sum is equal to the sum of each factor multiplied by its weight. Based on the weighted sum, the shift parameter is determined. The shift parameter is the number of bits for a cyclic left shift. By taking the integer part of the weighted sum and modulo the integer part with the bit width of the intermediate hash value, the actual number of bits for the left shift is obtained. For example, the intermediate hash value is 32 bits. The integer part modulo 32 gives the shift number between 0 and 31 bits. Then, based on the shift number, i.e., the shift parameter, a cyclic left shift transformation is performed on the intermediate hash value to obtain the final hash value. Finally, the final hash value is input into the address mapping function. The address mapping function uses, but is not limited to, modulo operations and linear mapping, to map the hash value to the logical storage address space and calculate the logical storage coordinates. Throughout the process, all parameters and algorithms are predefined to ensure the consistency and repeatability of the calculation.
[0033] Step S5: Based on the order of logical storage coordinates, combine each construction data unit to be stored and its corresponding logical storage coordinates into an ordered structure of memory data items and insert it into memory.
[0034] In the specific implementation process, the logical storage coordinates of each construction data unit are obtained. The logical storage coordinates are numerical identifiers. Then, the construction data unit itself and its corresponding logical storage coordinates are combined into a complete memory data item. This memory data item contains two core parts: the main body of the construction data unit stores the construction data content, and the logical storage coordinate label stores its logical address. Next, the memory data item needs to be inserted into an ordered structure in memory. This ordered structure is a specially designed efficient data structure for maintaining data items arranged in ascending or descending order of logical storage coordinates, including but not limited to skip lists and balanced binary search trees. At the start of the insertion operation, for example, the system first matches the logical storage coordinates of the new memory data item with those in the ordered structure. The coordinates of existing nodes are compared, and the correct insertion position is quickly located by traversing the level index of the skip list. The positioning process ensures that the new data item is placed in the ordered structure in a position that strictly follows the coordinate order, so that the entire structure always maintains its order. After the insertion operation is completed, the ordered structure will automatically perform necessary rebalancing operations. For example, the skip list will adjust the node level, and the balanced binary tree will perform rotation operations to maintain its operational efficiency. This ordered structure in memory resides in the system memory, providing efficient random access and sequential traversal capabilities for data items. All insertion operations ensure that the data items in memory are arranged in the order of their logical storage coordinates, laying a solid foundation for subsequent batch sequential flushing and ensuring the locality of data storage and access efficiency.
[0035] Step S6: When the total amount of data accumulated in all memory data items in the ordered structure in memory reaches the preset flush threshold, convert all memory data items into ordered data blocks in batches according to the logical storage coordinates, flush them to the disk storage layer, and record the physical storage address.
[0036] Specifically, step S6 also includes a multidimensional index construction step, including: After the ordered data blocks are written to the disk storage layer, a multidimensional inverted index is built. The multidimensional inverted index consists of four independent inverted index tables: the time dimension inverted index table, the space dimension inverted index table, the object dimension inverted index table, and the type dimension inverted index table. Each inverted index table maps a specific dimension encoding value to a list of physical storage addresses for all ordered data blocks containing that encoding value.
[0037] In practice, the system continuously monitors the total amount of data accumulated in the ordered structure within memory. When this total amount reaches a preset flush threshold, a batch persistence operation is triggered. For example, firstly, the entire ordered structure is traversed in ascending order of logical storage coordinates, and each memory data item is read sequentially, ensuring that the data is strictly sorted according to logical coordinates. During the reading process, each memory data item is converted from its current memory data structure format to a serialization format suitable for persistent storage, preserving the data unit content and its corresponding logical storage coordinate information. The converted data items are grouped and packaged into ordered data blocks, each containing multiple data items within a continuous logical coordinate range. The size of the ordered data block is set according to the page size of the storage system. These ordered data blocks are then flushed sequentially to the disk storage layer. The flushing process uses a batch write method to reduce the number of input / output operations and improve write efficiency. After each data block is flushed, the system... The physical storage address of each data block is recorded, including the disk device identifier, starting sector address, and data block length, forming a physical storage address mapping table. Next, a multi-dimensional index construction step is executed. Immediately after the data block is flushed, an independent inverted index table is created for each dimension: a time-dimension inverted index table, a space-dimension inverted index table, an object-dimension inverted index table, and a type-dimension inverted index table. During inverted index construction, each stored ordered data block is scanned, and the dimensional encoding values of all data units within the data block are extracted. For each specific dimensional encoding value, a new index entry is created or updated in the corresponding inverted index table, mapping the encoding value to a list of physical storage addresses of all ordered data blocks containing that encoding value. This address list is maintained as an ordered set for fast range queries. Throughout the process, the in-memory ordered structure is cleared and reset after data flushing, awaiting the insertion of new data items, thus forming a continuous multi-dimensional construction data storage pipeline.
[0038] The working principle of the multi-dimensional construction data storage method provided by this invention is as follows: This invention first extracts the original feature values of four dimensions—time, space, object, and type—from each construction data unit, transforming them into standardized dimensional codes. Then, the system calculates three key factors: a time resolution factor to measure the granularity of the time code, a space resolution factor to assess the hierarchical depth of the space code, and a code similarity factor to quantify the structural correlation between object and type codes. These factors drive an improved dimension-aware hashing algorithm. The algorithm dynamically adjusts the concatenation order of the dimensional codes based on the numerical relationship between the time and space factors, generating a spatiotemporal joint code and calculating an initial hash value. Simultaneously, it selects a combination strategy for object and type codes based on the code similarity factor to generate... The system combines strings and calculates checksums. After fusing the initial hash value with the checksum through bitwise operations, the system determines the shift parameters based on the weighted sum of three factors. It then performs cyclic shifting on the intermediate hash values to generate logical storage coordinates. These coordinates determine the logical location of the data in the storage system. Data items are inserted into the ordered memory structure according to the logical storage coordinates to achieve preliminary sorting. When the accumulated data reaches a threshold, it is batch-converted into ordered data blocks and written to disk according to the coordinates. This ensures that logically related data are closely adjacent in physical storage. Finally, a four-dimensional inverted index is built, mapping each dimension code to the address of all data blocks containing that code, forming a multi-dimensional query path.
[0039] The entire technical solution optimizes the entire process of construction data from logical organization to physical storage by analyzing the inherent characteristics of the data, quantifying dimensional relationships, intelligently generating storage coordinates, orderly batch persistence, and building multi-dimensional indexes. Ultimately, it achieves the technical effects of improving storage efficiency and optimizing query performance.
[0040] Example 2 A multi-dimensional construction data storage system, in the specific implementation process, such as... Figure 2 As shown, it illustrates a modular structure diagram of a multi-dimensional construction data storage system according to the present invention, including: The feature extraction and encoding module 100 is used to extract the original feature values of the four dimensions of time, space, object and type of each construction data unit to be stored, and perform normalization encoding processing to generate time dimension code, space dimension code, object dimension code and type dimension code respectively. The resolution factor calculation module 200 is used to calculate the time resolution factor based on the time dimension code, the spatial resolution factor based on the spatial dimension code, and the encoding similarity factor based on the object dimension code and the type dimension code. The feature identifier generation module 300 is used to combine the time dimension code, space dimension code, object dimension code, and type dimension code into a multi-dimensional feature identifier corresponding to each construction data unit to be stored. The logical storage coordinate calculation module 400 is used to calculate the logical storage coordinates of each construction data unit to be stored based on multi-dimensional feature identifiers and combined with time resolution factor, spatial resolution factor and coding similarity factor, through a dimension-aware hash algorithm. The memory ordered structure management module 500 is used to combine each construction data unit to be stored and its corresponding logical storage coordinates into an ordered structure in memory based on the order of logical storage coordinates. The batch persistent storage module 600 is used to convert all memory data items into ordered data blocks in the order of logical storage coordinates when the total amount of data accumulated in the ordered structure in memory reaches the preset flush threshold, and then flush them to the disk storage layer and record the physical storage address.
[0041] The working principle of the multi-dimensional construction data storage system provided by this invention is as follows: This invention extracts the original feature values of four dimensions—time, space, object type, and type—from each construction data unit through a feature extraction and encoding module 100. It then uses a preset encoding conversion table for standardization to generate dimension codes in a unified format. A resolution factor calculation module 200 subsequently performs regular expression analysis on the time dimension code to calculate the time resolution factor, performs separator statistics on the space dimension code to calculate the space resolution factor, and calculates the encoding similarity factor by performing structural feature vector similarity calculation on the object and type dimension codes. A feature identifier generation module 300 combines the four dimension codes in a fixed order to form a multi-dimensional feature identifier, providing a complete feature representation for subsequent processing. A logical storage coordinate calculation module 400 generates logical storage coordinates based on the multi-dimensional feature identifier and three resolution factors using a dimension-aware hash algorithm. A memory ordered structure management module 500 inserts data items into a memory ordered structure according to the logical coordinate order, maintaining temporary ordered storage of data in memory. A batch persistent storage module 600 monitors the total amount of data in memory; when a threshold is reached, it batch converts the data into ordered data blocks according to the coordinate order and writes them to the disk, recording the physical address to complete persistent storage.
[0042] This application is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this application. 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 processor, 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 process. Figure 1 One or more processes and / or boxes Figure 1A device that provides the functions specified in one or more boxes.
[0043] Those skilled in the art will understand that all or part of the steps in the various methods of the above embodiments can be implemented by a program instructing related hardware. The program can be stored in a computer-readable storage medium, including read-only memory (ROM), random access memory (RAM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), one-time programmable read-only memory (OTPROM), electrically-Erasable Programmable Read-Only Memory (EEPROM), compactdisc read-only memory (CD-ROM) or other optical disc storage, disk storage, magnetic tape storage, or any other computer-readable medium capable of carrying or storing data.
[0044] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such process, method, article, or apparatus. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element.
Claims
1. A multi-dimensional construction data storage method, characterized in that, The storage method includes: S1: Extract the original feature values of the four dimensions of time, space, object and type of each construction data unit to be stored, and perform normalization encoding to generate time dimension code, space dimension code, object dimension code and type dimension code respectively; S2: Calculate the time resolution factor based on the time dimension code, calculate the space resolution factor based on the space dimension code, and calculate the encoding similarity factor based on the object dimension code and the type dimension code; S3: Combine the time dimension code, space dimension code, object dimension code, and type dimension code into a multidimensional feature identifier corresponding to each construction data unit to be stored; S4: Based on multidimensional feature identifiers and combined with time resolution factor, spatial resolution factor and coding similarity factor, the logical storage coordinates of each construction data unit to be stored are calculated by dimension-aware hashing algorithm; S5: Based on the order of logical storage coordinates, each construction data unit to be stored and its corresponding logical storage coordinates are combined into an ordered structure of memory data items and inserted into memory. S6: When the total amount of data accumulated in all memory data items in the ordered structure in memory reaches the preset flush threshold, all memory data items are converted into ordered data blocks in batches according to the logical storage coordinates, flushed to the disk storage layer, and the physical storage address is recorded. In step S4, the calculation steps for the logical storage coordinates include: Based on the numerical relationship between the temporal resolution factor and the spatial resolution factor, the splicing order is determined by concatenating the spatial dimension code and the temporal dimension code in the multidimensional feature identifier to generate a spatiotemporal joint code. Then, a hash operation is performed on the spatiotemporal joint code to obtain the initial hash value. Based on the numerical value of the encoding similarity factor, the preset threshold range, and the predefined combination strategy, the object dimension code and the type dimension code in the multidimensional feature identifier are concatenated to generate a combined string, and the combined string is calculated by a checksum algorithm to obtain the combined checksum. The initial hash value is combined with the combined checksum by bitwise operations to generate an intermediate hash value; Calculate the weighted sum of the temporal resolution factor, spatial resolution factor, and coding similarity factor, determine the shift parameter based on the weighted sum, and perform a shift transformation on the intermediate hash value based on the shift parameter to obtain the final hash value; The final hash value is input into the address mapping function to calculate the logical storage coordinates.
2. The multi-dimensional construction data storage method according to claim 1, characterized in that, In step S1, the original feature value is extracted from the metadata of the construction data unit, wherein the metadata is standardized descriptive information pre-associated with the construction data unit, including creation time, spatial location, construction object identifier, and data type identifier.
3. The multi-dimensional construction data storage method according to claim 2, characterized in that, In step S1, the normalization encoding process includes: Using a pre-defined encoding conversion table, the original feature values of the four dimensions are mapped to standardized codes in a fixed format.
4. The multi-dimensional construction data storage method according to claim 3, characterized in that, In step S2, the calculation steps for the time resolution factor include: The number of complete time units contained in the time dimension code is determined by matching the format of the time dimension code using regular expressions, which serves as the encoding granularity. Divide the encoding granularity by the preset maximum number of time units and normalize it to a time resolution factor with a value between 0 and 1.
5. A multi-dimensional construction data storage method according to claim 4, characterized in that, In step S2, the calculation steps for the spatial resolution factor include: Count the number of times the predefined separator appears in the spatial dimension code, and add 1 to this count to obtain the level depth of the spatial dimension code; Divide the level depth by the preset maximum level depth value and normalize it to a spatial resolution factor with a value between 0 and 1.
6. The multi-dimensional construction data storage method according to claim 5, characterized in that, In step S2, the calculation steps for the encoding similarity factor include: Extract the structural feature vectors of the object dimension code and the type dimension code respectively; Calculate the similarity between two structural feature vectors and normalize it to an encoding similarity factor with a value between 0 and 1.
7. A multi-dimensional construction data storage method according to claim 6, characterized in that, The displacement parameter is the number of bits for the cyclic left shift. The number of bits for the cyclic left shift is obtained by calculating the integer part of the weighted sum and taking the modulo of the integer part with the bit width of the intermediate hash value.
8. A multi-dimensional construction data storage method according to claim 7, characterized in that, Step S6 also includes a multidimensional index building step, including: After the ordered data blocks are written to the disk storage layer, a multidimensional inverted index is built. The multidimensional inverted index includes four independent inverted index tables: time dimension inverted index table, space dimension inverted index table, object dimension inverted index table, and type dimension inverted index table. Each inverted index table maps a specific dimension encoding value to a list of physical storage addresses for all ordered data blocks containing that encoding value.
9. A multi-dimensional construction data storage system, characterized in that, The storage system, applied to a multi-dimensional construction data storage method as described in any one of claims 1 to 8, comprises: The feature extraction and encoding module is used to extract the original feature values of the four dimensions of time, space, object and type of each construction data unit to be stored, and perform normalization encoding to generate time dimension code, space dimension code, object dimension code and type dimension code respectively. The resolution factor calculation module is used to calculate the time resolution factor based on the time dimension code, the spatial resolution factor based on the spatial dimension code, and the encoding similarity factor based on the object dimension code and the type dimension code. The feature identifier generation module is used to combine the time dimension code, space dimension code, object dimension code, and type dimension code into a multi-dimensional feature identifier corresponding to each construction data unit to be stored. The logical storage coordinate calculation module is used to calculate the logical storage coordinates of each construction data unit to be stored based on multi-dimensional feature identifiers and combined with time resolution factor, spatial resolution factor and coding similarity factor, through a dimension-aware hash algorithm. The memory ordered structure management module is used to combine each construction data unit to be stored and its corresponding logical storage coordinates into an ordered structure in memory based on the order of logical storage coordinates and insert it into memory. The batch persistent storage module is used to convert all memory data items into ordered data blocks in the order of logical storage coordinates when the total amount of data accumulated in the ordered structure in memory reaches the preset flush threshold, and then flush them to the disk storage layer and record the physical storage address.