ArcSDE library and planning platform data synchronization method, device and equipment

By identifying and converting the ST_Geometry object data of the ArcSDE library into the Geometry type supported by the planning platform, the compatibility problem of data synchronization is solved, automated processing and real-time synchronization are realized, and data synchronization efficiency and integrity are improved.

CN120492535AInactive Publication Date: 2025-08-15GUANGDONG URBAN & RURAL PLANNING & DESIGN INST
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202510471368.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-04-15
Publication Date
2025-08-15
Estimated Expiration
Not applicable · inactive patent

AI Technical Summary

Technical Problem

The existing technology has long synchronization cycle, poor real-time and low automation in the data synchronization between the ArcSDE library and the planning platform, and it is difficult to achieve dynamic synchronization of data updates, which is difficult to meet the requirements of planning services for data timeliness and integrity.

Method used

By identifying the ST_Geometry object data in the ArcSDE library, convert it into Geometry type data supported by the target planning platform, detecting and renaming field conflicts, establishing field type mapping rules, and setting timestamp fields to achieve incremental data synchronization.

Benefits of technology

It realizes automated processing, conflict adaptation and real-time synchronization of ArcSDE library data, improves data synchronization efficiency and integrity, and ensures that the planning platform makes full use of the data accumulated by ArcSDE library.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120492535A_ABST
    Figure CN120492535A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of data processing, and discloses an ArcSDE library and planning platform data synchronization method, device and equipment, and the method comprises the steps: recognizing STGeometric object data in an ArcSDE library; the STGeometric object data is converted into the Geometric type data supported by the target planning platform; aiming at Geometric type data, detecting and renaming fields conflicting with reserved words of a target planning platform; establishing a mapping rule between an ArcSDE library field type and a planning platform field type; based on the mapping rule, converting a table structure corresponding to the Geometric type data into a table structure of a target planning platform; synchronously writing the converted table structure into a target planning platform, and setting a timestamp field for the table structure; and monitoring a timestamp field in the table structure according to a preset timestamp triggering rule, extracting a timestamp change record of the ArcSDE library, and executing incremental data synchronization according to the timestamp change record. According to the method, the integrity and efficiency of data synchronization of the ArcSDE library and the planning platform are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of data processing technology, and more specifically, to a method, device and equipment for synchronizing data between an ArcSDE library and a planning platform. Background Art

[0002] With the in-depth development of urban and rural planning informatization, planning and management systems based on the ArcSDE spatial database have become a core platform for urban spatial data storage and application. The spatial data stored in ArcSDE comes from a wide range of sources, including multi-source heterogeneous databases, processed data, and data directly imported via formats such as gdb / mdb / shp. This data must interact efficiently with planning business systems to support the entire process of planning compilation, approval, and implementation. Due to the frequent data updates and the need for multi-departmental collaboration, data synchronization between the ArcSDE database and the planning platform has become a key technical requirement to ensure the real-time, consistency, and security of the system.

[0003] Currently, the main technical approaches for achieving data synchronization include the traditional model of exporting SDE data to mdb / gdb / shp formats using ArcGIS tools and then manually uploading it to the planning platform; solutions that use commercial ETL tools (such as FMEServer) to implement data extraction and conversion through customized workflows; and methods that use ArcPy scripted integration solutions to import data in batches through Python interfaces. These technologies generally suffer from technical bottlenecks such as long data synchronization cycles, poor real-time performance, and low levels of automation. Especially when processing terabytes of spatial data, they face risks such as transmission interruptions, version conflicts, and delayed business system responses. Furthermore, none of these technologies can achieve dynamic synchronization of data updates, making it difficult to meet the strict requirements of planning businesses for data timeliness and integrity. Summary of the Invention

[0004] In order to overcome the defects of incomplete data synchronization and low efficiency in existing data synchronization technologies, the present invention proposes the following technical solutions:

[0005] In a first aspect, the present invention proposes a method for synchronizing data between an ArcSDE library and a planning platform, comprising:

[0006] Identify ST_Geometry object data in the ArcSDE library.

[0007] Convert ST_Geometry object data to Geometry type data supported by the target planning platform.

[0008] For Geometry data, detect and rename fields that conflict with reserved words in the target planning platform.

[0009] Establish mapping rules between ArcSDE library field types and planning platform field types.

[0010] Based on the mapping rules, the table structure corresponding to the Geometry type data is converted into the table structure of the target planning platform.

[0011] The converted table structure is synchronously written into the target planning platform, and a timestamp field is set for the table structure.

