Data cube model-based spatio-temporal data organization method, equipment and medium
Through the spatiotemporal data organization method based on the data cube model, metadata management tables are constructed and spatiotemporal data are encoded, and the problem of low processing efficiency of massive spatiotemporal data is solved, efficient data retrieval and multi-dimensional computing are realized, and the data processing capabilities of the digital twin city platform are improved.
Patent Information
- Application Number
- CN202510444966.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-10
- Publication Date
- 2025-05-09
- Estimated Expiration
- Not applicable · inactive patent
AI Technical Summary
The existing technology is difficult to efficiently process massive multi-source heterogeneous spatiotemporal data, resulting in low data retrieval efficiency and cannot meet the needs of digital twin city platforms for spatiotemporal data processing.
The spatiotemporal data organization method based on the data cube model is adopted to construct metadata management tables, encode product categories, time information and geospatial information, and build data cube models of space, time and product dimensions based on these encodings to achieve efficient data retrieval and query.
It improves the data processing efficiency of spatiotemporal data, realizes fast response and accurate transmission of data, enhances the flexibility and scalability of the system, and supports multi-dimensional joint computing across scales and fields.
Smart Images

Figure CN119961372A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of data processing, and in particular to a spatiotemporal data organization method, device and medium based on a data cube model. Background Art
[0002] With the continuous development of the digital twin city platform, the amount of business data in the city is experiencing explosive growth. These data not only cover traditional two-dimensional geographic information, but also widely include time dimensions and multiple business attributes, thus forming a massive amount of multi-source heterogeneous spatiotemporal data. Data processing (such as efficient organization, retrieval and scheduling) for these cross-temporal, cross-scale and cross-domain spatiotemporal data has become a key challenge in the construction of digital twin cities. However, there is currently no effective data processing technology for spatiotemporal data, which leads to the need to rely on manual query when calling the corresponding spatiotemporal data, which is inefficient. Therefore, how to improve the data processing efficiency of spatiotemporal data has become an urgent problem to be solved.
[0003] The above contents are only used to assist in understanding the technical solution of the present application and do not constitute an admission that the above contents are prior art. Summary of the invention
[0004] The main purpose of this application is to provide a spatiotemporal data organization method, device and medium based on a data cube model, aiming to improve the data processing efficiency of spatiotemporal data.
[0005] To achieve the above objectives, this application proposes a spatiotemporal data organization method based on a data cube model, including: Acquire spatiotemporal data and construct a metadata management table based on the spatiotemporal data, wherein the spatiotemporal data includes product categories, time information, and geographic space information of different products; Encode the product category and time information in the metadata management table respectively to obtain a product code and a time code; Calculate the boundary range based on the geographic space information in the metadata management table, divide the geographic space within the boundary range, and encode the divided geographic space to obtain a space code; Construct a data cube model based on space, time and product dimensions according to space coding, time coding and product coding; If a data processing request is received from a client, the target spatiotemporal data corresponding to the data processing request is queried based on the data cube model, and the target spatiotemporal data is sent to the client.
[0006] In one embodiment, the spatiotemporal data includes business information, and the step of constructing a metadata management table according to the spatiotemporal data includes: For each spatiotemporal data, use the preset distributed architecture to detect whether the spatial coordinate system corresponding to each geographic spatial information in the spatiotemporal data is consistent; If there is inconsistent geospatial information, the inconsistent geospatial information is converted into a coordinate system according to a preset spatial coordinate system, and the converted geospatial information is updated into the spatiotemporal data; Group the updated spatiotemporal data and the unupdated spatiotemporal data according to different product categories to obtain a product array object; For any product array object, the product array object is grouped again on a predetermined time span according to the time information of the product array object to obtain a time array object, wherein each time array object corresponds to a different time range; Construct a metadata management table including a product array object and a time array object in the product array object.
[0007] In one embodiment, the step of calculating the boundary range based on the geospatial information in the metadata management table includes: Extract all geospatial information from the metadata management table, wherein the geospatial information includes a longitude range, a latitude range, and an elevation range; The maximum longitude, minimum longitude, maximum latitude, minimum latitude, minimum elevation, and maximum elevation in all geographic space information are used as values of the boundary range.
[0008] In one embodiment, the step of dividing the geographical space within the boundary range and encoding the divided geographical space to obtain the space encoding includes: Based on the GeoSOT-3D coding principle, a binary division is performed in the elevation direction, and each divided geographic space information is used as the first geographic space; Performing a horizontal binary division in the first geographic space, and using the divided subspace as the second geographic space; A vertical dichotomy is performed in the second geographical space, and the divided space is the third geographical space; All third geographic spaces are encoded according to the GeoSOT-3D encoding principle to obtain spatial encoding.
[0009] In one embodiment, all third geographic spaces are encoded according to the GeoSOT-3D encoding principle, and the step of obtaining the spatial encoding includes: Determine the preset maximum level of detail, where the default level of detail for the third geographic space is from 1 to 32, and the maximum level of detail is determined by the maximum spatial resolution displayed by the client. This value changes dynamically, and different business scenarios and different hardware will use different maximum levels of detail; Traverse all slice spaces, delete slice spaces that do not store data, and obtain valid slice spaces; For each valid slice space, the fine level corresponding to the valid slice space is used as the level code of the valid slice space, and the level code is appended to the binary header of the space code.
[0010] In one embodiment, the step of determining a preset maximum refinement level further includes: If there are LOD data with multiple levels of detail in the spatiotemporal data, the maximum level of detail is determined according to the boundary range of the root node of the LOD data, wherein the geographic spatial information contained in the slice space of the maximum level of detail is greater than or equal to the boundary range of the root node.
[0011] In one embodiment, determining the maximum level of detail according to the boundary range of the root node of the LOD data includes: If the root node of the LOD data spans the range of the maximum level of detail of multiple third geographic spaces, the LOD data is defined as a shared object, wherein the shared object is jointly owned by the multiple third geographic space information contained therein; If the LOD root node does not span the range of multiple maximum fine levels of the third geographic space, the LOD data will be divided into corresponding levels in sequence from the minimum level to the maximum level.
[0012] In one embodiment, the step of constructing a data cube model based on space, time, and product dimensions according to space coding, time coding, and product coding includes: Construct spatial coding, time coding, and product coding into a three-dimensional array, and store the three-dimensional array as a data fact table; Construct a spatial dimension table with spatial code as key value, a time dimension table with time code as key value, and a product dimension table with product code as key value; Establish the relationship between the data fact table and the spatial dimension table, time dimension table, and product dimension table; Construct a data cube model based on data fact table, spatial dimension table, time dimension table, product dimension table and association relationships.
[0013] In addition, to achieve the above-mentioned purpose, the present application also proposes a spatiotemporal data organization device based on a data cube model, the device comprising: a memory, a processor, and a computer program stored in the memory and executable on the processor, the computer program being configured to implement the steps of the spatiotemporal data organization method based on the data cube model as described above.
[0014] In addition, to achieve the above-mentioned purpose, the present application also proposes a medium, which is a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the steps of the spatiotemporal data organization method based on the data cube model as described above are implemented.
[0015] In addition, to achieve the above-mentioned purpose, the present application also provides a product, which is a computer program product. The computer program product includes a computer program. When the computer program is executed by a processor, it implements the steps of the spatiotemporal data organization method based on the data cube model as described above.
[0016] One or more technical solutions proposed in this application have at least the following technical effects: The present application obtains spatiotemporal data and constructs a metadata management table based on the spatiotemporal data, wherein the spatiotemporal data includes product categories, time information, and geographic space information of different products. The data of the geographic space information is three-dimensional data, thereby providing basic information for efficient organization and retrieval of data. The data of the geographic space information is three-dimensional data, covering more dimensional geographic information; the product category and time information in the metadata management table are encoded respectively to obtain product codes and time codes. This step improves the consistency and searchability of the data through a standardized encoding method; the boundary range is calculated based on the geographic space information in the metadata management table, and the geographic space within the boundary range is divided. The divided geographic space is encoded to obtain the spatial coding. Through precise spatial division and coding, refined management and efficient query of data are achieved. According to the spatial coding, time coding and product coding, a data cube model based on space, time and product dimensions is constructed. The construction of the data cube model enables data to be quickly associated and queried in multiple dimensions, improving the flexibility and efficiency of data processing. If a data processing request sent by a client is received, the target spatiotemporal data corresponding to the data processing request is queried based on the data cube model, and the target spatiotemporal data is sent to the client. This process ensures rapid response and accurate transmission of data through an efficient query mechanism. In summary, this application improves the efficiency of data retrieval for spatiotemporal data. BRIEF DESCRIPTION OF THE DRAWINGS
[0017] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and, together with the description, serve to explain the principles of the present application.
[0018] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, for ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0019] Figure 1 This is a flow chart of Embodiment 1 of the spatiotemporal data organization method based on the data cube model of the present application; Figure 2 This is a schematic diagram of the data structure of the metadata management table of the spatiotemporal data organization method based on the data cube model of this application; Figure 3 An abstract schematic diagram of a data cube model of the spatiotemporal data organization method based on the data cube model of the present application; Figure 4 A schematic diagram of the data structure of a data cube model of the spatiotemporal data organization method based on the data cube model of the present application; Figure 5 A flowchart for constructing a data cube model for the spatiotemporal data organization method based on a data cube model in this application; Figure 6 This is a schematic diagram of the module structure of a spatiotemporal data organization device based on a data cube model according to an embodiment of the present application; Figure 7 Schematic diagram of the device structure of the hardware operating environment involved in the spatiotemporal data organization method based on the data cube model in the embodiment of the present application.
[0020] The purpose, features and advantages of this application will be further described in conjunction with the embodiments and with reference to the accompanying drawings. DETAILED DESCRIPTION
[0021] It should be understood that the specific embodiments described herein are only used to explain the technical solutions of the present application and are not used to limit the present application.
[0022] In order to better understand the technical solution of the present application, a detailed description will be given below in conjunction with the accompanying drawings and specific implementation methods.
[0023] It should be noted that the execution subject of this embodiment can be a computing service device with data processing, network communication and program running functions, such as a tablet computer, a personal computer, a mobile phone, etc., or an electronic device capable of realizing the above functions, a terminal system, etc. The following takes the system as an example to illustrate this embodiment and the following embodiments.
[0024] Based on this, this embodiment provides a spatiotemporal data organization method based on a data cube model. Figure 1 , Figure 1 This is a flow chart of the spatiotemporal data organization method based on the data cube model of the present application. The spatiotemporal data organization method based on the data cube model includes steps S10 to S50: Step S10, acquiring spatiotemporal data, and constructing a metadata management table according to the spatiotemporal data, wherein the spatiotemporal data includes product categories, time information, and geographic space information of different products; Step S20, respectively encoding the product category and time information in the metadata management table to obtain a product code and a time code; Step S30, calculating the boundary range based on the geographic space information in the metadata management table, dividing the geographic space within the boundary range, and encoding the divided geographic space to obtain a space code; Step S40, constructing a data cube model based on space, time and product dimensions according to the space code, time code and product code; Step S50: If a data processing request sent by the client is received, the target spatiotemporal data corresponding to the data processing request is queried based on the data cube model, and the target spatiotemporal data is sent to the client.
[0025] In this embodiment, the system first collects spatiotemporal data containing three-dimensional spatial coordinates, which describe different product categories, their time information, and the covered geographic space information. By analyzing these spatiotemporal data, the system constructs a metadata management table, which records the core attributes of each data entry, such as product category, timestamp, geographic location, etc., so that there is no need to repeatedly read the original data to obtain this information. Next, the system encodes each entry in the metadata management table according to the product category and time information, and generates a unique product code and time code to simplify subsequent processing.
[0026] The system then uses the geospatial information recorded in the metadata management table to calculate the maximum boundary range of all data entries. Based on this boundary range, the system applies the GeoSOT-3D (a geocoding method) segmentation principle to accurately divide the geospatial space and assign a unique spatial code to each segmented geospatial unit. This process ensures that even complex data in the elevation dimension can be accurately organized.
[0027] Afterwards, the system combines the previously obtained product codes and time codes with the newly generated space codes to construct a data cube model covering three dimensions of space, time and product - City-Cube. This model can efficiently organize heterogeneous spatiotemporal data from different sources and support multi-dimensional joint computing across scales and fields.
[0028] When a client issues a query request, the system will parse the request content and use the City-Cube model to find the target spatiotemporal data that meets the request conditions. The query operation is completed using the SQL language that comes with the database, which can quickly locate the correct data subset and feedback the results to the client. For distributed processing environments, the system will also dynamically adjust the task queue according to the complexity of the data to ensure that cluster resources are optimally used.
[0029] Furthermore, in terms of specific implementation methods, this embodiment can be further innovated and expanded by introducing machine learning algorithms and edge computing technologies to optimize data processing efficiency and response speed. For example, when constructing a metadata management table, in addition to extracting basic business information, geospatial information, product names, etc., an intelligent labeling system can also be integrated to automatically attach semantic labels to each spatiotemporal data. These labels can be extracted from associated texts using natural language processing technology, or feature information can be obtained from remote sensing images using image recognition technology. This not only enriches the content of metadata, but also provides more dimensional information for subsequent data mining.
[0030] For the encoding step, considering the different requirements of different application scenarios, an adaptive encoding mechanism can be designed. This mechanism can dynamically adjust the encoding strategy according to the query pattern in the actual application, such as using a finer grid division in high-frequency access areas and appropriately relaxing the accuracy requirements in low-frequency areas. This flexibility helps to balance the relationship between storage cost and retrieval performance.
[0031] In addition, for the processing of three-dimensional vector data, this embodiment proposes a deep learning-based spatial clipping algorithm, which can efficiently map complex geometric structures into a suitable slice space without significantly increasing the computational overhead. This improvement is particularly suitable for industries such as urban planning and architectural design, which involve a large number of three-dimensional models and fine-grained spatial analysis requirements.
[0032] Finally, in terms of client request processing, edge computing nodes can be used to share some computing tasks. When a client issues a query request, the edge node closest to the user will first try to resolve the request locally; if it cannot be satisfied, it will ask the central server for help. This method reduces network transmission delays and improves the overall response speed of the system. At the same time, edge nodes can also be used as temporary storage points to save snapshots of frequently used data recently, further reducing the pressure on the central server.
[0033] Taking smart cities as an example, such an optimization scheme enables the traffic management system to respond to emergencies in real time and quickly dispatch resources; the environmental monitoring platform can provide instant air quality forecasts to guide public travel plans. In the application scenario of digital twin cities, the efficient data organization method provided in this embodiment supports large-scale simulations and helps city managers make more scientific and reasonable decisions. This method improves the speed of data query, enhances the scalability of the system, and achieves the optimal allocation of resources by reducing unnecessary computing and communication costs.
[0034] This embodiment obtains spatiotemporal data and constructs a metadata management table based on the spatiotemporal data, wherein the spatiotemporal data includes product categories, time information, and geographic space information of different products. The data of the geographic space information is three-dimensional data, thereby providing basic information for efficient organization and retrieval of data. The data of the geographic space information is three-dimensional data, covering more dimensional geographic information; the product category and time information in the metadata management table are encoded respectively to obtain product codes and time codes. This step improves the consistency and searchability of data through a standardized encoding method; the boundary range is calculated based on the geographic space information in the metadata management table, and the geographic space within the boundary range is divided. The divided geographic space is encoded to obtain the spatial code. Through precise spatial division and coding, refined management and efficient query of data are achieved. A data cube model based on space, time, and product dimensions is constructed according to the spatial code, time code, and product code. The construction of the data cube model enables data to be quickly associated and queried in multiple dimensions, improving the flexibility and efficiency of data processing. If a data processing request sent by a client is received, the target spatiotemporal data corresponding to the data processing request is queried based on the data cube model, and the target spatiotemporal data is sent to the client. This process ensures rapid response and accurate transmission of data through an efficient query mechanism. In summary, this embodiment improves the data processing efficiency of spatiotemporal data.
[0035] Based on the first embodiment of the present application, in the second embodiment of the present application, the same or similar contents as those in the first embodiment can be referred to the above introduction, and will not be repeated hereafter. On this basis, the steps of step S10 also include steps A10 to A50: Step A10, for each spatiotemporal data, using a preset distributed architecture to detect whether the spatial coordinate system corresponding to each geographic spatial information in the spatiotemporal data is consistent; Step A20, if there is inconsistent geographic spatial information, coordinate system conversion is performed on the inconsistent geographic spatial information according to a preset spatial coordinate system, and the converted geographic spatial information is updated into the spatiotemporal data; Step A30, grouping the updated spatiotemporal data and the unupdated spatiotemporal data according to different product categories to obtain a product array object; Step A40, for any product array object, grouping the product array object again on a predetermined time span according to the time information of the product array object to obtain a time array object, wherein each time array object corresponds to a different time range; Step A50, constructing a metadata management table including product array objects and time array objects in the product array objects.
[0036] In this embodiment, the system first performs a spatial coordinate system consistency check on each spatiotemporal data. Specifically, a preset distributed architecture is used to traverse all spatiotemporal data to verify whether the spatial coordinate system corresponding to each geographic spatial information is unified. This process involves extracting the spatial coordinate information of each data entry and processing this information in parallel through distributed computing nodes. If the spatial coordinate system of some data is found to be inconsistent, the system will apply the preset spatial coordinate system conversion rules to convert these inconsistent geospatial information into a unified coordinate system to ensure that all data are in the same spatial reference frame. After the conversion is completed, the updated geospatial information will be rewritten into the corresponding spatiotemporal data record.
[0037] Next, the system groups the updated spatiotemporal data and the unupdated data (i.e., data that originally had a unified coordinate system) according to different product categories. This means that each spatiotemporal data is assigned to a corresponding array object based on its product category attribute, forming multiple product array objects. This step helps to perform more precise operations and analysis on specific types of data in the future.
[0038] For each product array object, the system further performs secondary grouping based on the time information of each spatiotemporal data it contains. Here, time information is used as a key field to distinguish data in different time periods. The geographic spatial information and business information of each spatiotemporal data are organized into different time array objects, and each such time array object represents a unique time period. The purpose of this is to be able to manage the historical changes of the same type of products in a more detailed manner.
[0039] Finally, a metadata management table is constructed, which contains all the previously created product array objects and their internal time array objects. This table not only records the basic attributes of each spatiotemporal data, such as product category, timestamp, etc., but also saves the sorted geospatial information and business information. The role of the metadata management table is to provide an efficient information retrieval mechanism, so that subsequent operations do not need to directly read the original data file, thereby improving the efficiency of building the City-Cube model.
[0040] For example, in the application scenario of smart cities, the transportation department can use this method to collect road condition information from different sensor networks. Since each sensor may be deployed in different geographic coordinate systems, it is necessary to unify the coordinate system first to ensure the consistency of data analysis. After that, the data is classified according to different sources such as traffic flow monitoring equipment and accident reporting systems, and then subdivided by time period, and finally a structured metadata management table is formed to facilitate quick query and analysis of traffic patterns in specific sections or time periods.
[0041] For example, refer to Figure 2 , Figure 2 This is a schematic diagram of the data structure of the metadata management table. The metadata management table is divided into several main branches, such as "Product 01 / Product Code", which represents a specific product category and product code. Each product is further subdivided and time-coded according to different time information, such as "Time 01 / Time Code" and "Time 02 / Time Code", and each time point is associated with a set of data records. Furthermore, detailed attributes of the file are mounted under each time information, including "File Path", "File Name", "Geospatial Information", "File Format" and "Extended Information", which fully describe the storage location, identification, covered geographic area, structural format and other related information of the file. This structured management method greatly improves the efficiency of organizing, retrieving and maintaining massive spatiotemporal data, and is particularly suitable for processing complex scenarios with multi-source heterogeneous data, such as digital twin cities and geographic information system projects.
[0042] Furthermore, a machine learning algorithm is introduced to predict future coordinate system conversion requirements and prepare necessary conversion parameters in advance. An incremental data processing strategy is adopted to perform coordinate system conversion only on newly added or modified data to reduce repetitive work. At the same time, edge computing technology is used to preliminarily process some data at the edge of the network to reduce the burden on the central server.
[0043] This embodiment achieves efficient spatiotemporal data preprocessing, laying a solid foundation for the subsequent construction of the City-Cube model. It ensures the consistency and accuracy of the data, simplifies the data management process, and also improves the response speed and scalability of the system. In this way, city managers can obtain faster and more accurate information support and make more scientific and reasonable decisions.
[0044] In a feasible implementation manner, step S40 further includes steps B10 to B40: Step B10, constructing the space code, time code, and product code into a three-dimensional array, and storing the three-dimensional array as a data fact table; Step B20, constructing a space dimension table with the space code as the key value, a time dimension table with the time code as the key value, and a product dimension table with the product code as the key value; Step B30, establishing the association relationship between the data fact table and the space dimension table, the time dimension table, and the product dimension table; Step B40, constructing a data cube model based on the data fact table, the space dimension table, the time dimension table, the product dimension table and the association relationship.
[0045] In this embodiment, the system integrates the previously obtained spatial codes, time codes, and product codes into a three-dimensional array. This three-dimensional array is essentially a data structure that organizes spatiotemporal data according to the three dimensions of space, time, and product. The code value on each dimension serves as an index to point to a specific data entry. Then, this three-dimensional array is stored as a data fact table, which becomes the basis for subsequent query and analysis.
[0046] Next, the system constructed the spatial dimension table, the time dimension table, and the product dimension table. For the spatial dimension table, the spatial code is used as the key value to ensure that each spatial location has a unique identifier; the time dimension table uses the time code as the key value to record the information of different time nodes; and the product dimension table uses the product code as the key value to describe the characteristics of various data products. The role of these dimension tables is to provide a mechanism for fast search and association, so that users can quickly locate the corresponding data according to specific needs.
[0047] In order to establish the association between the data fact table and the three dimension tables, the system has designed a set of linking rules. Through these rules, each record in the data fact table can be accurately mapped to the corresponding dimension table through its corresponding spatial code, time code and product code. This association not only simplifies complex query operations, but also improves data retrieval efficiency. For example, when querying the performance of a certain type of product in a certain region during a specific time period, the system can quickly find matching data through the dimension table and return it to the user.
[0048] Finally, using the data fact table and dimension table constructed above and their associations, the system implements the construction of a data cube model. This model allows users to explore and analyze data from multiple perspectives and supports multi-dimensional joint computing across scales and fields. By grouping and aggregating data by different dimensions, users can easily obtain the required information and conduct in-depth data mining and visualization.
[0049] For example, refer to Figure 3 , Figure 3 This is an abstract diagram of the data cube model, which is used to organize and analyze spatiotemporal data in cities. The figure shows a three-dimensional cube structure, with each dimension representing space, time, and product. The small white cubes represent different data slices, while the small black cubes are located in a specific combination of time, space, and product dimensions for operations such as calculation, analysis, and storage. This structure allows data to be efficiently organized and queried, and is suitable for a variety of application scenarios such as urban management and planning.
[0050] For example, refer to Figure 4 , Figure 4It is a data structure diagram of the data cube model. The data cube model contains multiple dimension tables and a data fact table. The spatial dimension table contains spatial keys, geospatial information, coordinate system keys, and adjacent slices. The coordinate system key is associated with the coordinate system dimension table, which includes the coordinate system key and the coordinate system definition. The time dimension table contains the time key, year, month, and day. The product dimension table includes the product key, product name, product version, and product category key. The product category key is associated with the product category dimension table, which includes the product category key and product name. The data fact table is associated with the product dimension table through the product key, the spatial dimension table through the spatial key, and the time dimension table through the time key, and records the complexity and storage path. These tables are associated with each other through keys to form a multidimensional data structure, called a data cube model, to ensure data integrity and efficient query.
[0051] Furthermore, considering the performance requirements in large-scale data analysis scenarios, a cache mechanism can be introduced when building a data cube model. When a frequently accessed query pattern is detected, the system will pre-load the relevant data into the memory cache to reduce disk I / O operations and speed up the response. In addition, for distributed computing environments, an intelligent task scheduling algorithm can be used to dynamically allocate processing tasks according to the load of each node to maximize resource utilization. For applications with high real-time requirements, such as traffic flow monitoring or disaster warning systems, such optimization measures can significantly improve the system's response sensitivity and ensure timely and accurate data services.
[0052] This embodiment makes data organization more efficient and orderly, enhances the flexibility and scalability of the system, reduces unnecessary data read times, increases data query speed, and also improves storage space utilization, providing users with a powerful and easy-to-use data analysis platform.
[0053] Based on the first or second embodiment of the present application, in the third embodiment of the present application, the same or similar contents as those in the first or second embodiment can be referred to the above introduction, and will not be described in detail later. Step S30 also includes steps C10 to C20: Step C10, extracting all geographic spatial information from the metadata management table, wherein the geographic spatial information includes a longitude range, a latitude range, and an elevation range; Step C20, taking the maximum longitude, minimum longitude, maximum latitude, minimum latitude, minimum elevation, and maximum elevation in all geographic space information as the values of the boundary range.
[0054] In this embodiment, the system extracts the geospatial information in all spatiotemporal data entries from the metadata management table. The geospatial information mentioned here includes data in three dimensions: longitude range, latitude range, and elevation range. These ranges define the specific location boundaries of each data entry on the surface or underground of the earth. By parsing the relevant fields in the metadata management table, the system can obtain the geographic location description of each data entry and extract the maximum and minimum longitude values, latitude values, and elevation values therefrom.
[0055] Next, the system aggregates all the extracted maximum and minimum longitude, latitude, and elevation values to determine the bounding range of the entire dataset. This means that the system finds the largest longitude value (maximum longitude), the smallest longitude value (minimum longitude), the largest latitude value (maximum latitude), the smallest latitude value (minimum latitude), the highest elevation value (maximum elevation), and the lowest elevation value (minimum elevation) among all data entries. Together, these values form a three-dimensional bounding box that limits the spatial distribution of all data.
[0056] This process is completed by traversing the metadata management table. Each time a new data entry is read, the system updates the maximum and minimum values of the current record until all entries have been processed. This ensures that the final boundary range can accurately cover the location information of all spatiotemporal data, providing a basis for subsequent spatial coding. For example, for data in the low-altitude economic field or underground space planning, this precise boundary range helps to achieve higher-precision geocoding and analysis.
[0057] Furthermore, considering the computational burden that large-scale data sets may bring, an incremental update mechanism can be introduced in the extraction process. When new data is added, the system only needs to compare the range of the newly added data with the existing boundary range, without rescanning the entire data set. In addition, parallel computing technology can be used to accelerate the calculation process of the boundary range, especially in a distributed environment, where different computing nodes can process different parts of the data at the same time, further improving efficiency. For application scenarios with high real-time requirements, such as traffic flow monitoring or environmental monitoring, such optimization measures can significantly reduce delays and provide faster service responses.
[0058] This embodiment not only improves the speed and accuracy of boundary range calculation, but also simplifies the complexity of subsequent space encoding.
[0059] In a feasible implementation manner, step S30 further includes steps C30 to C60: Step C30, performing binary division in the elevation direction based on the GeoSOT-3D coding principle, and each divided geographic space information is used as the first geographic space; Step C40, performing binary division in the horizontal direction in the first geographic space, and using the divided subspace as the second geographic space; Step C50, performing a vertical binary division in the second geographic space, and the divided space is a third geographic space; Step C60: Encode all third geographic spaces according to the GeoSOT-3D encoding principle to obtain space codes.
[0060] It should be noted that the GeoSOT-3D coding principle refers to the application of a global longitude and latitude grid based on a binary tree in three-dimensional space. By recursively dividing the geographic space by binary division, the fine division and coding of the earth's surface and elevation direction are achieved. The first geographic space refers to the geographic unit obtained by the first binary division in the elevation direction using GeoSOT-3D coding; the second geographic space is the sub-unit divided again in the horizontal direction of the first geographic space by binary division; the third geographic space is the result of further subdivision in the vertical direction based on the second geographic space. Finally, all third geographic space units obtain unique spatial codes according to their positional relationships.
[0061] In this embodiment, the selected geographic area is first divided into two parts in the elevation direction using the GeoSOT-3D coding principle. Each geographical unit divided in this way is the first geographic space. Next, within each first geographic space, the dichotomy is continued to be used for division in the horizontal direction, and the resulting smaller units are called the second geographic space. Subsequently, within the second geographic space, the dichotomy is used in the vertical direction to divide again to form more detailed spatial units, which are the third geographic space. Finally, for all third geographic space units, according to their positions and relative relationships, unique spatial codes are assigned according to the GeoSOT-3D coding rules to ensure that spatial information at different levels can be accurately matched and retrieved.
[0062] The core of GeoSOT-3D coding is to continuously refine the expression granularity of geographic space through recursive dichotomy, so that even very subtle changes in height or geographical location can be effectively captured. This process not only improves the accuracy of data organization, but also provides a basis for subsequent data query and analysis.
[0063] Furthermore, this embodiment proposes an improved strategy, that is, introducing a dynamic adjustment mechanism on the original basis, allowing the number of dichotomy subdivision layers to be flexibly adjusted according to the needs of different application scenarios, thereby improving resource utilization and computing efficiency. For example, in the urban planning scenario, the number of subdivision layers in the vertical direction can be appropriately increased for the space below the surface (such as subway lines), while for high-rise building dense areas, the detailed division in the horizontal direction is strengthened. In addition, the machine learning algorithm can be combined to predict the best subdivision strategy and automatically adapt to the data requirements in various complex environments.
[0064] This embodiment greatly improves the management efficiency and query speed of spatiotemporal data by dividing geographic space into multiple levels and dimensions and assigning unique codes. At the same time, this structured data organization method makes cross-scale and cross-domain data analysis more intuitive and efficient, and is particularly suitable for application fields such as smart cities and digital twins that need to process massive spatiotemporal data.
[0065] In a feasible implementation manner, step C70 further includes steps C701 to C703: Step C701, determining a preset maximum level of detail, wherein the level of detail of the third geographic space is from 1 to 32 by default, and the determination of the maximum level of detail depends on the maximum spatial resolution displayed by the client. This value changes dynamically, and different business scenarios and different hardware will use different maximum levels of detail; Step C702, slicing the third geographic space according to the maximum fineness level to obtain a slice space, traversing all the slice spaces, deleting the slice space that does not store data, and obtaining a valid slice space; Step C703: for each valid slice space, the fine level corresponding to the valid slice space is used as the level code of the valid slice space, and the level code is appended to the binary header of the space code.
[0066] In this embodiment, the system first determines the preset maximum level of detail. This maximum level of detail defines the finest granularity that can be achieved during the slicing process, that is, the highest resolution. Next, for each fourth geographic space, the system selects the preset minimum level of detail to the maximum level of detail, and performs a slicing operation on each selected level of detail. As the level of detail increases, the slices become more detailed, and the included geographic spatial information gradually decreases, forming a series of slice spaces with different levels of detail.
[0067] In this process, each layer of slicing is further subdivided based on the results of the previous layer. For example, if a fourth geographic space is initially divided into larger grid cells, then at a higher level of refinement, these large grids will be further divided into smaller sub-grids. This hierarchical slicing method ensures that data can be effectively managed and queried at different scales to meet the needs of different application scenarios.
[0068] After slicing is completed, the system will comprehensively traverse all generated slice spaces to check whether each slice stores actual data. For those empty slice spaces that do not store any data, the system will delete them to save storage resources and improve subsequent processing efficiency. The remaining slice spaces are called valid slice spaces, which contain actual useful data information.
[0069] Finally, for each valid slice space, the system uses the corresponding fine level as the level code of the slice space and updates this level code to the previously obtained space code. This process gives each valid slice space an additional identifier to indicate the fine level it belongs to. This not only helps to distinguish data at different levels, but also facilitates subsequent multi-level query and analysis operations.
[0070] Different business data have different rules for division according to GeoSOT-3D. For example, for remote sensing image data, it is necessary to segment the grid according to the geographic spatial information of the plane grid, and mark the corresponding GeoSOT-3D code for the segmented raster data; for two-dimensional vector data, it is clipped by the plane grid range, and the clipped object is marked with the corresponding code; for text data, it is judged according to the geographical location it expresses, divided into the corresponding slice space, and marked with the corresponding code. If the text data is actually expressed as a geographic range, define a shared object for the data, and mark the object with multiple slice space codes according to which slice spaces the geographic range boundary intersects with; for three-dimensional vector data, due to its complex geometric structure, the time cost of spatial clipping is huge. Therefore, here the part of the three-dimensional vector data that is completely contained in the slice space is directly marked with the corresponding code. For objects where the three-dimensional vector data intersects with the slice space boundary, it is defined as a shared object, and all the intersecting slice space codes are recorded to it.
[0071] Furthermore, considering the computational burden that large-scale data sets may bring, intelligent algorithms can be introduced in the slicing process to dynamically adjust the level of detail. For example, in certain specific areas (such as city centers or busy traffic sections), the system can predict user needs based on historical access patterns and prioritize the generation of slices with higher levels of detail; while in areas with low access frequency, a lower level of detail is maintained. In addition, using edge computing technology to preliminarily process part of the data at the edge of the network can reduce the pressure on the central server and reduce network transmission delays. For applications with high real-time requirements, such as traffic flow monitoring or disaster warning systems, such optimization measures can significantly improve the system's response speed and service quality.
[0072] For example, refer to Figure 5 , Figure 5 This is a flowchart for building a data cube model. The construction starts with the original spatiotemporal data. After preprocessing and building a metadata management table, it is grouped and encoded according to the time, space, and product dimensions. The time dimension is processed through Unix encoding, the space dimension is subdivided using GeoSOT-3D segmentation encoding technology, and the product dimension is encoded according to business needs. Subsequently, empty nodes are deleted to optimize the data structure, and a data fact table is built to store the data in the database. Finally, it is associated with an external database to build a data cube model to achieve efficient data management and multidimensional analysis.
[0073] This embodiment achieves efficient spatiotemporal data organization, reduces unnecessary storage usage and improves data retrieval speed by removing useless empty slice space. It provides users with a flexible and powerful data analysis tool, enabling city managers to quickly obtain accurate information and make scientific and reasonable decisions. Ultimately, this approach not only improves the performance and scalability of the system, but also provides solid technical support for complex urban management and planning.
[0074] In a feasible implementation manner, step C701 further includes step C7011: Step C7011, if there are LOD data with multiple levels of detail in the spatiotemporal data, the maximum level of detail is determined according to the boundary range of the root node of the LOD data, wherein the geographic spatial information contained in the slice space of the maximum level of detail is greater than or equal to the boundary range of the root node.
[0075] In this embodiment, when the spatiotemporal data contains multiple levels of detail (LOD) data, the system determines the maximum level of detail based on the boundary range of the root node of the LOD data. The LOD data mentioned here refers to a collection of objects with different levels of detail, each level representing a different resolution or degree of detail. The root node is the coarsest of these objects, and its boundary range defines the outermost geospatial information of the entire LOD structure. In order to ensure that the overall structure of all LOD data remains unchanged and does not affect scheduling and rendering performance, the slice space with the maximum level of detail needs to cover the boundary range of this root node, that is, the geospatial information contained in the slice space must be greater than or equal to the boundary range of the root node.
[0076] In specific operations, the system first identifies all data entries with LOD features, and then extracts their root node boundary information. Next, the maximum and minimum values of these boundaries are calculated to determine a slice space that can completely contain these boundaries. This slice space will serve as a reference standard for the maximum level of detail to guide the subsequent slicing process. This ensures that no matter at which level of detail, the LOD data can be fully organized and queried, and the original data structure will not be destroyed due to excessive cutting.
[0077] For example, in a 3D urban model, buildings usually have multiple LOD versions, ranging from simple geometric shapes to complex texture details. In this case, the system analyzes the outermost contours of the building complex and finds a suitable maximum level of detail so that the slice space at this level can accommodate all LOD versions without being too large to waste resources.
[0078] Furthermore, considering the differences in requirements for different application scenarios, an intelligent prediction mechanism can be introduced when determining the maximum level of refinement. The system can pre-judge which areas may involve more LOD data queries based on historical access patterns and user behavior data, thereby setting a more refined maximum level for these areas. In addition, using edge computing technology to preliminarily process some data at the edge of the network can reduce the pressure on the central server and reduce network transmission delays. For applications with high real-time requirements, such as urban roaming in a virtual reality environment or disaster emergency response, such optimization measures can significantly improve the system's response speed and service quality.
[0079] This embodiment ensures the integrity of LOD data and avoids data quality and loading efficiency issues caused by over-segmentation. It improves the speed of data retrieval, reduces unnecessary computing costs, and provides users with an efficient and reliable data analysis platform. Ultimately, this approach not only enhances the flexibility and scalability of the system, but also provides solid technical support for complex urban management and planning.
[0080] In a feasible implementation manner, step C7011 further includes steps C7012 to C7013: Step C7012: if the root node of the LOD data spans the range of the maximum level of detail of multiple third geographic spaces, the LOD data is defined as a shared object, wherein the shared object is jointly owned by the multiple third geographic space information contained therein; Step C7013: If the LOD root node does not span the range of multiple maximum fineness levels of the third geographic space, the LOD data is divided into corresponding levels in sequence from the minimum level to the maximum level.
[0081] It should be noted that LOD data refers to level of detail data, and its organization method takes into account the expression requirements of different levels of detail. In this embodiment, the third geographic space is the smallest unit obtained by subdividing the geographic space through the GeoSOT-3D coding principle. When the root node of the LOD data spans the range of the maximum level of detail of multiple third geographic spaces, the LOD data is regarded as a shared object, which means that it is jointly owned by these third geographic spaces; if the root node does not span multiple third geographic spaces, the LOD data is allocated to the appropriate level in order from the smallest level to the largest level.
[0082] In this embodiment, this embodiment first determines whether the root node of the LOD data spans the maximum level of detail range of multiple third geographic spaces. If the root node of the LOD data does span multiple such geographic spaces, then the LOD data is defined as a shared object and is jointly owned by these third geographic spaces. This means that part or all of the content of the LOD data may be distributed in different geographic spaces. In order to ensure the integrity and query efficiency of the data, it is necessary to establish associations between multiple geographic spaces. Conversely, if the root node does not span multiple third geographic spaces, the LOD data is gradually divided and allocated to the corresponding levels in order from the smallest level to the largest level. This ensures that each level of LOD data can be stored and retrieved at the most appropriate resolution, while maintaining the integrity and accuracy of the original structure, and avoiding the degradation of scheduling and rendering performance caused by slicing.
[0083] Further, this embodiment proposes an optimization strategy, that is, introducing an intelligent analysis module to predict the best division point, especially when dealing with complex urban three-dimensional models or underground space planning and other scenes, dynamically adjusting the division criteria of LOD data according to actual needs. For example, in high-density building areas, priority is given to vertical refinement; for areas with gentle terrain changes, unnecessary subdivision layers are reduced to improve resource utilization efficiency. In addition, real-time data analysis technology can be combined to automatically identify hot spots and specifically improve the level of detail of LOD data in the area, thereby enhancing user experience. A further optimization scheme is to introduce an intelligent prediction mechanism to determine in advance which areas may involve more LOD data queries based on historical access patterns and user behavior data, thereby dynamically adjusting the maximum level of refinement. In addition, using edge computing technology to preliminarily process part of the data at the edge of the network can reduce the pressure on the central server and reduce network transmission delays. For applications with high real-time requirements, such as urban roaming or disaster emergency response in a virtual reality environment, such optimization measures can significantly improve the response speed and service quality of the system.
[0084] This embodiment can not only effectively manage multi-scale and multi-level spatial information, but also significantly improve data organization efficiency and query speed. Especially for application fields involving large-scale three-dimensional data, such as smart cities and digital twin city platforms, this method can significantly reduce storage costs while ensuring data quality, and improve the flexibility of data access and operation.
[0085] It should be noted that the above examples are only used to understand the present application and do not constitute a limitation on the spatiotemporal data organization method based on the data cube model of the present application. More forms of simple transformations based on this technical concept are all within the scope of protection of the present application.
[0086] This application also provides a spatiotemporal data organization device based on a data cube model, please refer to Figure 6 , the spatiotemporal data organization device based on the data cube model includes: The data acquisition module 10 acquires spatiotemporal data and constructs a metadata management table according to the spatiotemporal data, wherein the spatiotemporal data includes product categories, time information, and geographic space information of different products, and the data of the geographic space information is three-dimensional data; The product time coding module 20 codes the product category and time information in the metadata management table respectively to obtain a product code and a time code; The spatial coding module 30 calculates the boundary range based on the geographic space information in the metadata management table, divides the geographic space within the boundary range, and encodes the divided geographic space to obtain a spatial code; A data cube model module 40 constructs a data cube model based on space, time and product dimensions according to space coding, time coding and product coding; The data query module 50, if receiving a data processing request sent by the client, queries the target spatiotemporal data corresponding to the data processing request based on the data cube model, and sends the target spatiotemporal data to the client.
[0087] The spatiotemporal data organization device based on the data cube model provided by the present application adopts the spatiotemporal data organization method based on the data cube model in the above embodiment, which can improve the data processing efficiency of spatiotemporal data. Compared with the prior art, the beneficial effects of the spatiotemporal data organization device based on the data cube model provided by the present application are the same as the beneficial effects of the spatiotemporal data organization method based on the data cube model provided by the above embodiment, and other technical features in the spatiotemporal data organization device based on the data cube model are the same as the features disclosed in the above embodiment method, which will not be repeated here.
[0088] The present application provides a spatiotemporal data organization device based on a data cube model, and the spatiotemporal data organization device based on a data cube model includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute the spatiotemporal data organization method based on the data cube model in the above-mentioned embodiment one.
[0089] Reference below Figure 7 , which shows a schematic diagram of the structure of a spatiotemporal data organization device based on a data cube model suitable for implementing the embodiment of the present application. The spatiotemporal data organization device based on a data cube model in the embodiment of the present application may include but is not limited to mobile terminals such as mobile phones, laptops, digital broadcast receivers, PDAs (Personal Digital Assistants), PADs (Portable Application Descriptions), PMPs (Portable Media Players), vehicle-mounted terminals (such as vehicle-mounted navigation terminals), etc., and fixed terminals such as digital TVs, desktop computers, etc. Figure 7 The spatiotemporal data organization device based on the data cube model shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present application.
[0090] like Figure 7As shown, the spatiotemporal data organization device based on the data cube model may include a processing device 1001 (such as a central processing unit, a graphics processing unit, etc.), which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM: Read Only Memory) 1002 or a program loaded from a storage device 1003 to a random access memory (RAM: Random Access Memory) 1004. Various programs and data required for the operation of the spatiotemporal data organization device based on the data cube model are also stored in RAM1004. The processing device 1001, ROM1002 and RAM1004 are connected to each other through a bus 1005. An input / output (I / O) interface 1006 is also connected to the bus. Typically, the following systems can be connected to the I / O interface 1006: input devices 1007 including, for example, a touch screen, a touchpad, a keyboard, a mouse, an image sensor, a microphone, an accelerometer, a gyroscope, etc.; output devices 1008 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; storage devices 1003 including, for example, a magnetic tape, a hard disk, etc.; and communication devices 1009. The communication device 1009 can allow the spatiotemporal data organization device based on the data cube model to communicate wirelessly or wired with other devices to exchange data. Although the spatiotemporal data organization device based on the data cube model with various systems is shown in the figure, it should be understood that it is not required to implement or have all the systems shown. More or fewer systems may be implemented or have alternatively.
[0091] In particular, according to the embodiments disclosed in the present application, the process described above with reference to the flowchart can be implemented as a computer software program. For example, the embodiments disclosed in the present application include a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program includes a program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network through a communication device, or installed from a storage device 1003, or installed from a ROM 1002. When the computer program is executed by the processing device 1001, the above-mentioned functions defined in the method of the embodiment disclosed in the present application are executed.
[0092] The spatiotemporal data organization device based on the data cube model provided by the present application adopts the spatiotemporal data organization method based on the data cube model in the above embodiment, which can improve the data processing efficiency of spatiotemporal data. Compared with the prior art, the beneficial effects of the spatiotemporal data organization device based on the data cube model provided by the present application are the same as the beneficial effects of the spatiotemporal data organization method based on the data cube model provided by the above embodiment, and the other technical features of the spatiotemporal data organization device based on the data cube model are the same as the features disclosed in the method of the previous embodiment, which will not be repeated here.
[0093] It should be understood that the various parts disclosed in this application can be implemented by hardware, software, firmware or a combination thereof. In the description of the above embodiments, specific features, structures, materials or characteristics can be combined in any one or more embodiments or examples in a suitable manner.
[0094] The above are only specific implementations of the present application, but the protection scope of the present application is not limited thereto. Any technician familiar with the technical field can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.
[0095] The present application provides a medium, which is a computer-readable storage medium having computer-readable program instructions (ie, computer programs) stored thereon, and the computer-readable program instructions are used to execute the spatiotemporal data organization method based on the data cube model in the above-mentioned embodiment.
[0096] The computer-readable storage medium provided in the present application may be, for example, a USB flash drive, but is not limited to electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems or devices, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM: Random Access Memory), a read-only memory (ROM: Read Only Memory), an erasable programmable read-only memory (EPROM: Erasable Programmable Read Only Memory or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM: CD-Read Only Memory), an optical storage device, a magnetic storage device, or any suitable combination of the above. In this embodiment, the computer-readable storage medium may be any tangible medium containing or storing a program, which may be used by or in combination with an instruction execution system or device. The program code contained on the computer-readable storage medium may be transmitted using any appropriate medium, including but not limited to: wires, optical cables, RF (Radio Frequency: Radio Frequency), etc., or any suitable combination of the above.
[0097] The computer-readable storage medium may be included in a spatiotemporal data organization device based on a data cube model; or may exist independently without being assembled into a spatiotemporal data organization device based on a data cube model.
[0098] The computer-readable storage medium carries one or more programs. When the one or more programs are executed by the spatiotemporal data organization device based on the data cube model, the spatiotemporal data organization device based on the data cube model: Acquire spatiotemporal data, and construct a metadata management table based on the spatiotemporal data, wherein the spatiotemporal data includes product categories, time information, and geographic spatial information of different products, and the data of the geographic spatial information is three-dimensional data; Encode the product category and time information in the metadata management table respectively to obtain a product code and a time code; Calculate the boundary range based on the geographic space information in the metadata management table, divide the geographic space within the boundary range, and encode the divided geographic space to obtain a space code; Construct a data cube model based on space, time and product dimensions according to space coding, time coding and product coding; If a data processing request is received from a client, the target spatiotemporal data corresponding to the data processing request is queried based on the data cube model, and the target spatiotemporal data is sent to the client.
[0099] Computer program code for performing the operations of the present application may be written in one or more programming languages or a combination thereof, including object-oriented programming languages such as Java, Smalltalk, C++, and conventional procedural programming languages such as "C" or similar programming languages. The program code may be executed entirely on the user's computer, partially on the user's computer, as a separate software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0100] The flow chart and block diagram in the accompanying drawings illustrate the possible architecture, function and operation of the system, method and computer program product according to various embodiments of the present application. In this regard, each square box in the flow chart or block diagram can represent a module, a program segment or a part of a code, and the module, the program segment or a part of the code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two square boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.
[0101] The modules involved in the embodiments described in this application may be implemented by software or hardware, wherein the name of the module does not constitute a limitation on the unit itself in some cases.
[0102] The readable storage medium provided by the present application is a computer-readable storage medium, which stores computer-readable program instructions (i.e., computer programs) for executing the above-mentioned spatiotemporal data organization method based on the data cube model, and can improve the data processing efficiency of spatiotemporal data. Compared with the prior art, the beneficial effects of the computer-readable storage medium provided by the present application are the same as the beneficial effects of the spatiotemporal data organization method based on the data cube model provided by the above-mentioned embodiment, and will not be described in detail here.
[0103] The present application also provides a product, which is a computer program product, including a computer program, which implements the steps of the above-mentioned spatiotemporal data organization method based on the data cube model when executed by a processor.
[0104] The computer program product provided by the present application can improve the data processing efficiency of spatiotemporal data. Compared with the prior art, the beneficial effects of the computer program product provided by the present application are the same as the beneficial effects of the spatiotemporal data organization method based on the data cube model provided by the above embodiment, which will not be repeated here.
[0105] The above are only some embodiments of the present application, and are not intended to limit the patent scope of the present application. All equivalent structural changes made using the contents of the present application specification and drawings under the technical concept of the present application, or direct / indirect application in other related technical fields are included in the patent protection scope of the present application.
Claims
1. A spatiotemporal data organization method based on a data cube model, characterized in that: The spatiotemporal data organization method based on the data cube model includes: Acquire spatiotemporal data, and construct a metadata management table according to the spatiotemporal data, wherein the spatiotemporal data includes product categories, time information, and geographic space information of different products; Encode the product category and time information in the metadata management table respectively to obtain a product code and a time code; Calculating a boundary range based on the geographic space information in the metadata management table, dividing the geographic space within the boundary range, and encoding the divided geographic space to obtain a space code; Constructing a data cube model based on space, time and product dimensions according to the space coding, time coding and product coding; If a data processing request sent by a client is received, the target spatiotemporal data corresponding to the data processing request is queried based on the data cube model, and the target spatiotemporal data is sent to the client.
2. The spatiotemporal data organization method based on the data cube model according to claim 1, characterized in that: The spatiotemporal data includes business information, and the step of constructing a metadata management table according to the spatiotemporal data includes: For each spatiotemporal data, a preset distributed architecture is used to detect whether the spatial coordinate system corresponding to each geographic spatial information in the spatiotemporal data is consistent; If there is inconsistent geographic spatial information, the inconsistent geographic spatial information is converted into a coordinate system according to a preset spatial coordinate system, and the converted geographic spatial information is updated into the spatiotemporal data; Grouping the updated spatiotemporal data and the unupdated spatiotemporal data according to different product categories to obtain a product array object; For any product array object, the product array object is grouped again in a predetermined time span according to the time information of the product array object to obtain a time array object, wherein each time array object corresponds to a different time range; A metadata management table including the product array object and the time array object in the product array object is constructed.
3. The spatiotemporal data organization method based on the data cube model according to claim 1, characterized in that: The step of calculating the boundary range based on the geographic space information of the metadata management table includes: Extracting all the geospatial information from the metadata management table, wherein the geospatial information includes a longitude range, a latitude range, and an elevation range; The maximum longitude value, the minimum longitude value, the maximum latitude value, the minimum latitude value, the minimum altitude value, and the maximum altitude value in all the geographic space information are used as values of the boundary range.
4. The spatiotemporal data organization method based on the data cube model as claimed in claim 3, characterized in that: The step of dividing the geographical space within the boundary range and encoding the divided geographical space to obtain the space code comprises: Based on the GeoSOT-3D coding principle, a binary division is performed in the elevation direction, and each divided geographic space information is used as the first geographic space; Performing a horizontal binary division in the first geographic space, and using the divided subspace as the second geographic space; Performing a vertical binary division in the second geographical space, and the divided space is the third geographical space; All the third geographic spaces are encoded according to the GeoSOT-3D encoding principle to obtain space encoding.
5. The spatiotemporal data organization method based on the data cube model according to claim 4, characterized in that: The step of encoding all the third geographic spaces according to the GeoSOT-3D encoding principle to obtain the spatial encoding comprises: Determine a preset maximum fineness level, wherein the fineness level of the third geographic space is from 1 to 32 by default, and the determination of the maximum fineness level depends on the maximum spatial resolution displayed by the client. The maximum fineness level changes dynamically, and different business scenarios and different hardware will use different maximum fineness levels; Slicing the third geographic space according to the maximum fineness level to obtain a slice space, traversing all the slice spaces, deleting the slice space that does not store data, and obtaining a valid slice space; For each of the valid slice spaces, the fine level corresponding to the valid slice space is used as the level code of the valid slice space, and the level code is appended to the binary header of the space code.
6. The spatiotemporal data organization method based on the data cube model according to claim 5, characterized in that: The step of determining the preset maximum refinement level further includes: If there are multi-level-of-detail LOD data in the spatiotemporal data, the maximum level of detail is determined according to the boundary range of the root node of the LOD data, wherein the geographic spatial information contained in the slice space of the maximum level of detail is greater than or equal to the boundary range of the root node.
7. The spatiotemporal data organization method based on the data cube model according to claim 6, characterized in that: The step of determining the maximum level of detail according to the boundary range of the root node of the LOD data includes: If the root node of the LOD data spans the range of multiple third geographic spaces at the maximum level of detail, the LOD data is defined as a shared object, wherein the shared object is jointly owned by multiple third geographic space information contained therein; If the root node does not span multiple ranges of the third geographic space at the maximum level of detail, the LOD data is divided into corresponding levels in sequence from the minimum level to the maximum level.
8. The spatiotemporal data organization method based on the data cube model according to claim 1, characterized in that: The step of constructing a data cube model based on space, time, and product dimensions according to the space code, time code, and product code comprises: Constructing the space code, time code, and product code into a three-dimensional array, and storing the three-dimensional array as a data fact table; Constructing a space dimension table with the space code as a key value, a time dimension table with the time code as a key value, and a product dimension table with the product code as a key value; Establishing associations between the data fact table and the spatial dimension table, the time dimension table, and the product dimension table; A data cube model is constructed based on the data fact table, space dimension table, time dimension table, product dimension table and association relationships.
9. A spatiotemporal data organization device based on a data cube model, characterized in that: The spatiotemporal data organization device based on the data cube model includes: a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the computer program is configured to implement the steps of the spatiotemporal data organization method based on the data cube model as described in any one of claims 1 to 8.
10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, which, when executed by a processor, implements the steps of the spatiotemporal data organization method based on a data cube model as claimed in any one of claims 1 to 8.
Citation Information
Patent Citations
Spatio-temporal big data cube organization method and system for large-scale analysis
CN112181980A
Region division method based on laminated framework
CN112765301A
Geographic grid model-based mining area ecological evolution big data multi-scale query method
CN114090714A
Natural language query method and system based on spatio-temporal knowledge cube
CN118760698A