[0012] According to the preset timestamp trigger rules, the timestamp field in the table structure is monitored, the timestamp change records of the ArcSDE library are extracted, and incremental data synchronization is performed based on the timestamp change records.

[0013] As a preferred technical solution, ST_Geometry object data is converted into Geometry type data supported by the target planning platform, including:

[0014] Read the coordinate information of the ST_Geometry object data.

[0015] According to the coordinate information, the ST_Geometry object data is parsed to obtain the data structure information.

[0016] According to the data structure information, the ST_Geometry object data is converted into Geometry type data supported by the target planning platform, and the coordinate information is encapsulated as an independent field and embedded in the converted Geometry type data.

[0017] As a preferred technical solution, the ST_Geometry object data is parsed according to the coordinate information to obtain data structure information, including:

[0018] Counts the number of coordinate points in the ST_Geometry object data. If there is only one independent set of coordinate points, it is considered a point object. If there are multiple sets of sequentially connected coordinate points, and the starting and ending coordinates do not coincide, it is considered a line object. If there are multiple sets of sequentially connected coordinate points, and the starting and ending coordinates coincide, it is considered a polygon object.

[0019] As a preferred technical solution, for Geometry type data, fields that conflict with reserved words in the target planning platform are detected and renamed, including:

[0020] Extract the field list associated with Geometry type data.

[0021] Match the field names in the field list with the reserved words of the target planning platform one by one to filter out conflicting fields.

[0022] Call the Field Calculator and ModelBuilder to perform a rename operation on the filtered conflicting fields.

[0023] As a preferred technical solution, the mapping rules include:

[0024] Map the String type, Int type and double type in the ArcSDE library to the String type, Integer type and LFFLOAT type of the target planning platform respectively.

[0025] As a preferred technical solution, after synchronously writing the converted table structure into the target planning platform, the method further includes:

[0026] A unique value index is created for the id field of the table structure after synchronously writing into the target planning platform. The unique value index is used to locate the data records of the table structure in the ArcSDE library when performing incremental data synchronization.

[0027] As a preferred technical solution, according to the preset timestamp trigger rules, the timestamp field in the monitoring table structure is extracted from the timestamp change record of the ArcSDE library, including:

[0028] Regularly count the frequency of historical data changes in the ArcSDE library and generate a time window.

[0029] Within the time window, the timestamp field value is hashed to generate a timestamp sequence hash value.

[0030] Locate the time range corresponding to the adjacent time window, compare the before and after states of the ArcSDE library timestamp field values within the time range line by line, filter out the records where the timestamp field values have changed, and obtain the timestamp change records.

[0031] As a preferred technical solution, incremental data synchronization is performed based on timestamp change records, including:

[0032] According to the timestamp change record, the incremental data to be synchronized and the storage location identifier of the corresponding table structure in the target planning platform are extracted.

[0033] According to the storage location identifier, the incremental data to be synchronized is written into the storage area of the corresponding table structure of the target planning platform.

[0034] Perform integrity check on the incremental data written to the target planning platform. If the check fails, re-extract the incremental data to be synchronized from the timestamp change record and write it into the storage area of the corresponding table structure of the target planning platform until the check passes.

[0035] In a second aspect, the present invention further provides an ArcSDE library and planning platform data synchronization device, which is applied to the ArcSDE library and planning platform data synchronization method as described in any solution of the first aspect, comprising:

[0036] Identification module, used to identify ST_Geometry object data in the ArcSDE library.

[0037] The first conversion module is used to convert ST_Geometry object data into Geometry type data supported by the target planning platform.

[0038] The detection module is used to detect and rename fields of Geometry type data that conflict with reserved words of the target planning platform.

[0039] Establish a module for establishing mapping rules between ArcSDE library field types and planning platform field types.

[0040] The second conversion module is used to convert the table structure corresponding to the Geometry type data into the table structure of the target planning platform based on the mapping rule.

[0041] The writing module is used to synchronously write the converted table structure into the target planning platform and set a timestamp field for the table structure.

[0042] The synchronization module is used to monitor the timestamp field in the table structure according to the preset timestamp trigger rules, extract the timestamp change records of the ArcSDE library, and perform incremental data synchronization based on the timestamp change records.

[0043] In a third aspect, the present invention further proposes a computer device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, the operations performed by the ArcSDE library and planning platform data synchronization method as described in any one of the schemes in the first aspect are implemented.

[0044] The beneficial effects of the present invention include at least:

[0045] The present invention solves the spatial data type compatibility problem by identifying the ST_Geometry object data in the ArcSDE library and converting it into Geometry type data supported by the target planning platform. Detect and rename field conflicts to avoid data reading anomalies caused by conflicts between reserved words in the field, thereby ensuring data integrity. Establish field type mapping rules and convert table structures to achieve automatic adaptation of data formats and reduce manual import and export operations. Set a timestamp field and monitor and extract change records based on preset rules to perform incremental synchronization, so that ArcSDE library data changes are synchronized to the target planning platform in real time. The present invention realizes the automated processing of data type conversion, conflict adaptation and real-time synchronization, which not only improves the efficiency of data synchronization, but also ensures the integrity of data synchronization, effectively solves the compatibility problem when synchronizing ArcSDE library data to the planning platform, and allows the planning platform to make full use of the data accumulated in the ArcSDE library. BRIEF DESCRIPTION OF THE DRAWINGS

[0046] Figure 1 The present invention provides a flowchart of a method for synchronizing data between an ArcSDE library and a planning platform.

[0047] Figure 2 This is an architectural diagram of the ArcSDE library and planning platform data synchronization device provided by an embodiment of the present invention.

[0048] Figure 3 A schematic diagram of the structure of a computer device provided in an embodiment of the present invention. DETAILED DESCRIPTION

[0049] The following will describe embodiments of the present invention with reference to the accompanying drawings and preferred technical solutions. Those skilled in the art will readily understand other advantages and benefits of the present invention from the contents disclosed in this specification. The present invention may also be implemented or applied through different specific embodiments, and the details in this specification may be modified or altered based on different viewpoints and applications without departing from the spirit of the present invention. It should be understood that the preferred technical solutions are intended only to illustrate the present invention and are not intended to limit the scope of protection of the present invention.

[0050] It should be noted that the illustrations provided in the following embodiments are merely schematic illustrations of the basic concept of the present invention. Therefore, the illustrations only show components related to the present invention and are not drawn according to the number, shape, and size of components in actual implementation. In actual implementation, the type, quantity, and proportion of each component may be changed arbitrarily, and the component layout may also be more complex.

[0051] In the following description, numerous details are discussed to provide a more thorough explanation of the embodiments of the present invention. However, it will be apparent to those skilled in the art that the embodiments of the present invention may be practiced without these specific details. In other embodiments, well-known structures and devices are shown in block diagram form rather than in detail to avoid obscuring the embodiments of the present invention.

[0052] Example 1

[0053] This embodiment proposes a method for synchronizing ArcSDE database and planning platform data. Figure 1 As shown, Figure 1 A flowchart of a method for synchronizing data between an ArcSDE library and a planning platform provided by an embodiment of the present invention includes the following steps:

[0054] S1: Identify the ST_Geometry object data in the ArcSDE library.

[0055] It should be noted that ArcSDE data comes from a variety of sources, including data migrated from different databases such as PostGIS, Oracle, and SQL Server, data stored after processing, and data directly imported into ArcGIS using formats such as gdb, mdb, and shp and then stored in the ArcSDE library. This type of data is typically large in volume and complex in storage, including vector datasets and vector feature sets. This embodiment identifies spatial data types within the ArcSDE library and uniformly stores them as ST_Geometry objects, providing an analytical foundation for subsequent data synchronization processing.

[0056] S2: Convert the ST_Geometry object data into Geometry type data supported by the target planning platform.

[0057] S3: For Geometry data, detect and rename fields that conflict with reserved words in the target planning platform.

[0058] S4: Establish mapping rules between ArcSDE library field types and planning platform field types.

[0059] S5: Based on the mapping rule, convert the table structure corresponding to the Geometry type data into the table structure of the target planning platform.

[0060] S6: Synchronously write the converted table structure into the target planning platform and set a timestamp field for the table structure.

[0061] S7: According to the preset timestamp trigger rules, monitor the timestamp field in the table structure, extract the timestamp change records of the ArcSDE library, and perform incremental data synchronization based on the timestamp change records.

[0062] It can be understood that by identifying the ST_Geometry object data in the ArcSDE library and converting it into Geometry type data supported by the target planning platform, the spatial data type compatibility problem is solved. Detect and rename field conflicts to avoid data reading exceptions caused by conflicts between reserved words in the field, thereby ensuring data integrity. Establish field type mapping rules and convert table structures to achieve automatic adaptation of data formats and reduce manual import and export operations. Set a timestamp field and monitor and extract change records based on preset rules to perform incremental synchronization, so that ArcSDE library data changes are synchronized to the target planning platform in real time. The present invention realizes the automated processing of data type conversion, conflict adaptation and real-time synchronization, which not only improves the efficiency of data synchronization, but also ensures the integrity of data synchronization, and efficiently solves the compatibility problem when synchronizing ArcSDE library data to the planning platform, allowing the planning platform to make full use of the data accumulated in the ArcSDE library.

[0063] Example 2

[0064] This embodiment makes improvements based on the ArcSDE library and planning platform data synchronization method proposed in Example 1.

[0065] It should be noted that the ArcSDE ST_Geometry object type, defined by ESRI and adhering to the SQL3 specification for user-defined data types (UDTs), is used to create columns for storing spatial data such as building, road, and land use locations. This data type supports access to geodatabases using Structured Query Language (SQL) that complies with the International Organization for Standardization (ISO) and Open Geospatial Consortium (OGC) standards, providing storage for geographic features such as points, lines, and polygons. While expanding database functionality, it is fully compatible with features such as database replication and partitioning, enabling fast access to spatial data.

[0066] ST_Geometry is an abstract superclass and cannot be directly instantiated. However, its data type includes a constructor method and multiple functions. The constructor method creates a new instance (object) of the data type and sets attribute values. During parsing, a SearchCursor is used to traverse the feature class containing ST_Geometry objects, reading the attribute table, feature table, and index table corresponding to each object row by row to determine whether the object is a point, line, or area object.

[0067] In this embodiment, the ST_Geometry object data is converted into Geometry type data supported by the target planning platform, including:

[0068] Read the coordinate information of the ST_Geometry object data.

[0069] According to the coordinate information, the ST_Geometry object data is parsed to obtain the data structure information.

[0070] According to the data structure information, the ST_Geometry object data is converted into Geometry type data supported by the target planning platform, and the coordinate information is encapsulated as an independent field and embedded in the converted Geometry type data.

[0071] As an example, when the ST_Geometry object data in ArcSDE is a point feature, its stored coordinate information is "POINT(116.407439.9042)." This coordinate information is read, parsed, and confirmed to be a point object data structure, and then converted into Geometry type data supported by the target planning platform. During the conversion, the coordinate "116.407439.9042" is extracted and encapsulated as a separate field, such as "point_coordinate." This field is then embedded in the converted Geometry type data, allowing the planning platform to directly read and call the point coordinate data.

[0072] For example, if the ST_Geometry object data in ArcSDE is a polygon feature, the original storage structure contains "rings" nested coordinate information, such as "POLYGON((420767.00872550821.6935,420737.31562550848.3391,420685.40362550895.1489,420767.00872550821.6935))". After parsing and confirming the polygon object structure, the coordinate sequence is extracted and encapsulated as an independent field "polygon_coordinate", and the entire data is converted into the WKT format supported by the Geometry type of the planning platform. Finally, it is stored in the form of "POLYGON((420767.00872550821.6935,420737.31562550848.3391,420685.40362550895.1489,420767.00872550821.6935))". At the same time, the spatial reference coordinate field is retained to ensure that the front end of the planning platform can accurately parse the spatial position and structure of the polygon element.

[0073] In this embodiment, the ST_Geometry object data is parsed according to the coordinate information to obtain data structure information, including:

[0074] Counts the number of coordinate points in the ST_Geometry object data. If there is only one independent set of coordinate points, it is considered a point object. If there are multiple sets of sequentially connected coordinate points, and the starting and ending coordinates do not coincide, it is considered a line object. If there are multiple sets of sequentially connected coordinate points, and the starting and ending coordinates coincide, it is considered a polygon object.

[0075] In this embodiment, for Geometry type data, fields that conflict with reserved words in the target planning platform are detected and renamed, including:

[0076] Extract the field list associated with Geometry type data.

[0077] Match the field names in the field list with the reserved words of the target planning platform one by one to filter out conflicting fields.

[0078] Call the Field Calculator and ModelBuilder to perform a rename operation on the filtered conflicting fields.

[0079] As an example, consider reserved words like "geometry" and "user" in the planning platform. If ArcSDE field names duplicate these reserved words, conflicts will occur. This also addresses ArcGIS keyword restrictions, such as database names containing "-" or data field names containing Chinese characters or uppercase letters that result in garbled characters.

[0080] This invention uses a field calculator and model builder to rename conflicting fields and standardize field identifiers. For example, if a field in ArcSDE is named "user" (which conflicts with a reserved word in the planning platform), it can be renamed to "user_info." If a field named "Plot-Number" triggers an ArcGIS keyword restriction due to the "-" character, it is adjusted to "Plot Number." This type of standardization eliminates field conflicts and anomalies, ensuring stable data access within the planning platform.

[0081] In this embodiment, the mapping rules include:

[0082] The ArcSDE String type is mapped to the planning platform's String type to ensure consistent text data storage. The Int type is mapped to the Integer type to accommodate integer data storage requirements. The Double type is mapped to the LFFLOAT type to meet floating-point precision storage requirements. For spatial data, the ArcSDE ST_Geometry type is mapped to the planning platform's Geometry type to achieve cross-platform adaptation of spatial data structures.

[0083] As an example, if there is a "Plot Name" field in the ArcSDE library, the data type is String, which is used to store the textual plot name. Through the mapping rules, it is still stored as String type in the planning platform database to ensure lossless synchronization of the name information. For the Int type field that records the "number of building floors", it is converted to Integer type according to the rules when synchronized to the planning platform to ensure the accurate transmission of floor values. When processing double type fields that store coordinate precision (such as longitude and latitude data), it is mapped to the LFFLOAT type of the planning platform, which not only retains the data precision but also adapts to its storage format. The ST_Geometry type spatial data that describes the "road profile" in ArcSDE is converted into the Geometry type of the planning platform through mapping, so that the spatial shape information of the road can be directly recognized and applied by the planning platform.

[0084] In this embodiment, after the converted table structure is synchronously written into the target planning platform, a unique value index is established for the id field of the table structure after synchronously writing into the target planning platform. The unique value index is used to locate the data records of the table structure in the ArcSDE library when performing incremental data synchronization.

[0085] It should be noted that the converted table is stored in the schema specified by the spatial planning platform database, and a table name with a corresponding prefix is created. A standard data path and structure are constructed in the data storage schema through the physical view, and indexes are established for key fields (such as establishing a GIST index for the_geom_webmercator field and a unique value index for the id field). In view of the problem that the planning platform needs to obtain the data primary key in order to read the data, and the physical view cannot establish the primary key, the present invention adjusts the planning platform data reading logic: Since the core purpose of obtaining the primary key is to determine the unique value field, and the unique value index has guaranteed the uniqueness of the id field, the planning platform determines the unique field based on the unique value index of the ArcSDE data, is compatible with data reading requirements, and ensures that the planning platform can obtain data normally.

[0086] As an example, there is a "plot information table" in the ArcSDE library. After synchronization to the target planning platform, a unique value index is established for the id field of the table structure. When the area, coordinates and other information of a plot record (id is "DK_001") in the ArcSDE library changes, the incremental data synchronization phase is executed. The planning platform accurately locates the record with id "DK_001" in the ArcSDE library through the unique value index of the id field, quickly extracts the changed data and synchronizes it to the corresponding table structure of the planning platform. This process relies on the unique value index to constrain the uniqueness of the id field, avoiding the problem of data positioning failure due to the lack of a primary key, ensuring the accuracy and efficiency of incremental data synchronization, and ensuring that the planning platform obtains the latest data from the ArcSDE library in a timely manner.

[0087] In this embodiment, according to the preset timestamp trigger rule, the timestamp field in the monitoring table structure is extracted from the timestamp change record of the ArcSDE library, including:

[0088] Regularly count the frequency of historical data changes in the ArcSDE library and generate a time window.

[0089] Within the time window, the timestamp field value is hashed to generate a timestamp sequence hash value.

[0090] Locate the time range corresponding to the adjacent time window, compare the before and after states of the ArcSDE library timestamp field values within the time range line by line, filter out the records where the timestamp field values have changed, and obtain the timestamp change records.

[0091] It is understandable that in the ArcSDE library, a timestamp field is configured for each table field as a basis for determining data changes. At the same time, a scheduled task is set to scan the timestamp field at a fixed time every day and synchronize the data marked as changed to the planning platform, ensuring that the planning platform obtains the latest data dynamics from the ArcSDE library in real time.

[0092] As an example, let's take the "Plot Planning Table" in the ArcSDE library. Statistics show that historical data changes in this table primarily occur between 9:00 and 11:00 on weekdays, so a 2-hour time window is generated based on this. Within the first time window (e.g., 9:00-11:00), the timestamp field value of the "Plot Planning Table" is hashed, and the initial timestamp "20241008090000" generates the hash value H1. When comparing the adjacent time window (11:00-13:00), it is found that the timestamps of some records have been updated to "20241008110500," generating a new hash value H2. By comparing the timestamp field values within the two time windows row by row, the timestamp of the record "Plot Number 001" is found to have changed. This confirms that the planning indicators (such as the floor area ratio) for the corresponding plot have been modified. This record is ultimately selected as the timestamp change record, providing an accurate data source for subsequent incremental synchronization.

[0093] In this embodiment, incremental data synchronization is performed based on timestamp change records, including:

[0094] According to the timestamp change record, the incremental data to be synchronized and the storage location identifier of the corresponding table structure in the target planning platform are extracted.

[0095] According to the storage location identifier, the incremental data to be synchronized is written into the storage area of the corresponding table structure of the target planning platform.

[0096] Perform integrity check on the incremental data written to the target planning platform. If the check fails, re-extract the incremental data to be synchronized from the timestamp change record and write it into the storage area of the corresponding table structure of the target planning platform until the check passes.

[0097] As an example, consider a data change in the "Urban Road Planning Table" in the ArcSDE database. Using a timestamp change record, we can extract the data showing that the number of lanes on a road (record ID "RD_005") has been updated from 4 to 6, and the road grade has been adjusted from "Secondary Road" to "Main Road." Based on this record, the storage location of the "Urban Road Planning Table" in the target planning platform is determined. Subsequently, the incremental data corresponding to "RD_005" (the updated number of lanes and road grade) is written to the storage area of this table in the planning platform.

[0098] After writing is complete, the system compares the field values of the "RD_005" record in the planning platform with the changes in the ArcSDE database. If the "Road Grade" is not successfully written, the system re-extracts the incremental data of "RD_005" from the timestamp change record and re-writes it until verification confirms that the changes such as "Number of Lanes" and "Road Grade" have been fully synchronized to the planning platform.

[0099] Example 3

[0100] This embodiment is based on the ArcSDE library and planning platform data synchronization method proposed in any of the above embodiments, and further applies this method to data management, thematic map production and collaborative work.

[0101] This embodiment uniformly manages the existing data (including data used and uploaded by system users) and synchronized data in the planning platform in a hierarchical and classified manner, thereby improving the standardization of data storage and call. Secondly, relying on ArcSDE to synchronize data, user use and upload data, planning thematic analysis maps are produced, such as scatter plots, OD maps, planning maps, flow maps, etc. When saving thematic maps, the user's basic information, thematic map ID, version number, map making time and other fields are entered synchronously to achieve unique identification and full-process traceability of thematic maps. Finally, the planning platform supports group collaboration. After the user shares the thematic map they have produced with the group, all members of the group can edit and modify it, and carry out multi-user planning thematic mapping operations based on the same data to enhance collaborative efficiency.

[0102] As an example, taking the urban traffic planning scenario as an example, the road space data synchronized by ArcSDE and the traffic flow statistics data uploaded by users are uniformly classified as "spatial basic data" and "dynamic monitoring data". Planners use the road network data synchronized by ArcSDE and the residents' travel trajectory data uploaded by users to create traffic flow maps. When saving, they record the user, thematic map, version number, and map making time, and clearly mark the map attributes. By sharing the flow map with project members, members can overlay bus route data on the map, edit and modify it to form a new traffic planning thematic map, realize collaborative mapping based on the same data source within the group, and efficiently promote planning work.

[0103] Example 4

[0104] like Figure 3 As shown, this embodiment proposes an ArcSDE library and planning platform data synchronization device, which is applied to the ArcSDE library and planning platform data synchronization method as described in the above embodiment, including: an identification module 100, a first conversion module 200, a detection module 300, an establishment module 400, a second conversion module 500, a writing module 600 and a synchronization module 700.

[0105] Among them, the identification module 100 is used to identify the ST_Geometry object data in the ArcSDE library. The first conversion module 200 is used to convert the ST_Geometry object data into Geometry type data supported by the target planning platform. The detection module 300 is used to detect and rename fields that conflict with the reserved words of the target planning platform for Geometry type data. The establishment module 400 is used to establish mapping rules between ArcSDE library field types and planning platform field types. The second conversion module 500 is used to convert the table structure corresponding to Geometry type data into the table structure of the target planning platform based on the mapping rules. The writing module 600 is used to synchronously write the converted table structure into the target planning platform and set a timestamp field for the table structure. The synchronization module 700 is used to monitor the timestamp field in the table structure according to the preset timestamp trigger rules, extract the timestamp change records of the ArcSDE library, and perform incremental data synchronization according to the timestamp change records.

[0106] It should be noted that the above explanation of the embodiment of the method for synchronizing data between the ArcSDE library and the planning platform is also applicable to the device for synchronizing data between the ArcSDE library and the planning platform in this embodiment, and will not be repeated here.

[0107] Example 5

[0108] Figure 3 The computer device 800 provided in this embodiment is a schematic diagram of the structure of the computer device 800. The computer device 800 includes: a memory 801, a processor 802, and a computer program stored in the memory 801 and executable on the processor 802.

[0109] When the processor 802 executes the program, the ArcSDE library and planning platform data synchronization method provided in the above embodiment is implemented.

[0110] Furthermore, the computer device 800 further includes a communication interface 803 for communication between the memory 801 and the processor 802 .

[0111] The memory 801 may include a high-speed RAM (Random Access Memory) memory, and may also include a non-volatile memory, such as at least one disk memory.

[0112] If the memory 801, the processor 802, and the communication interface 803 are implemented independently, the communication interface 803, the memory 801, and the processor 802 can be connected to each other via a bus and communicate with each other. The bus can be an ISA (Industry Standard Architecture) bus, a PCI (Peripheral Component Interconnect) bus, or an EISA (Extended Industry Standard Architecture) bus. The bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 3 Only one thick line is used in the diagram, but this does not mean that there is only one bus or one type of bus.

[0113] Optionally, in a specific implementation, if the memory 801, the processor 802 and the communication interface 803 are integrated on a chip, the memory 801, the processor 802 and the communication interface 803 can communicate with each other through an internal interface.

[0114] The processor 802 may be a CPU (Central Processing Unit), or an ASIC (Application Specific Integrated Circuit), or one or more integrated circuits configured to implement the embodiments of the present invention.

[0115] In the description of this specification, the description with reference to the terms "one embodiment", "some embodiments", "example", "specific example", or "some examples" means that the specific features, structures, materials or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the present invention. In this specification, the schematic representations of the above terms do not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials or characteristics described can be combined in any one or N embodiments or examples in a suitable manner. In addition, those skilled in the art can combine and combine different embodiments or examples described in this specification and the features of different embodiments or examples without contradiction.

[0116] Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be understood to indicate or imply relative importance or implicitly specify the number of the technical features indicated. Thus, a feature specified as "first" or "second" may explicitly or implicitly include at least one of such features. In the description of the present invention, "N" means at least two, such as two, three, etc., unless otherwise specifically defined.

[0117] Any process or method description in a flowchart or otherwise described herein may be understood to represent a module, segment or portion of code comprising one or more executable instructions for implementing a custom logical function or step of a process, and the scope of the preferred embodiments of the invention includes alternative implementations in which functions may be performed out of the order shown or discussed, including performing functions in a substantially simultaneous manner or in reverse order depending on the functions involved, as should be understood by those skilled in the art to which embodiments of the invention pertain.

[0118] It should be understood that various parts of the present invention can be implemented using hardware, software, firmware, or a combination thereof. In the above embodiment, the N steps or methods can be implemented using software or firmware stored in a memory and executed by a suitable instruction execution system. For example, if implemented using hardware, as in another embodiment, any one of the following technologies known in the art or a combination thereof can be used: a discrete logic circuit having logic gate circuits for implementing logical functions on data signals, an application-specific integrated circuit having suitable combinational logic gate circuits, a programmable gate array, a field programmable gate array, etc.

[0119] Those skilled in the art will appreciate that all or part of the steps in the method for implementing the above-mentioned embodiment can be completed by instructing related hardware through a program, and the program can be stored in a computer-readable storage medium. When the program is executed, it includes one or a combination of the steps of the method embodiment.

[0120] Obviously, the above embodiments of the present invention are merely examples for the purpose of clearly illustrating the present invention, and are not intended to limit the embodiments of the present invention. Those skilled in the art will appreciate that other variations or modifications can be made based on the above description. It is not necessary and impossible to enumerate all embodiments here. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of the present invention shall be included within the scope of protection of the claims of the present invention.

Claims

1. A method for synchronizing data between an ArcSDE library and a planning platform, characterized in that: include: Identify ST_Geometry object data in the ArcSDE library; Convert ST_Geometry object data into Geometry type data supported by the target planning platform; For Geometry data, detect and rename fields that conflict with reserved words in the target planning platform. Establish the mapping rules between ArcSDE library field types and planning platform field types; Based on the mapping rules, the table structure corresponding to the Geometry type data is converted into the table structure of the target planning platform; Synchronously write the converted table structure into the target planning platform and set a timestamp field for the table structure; According to the preset timestamp trigger rules, the timestamp field in the table structure is monitored, the timestamp change records of the ArcSDE library are extracted, and incremental data synchronization is performed based on the timestamp change records.

2. The ArcSDE library and planning platform data synchronization method according to claim 1, characterized in that: Convert ST_Geometry object data to Geometry type data supported by the target planning platform, including: Read the coordinate information of ST_Geometry object data; According to the coordinate information, the ST_Geometry object data is parsed to obtain the data structure information; According to the data structure information, the ST_Geometry object data is converted into Geometry type data supported by the target planning platform, and the coordinate information is encapsulated as an independent field and embedded in the converted Geometry type data.

3. The ArcSDE library and planning platform data synchronization method according to claim 2, characterized in that: According to the coordinate information, the ST_Geometry object data is parsed to obtain the data structure information, including: Count the number of coordinate points in the ST_Geometry object data. If there is only one set of independent coordinate points, it is determined to be a point object; if there are multiple sets of coordinate points connected in sequence, and the starting coordinates and the ending coordinates do not coincide, it is determined to be a line object; if there are multiple sets of coordinate points connected in sequence, and the starting coordinates and the ending coordinates coincide, it is determined to be a surface object.

4. The ArcSDE library and planning platform data synchronization method according to claim 1, characterized in that: For Geometry data, detect and rename fields that conflict with reserved words in the target planning platform, including: Extract the field list associated with Geometry type data; Match the field names in the field list with the reserved words of the target planning platform one by one to filter out conflicting fields; Call the Field Calculator and ModelBuilder to perform a rename operation on the filtered conflicting fields.

5. The ArcSDE library and planning platform data synchronization method according to claim 1, characterized in that: The mapping rules include: Map the String type, Int type and double type in the ArcSDE library to the String type, Integer type and LFFLOAT type of the target planning platform respectively.

6. The ArcSDE library and planning platform data synchronization method according to claim 1, characterized in that: After synchronously writing the converted table structure into the target planning platform, the method further includes: A unique value index is created for the id field of the table structure after synchronously writing into the target planning platform. The unique value index is used to locate the data records of the table structure in the ArcSDE library when performing incremental data synchronization.

7. The ArcSDE library and planning platform data synchronization method according to claim 1, characterized in that: According to the preset timestamp trigger rules, the timestamp field in the monitoring table structure is extracted from the ArcSDE library timestamp change records, including: Regularly count the frequency of historical data changes in the ArcSDE library and generate a time window; Within the time window, hash the timestamp field value to generate a timestamp sequence hash value; Locate the time range corresponding to the adjacent time window, compare the before and after states of the ArcSDE library timestamp field values within the time range line by line, filter out the records where the timestamp field values have changed, and obtain the timestamp change records.

8. The ArcSDE library and planning platform data synchronization method according to claim 7, characterized in that: Perform incremental data synchronization based on timestamp change records, including: Extract the incremental data to be synchronized and the storage location identifier of the corresponding table structure in the target planning platform based on the timestamp change record; According to the storage location identifier, the incremental data to be synchronized is written into the storage area of the corresponding table structure of the target planning platform; Perform integrity check on the incremental data written to the target planning platform. If the check fails, re-extract the incremental data to be synchronized from the timestamp change record and write it into the storage area of the corresponding table structure of the target planning platform until the check passes.

9. A device for synchronizing data between ArcSDE library and planning platform, characterized in that: include: Identification module, used to identify ST_Geometry object data in ArcSDE library; The first conversion module is used to convert ST_Geometry object data into Geometry type data supported by the target planning platform; The detection module is used to detect and rename fields of Geometry type data that conflict with reserved words of the target planning platform; Establish a module for establishing the mapping rules between ArcSDE library field types and planning platform field types; A second conversion module is used to convert the table structure corresponding to the Geometry type data into the table structure of the target planning platform based on the mapping rule; A writing module is used to synchronously write the converted table structure into the target planning platform and set a timestamp field for the table structure; The synchronization module is used to monitor the timestamp field in the table structure according to the preset timestamp trigger rules, extract the timestamp change records of the ArcSDE library, and perform incremental data synchronization based on the timestamp change records.

10. A computer device, characterized in that: The control device includes a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the computer program, the operations performed by the ArcSDE library and planning platform data synchronization method according to any one of claims 1 to 8 are implemented.

Citation Information

Patent Citations

  • Multi-platform space data fusion and synchronization method

    CN108416043A

  • Spatial data increment synchronization method between ArcSDE and File GDB file geographic databases

    CN111522897A

  • Method and system for realizing data synchronization between heterogeneous databases based on logs

    CN119597847A