Data exchange method, device and storage medium based on map data

By receiving data update messages and calling the data query interface to obtain target data, the problem of low efficiency of map data exchange is solved, real-time data exchange and efficient data query are realized.

CN111104408BActive Publication Date: 2025-02-07TENCENT CLOUD COMPUTING (BEIJING) CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN201911299987.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2019-12-17
Publication Date
2025-02-07
Estimated Expiration
2040-12-22

AI Technical Summary

Technical Problem

When exchanging map data, the prior art usually uses offline files to synchronize data, resulting in a large amount of time being uploaded and downloaded data files, which seriously affects the efficiency of data processing.

Method used

By receiving a data update message indicating that the updated map data exists, the data query interface is called to obtain the target data from the updated map data and store it in the database to achieve real-time data exchange.

Benefits of technology

It improves the timeliness of data acquisition and the efficiency of data exchange, reduces the time cost of data query, and significantly improves performance when processing large-scale map data.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN111104408B_ABST
    Figure CN111104408B_ABST
Patent Text Reader

Abstract

The present invention provides a data exchange method, device and storage medium based on map data; the method comprises: receiving a data update message indicating the existence of updated map data, the data update message carries a data index set, the data index set comprises a first data index and a second data index; wherein the first data index is used to locate a target data set from a plurality of data sets, the target data set contains updated map data, and the plurality of data sets are classified according to at least one classification dimension; the second data index is used to locate the updated map data in the target data set; based on the data update message, calling a first data query interface to obtain the target data from the updated map data; storing the target data in a database, the database being used to query the target data through a second data query interface. Through the present invention, the data exchange efficiency of map data can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of big data technology, and in particular to a data exchange method, device, equipment and storage medium based on map data. Background Art

[0002] Big data refers to a collection of data that cannot be captured, managed, and processed by conventional software tools within a certain time frame. It is a massive, high-growth, and diverse information asset that requires new processing models to have stronger decision-making power, insight discovery, and process optimization capabilities.

[0003] The original data of map data is about 170 million, and the index data that can be indexed by retrieval is about 80 million, which is considered big data. When exchanging map data, related technologies usually use offline files to synchronize data. However, when exchanging data through offline files, it takes a lot of time to upload and download a large number of data files, which seriously affects the efficiency of data processing. Summary of the invention

[0004] The embodiments of the present invention provide a data exchange method, device and storage medium based on map data, which can improve the data exchange efficiency of map data.

[0005] The technical solution of the embodiment of the present invention is achieved as follows:

[0006] An embodiment of the present invention provides a data exchange method based on map data, comprising:

[0007] receiving a data update message indicating the existence of updated map data, the data update message carrying a data index set, the data index set including a first data index and a second data index;

[0008] The first data index is used to locate a target data set from a plurality of data sets, the target data set includes updated map data, and the plurality of data sets are classified according to at least one classification dimension; the second data index is used to locate the updated map data in the target data set;

[0009] Based on the data update message, calling a first data query interface to obtain target data from the updated map data;

[0010] The target data is stored in a database, and the database is used to query and obtain the target data through a second data query interface.

[0011] An embodiment of the present invention provides a data exchange device based on map data, comprising:

[0012] A receiving module, configured to receive a data update message indicating the existence of updated map data, wherein the data update message carries a data index set, wherein the data index set includes a first data index and a second data index;

[0013] The first data index is used to locate a target data set from a plurality of data sets, the target data set includes updated map data, and the plurality of data sets are classified according to at least one classification dimension; the second data index is used to locate the updated map data in the target data set;

[0014] An acquisition module, configured to call a first data query interface based on the data update message to acquire target data from the updated map data;

[0015] The storage module is used to store the target data in a database, and the database is used to query and obtain the target data through a second data query interface.

[0016] In the above solution, the acquisition module is further used to parse the data update message to obtain the data index set;

[0017] Based on the data index set, calling a first data query interface to query the target data set to obtain the updated map data;

[0018] Target data is acquired from the updated map data.

[0019] In the above solution, the acquisition module is further used to send a data query request carrying the data index set through a first data query interface when the multiple data sets are multiple city sub-tables obtained by dividing the multiple data sets based on the city as a classification dimension, so as to locate the target city sub-table corresponding to the updated map data based on the first data index, and locate the position of the updated map data in the target city sub-table based on the second data index;

[0020] The updated map data is received.

[0021] In the above solution, the acquisition module is further used to extract keywords from the updated map data, and the keywords correspond to the points of interest;

[0022] Based on the keyword, map data corresponding to the point of interest is extracted from the updated map data as the target data.

[0023] In the above solution, the storage module is also used to determine the data category to which the target data belongs;

[0024] Based on the data category to which the target data belongs, storing the target data in a data set corresponding to the data category in a database;

[0025] A third data index corresponding to the target data is generated, wherein the third data index indicates a storage order or a storage time of the target data.

[0026] In the above solution, the receiving module is further used to receive an acquisition instruction for the full map data;

[0027] The acquisition module is further used to call the first data query interface based on the acquisition instruction, so as to obtain the full map data in a data query manner of performing paging query on each of the data sets respectively.

[0028] In the above solution, the acquisition module is further used to send a paging query request for the full amount of map data through the first data query interface, and the paging query request is used to request to query the map data of the target data volume of the target location interval;

[0029] The target data volume of map data is received.

[0030] In the above solution, the storage module is also used to store the target data in the blockchain network.

[0031] An embodiment of the present invention provides an electronic device, including:

[0032] A memory for storing executable instructions;

[0033] The processor is used to implement the method provided by the embodiment of the present invention when executing the executable instructions stored in the memory.

[0034] An embodiment of the present invention provides a storage medium storing executable instructions for causing a processor to execute the instructions to implement the method provided by the embodiment of the present invention.

[0035] The embodiments of the present invention have the following beneficial effects:

[0036] By receiving a data update message indicating the existence of updated map data; based on the data update message, calling a first data query interface to obtain target data from the updated map data; in this way, on the one hand, by receiving the data update message indicating the existence of updated map data, it is possible to promptly know that the map data is updated, so as to obtain the target data from the updated map data as soon as possible, thereby improving the timeliness of data acquisition; on the other hand, by calling the first data query interface to obtain the target data, real-time data exchange is achieved without the need for offline form, thereby improving the efficiency of data exchange; at the same time, since multiple data sets are obtained by classifying the map data based on at least one classification dimension, the data amount of each data set is reduced, thereby improving the efficiency of data query. BRIEF DESCRIPTION OF THE DRAWINGS

[0037] Figure 1 is a schematic diagram of the architecture of a data exchange system based on map data provided by an embodiment of the present invention;

[0038] Figure 2 is a data schematic diagram of an electronic device provided by an embodiment of the present invention;

[0039] Figure 3 is a flowchart of a data exchange method based on map data provided by an embodiment of the present invention;

[0040] Figure 4 is a schematic diagram of data exchange based on map data provided by an embodiment of the present invention;

[0041] Figure 5 is a schematic diagram of data exchange based on map data provided by an embodiment of the present invention;

[0042] Figure 6 It is a schematic diagram of paging query provided by related technologies;

[0043] Figure 7 is a schematic diagram of a paging query provided by an embodiment of the present invention;

[0044] Figures 8A-8B is a schematic diagram of an interface for POI data recommendation provided by an embodiment of the present invention;

[0045] Figures 9A-9B is a schematic diagram of an interface for POI data recommendation provided by an embodiment of the present invention;

[0046] Fig.10 This is a schematic diagram of the application architecture of the blockchain network provided by an embodiment of the present invention;

[0047] Fig.11 6 is a schematic diagram of the structure of a blockchain in a blockchain network 600 provided in an embodiment of the present invention;

[0048] Fig.12 Schematic diagram of the functional architecture of the blockchain network 600 provided in an embodiment of the present invention;

[0049] Fig.13 is a flowchart of a data exchange method based on map data provided by an embodiment of the present invention;

[0050] Fig.14 is a flowchart of a data exchange method based on map data provided by an embodiment of the present invention;

[0051] Fig.15 It is a schematic diagram of the composition structure of the data exchange device 255 based on map data provided in an embodiment of the present invention. DETAILED DESCRIPTION

[0052] In order to make the purpose, technical solutions and advantages of the present invention clearer, the present invention will be further described in detail below in conjunction with the accompanying drawings. The described embodiments should not be regarded as limiting the present invention. All other embodiments obtained by ordinary technicians in the field without making creative work are within the scope of protection of the present invention.

[0053] In the following description, reference is made to “some embodiments”, which describe a subset of all possible embodiments, but it can be understood that “some embodiments” may be the same subset or different subsets of all possible embodiments and may be combined with each other without conflict.

[0054] In the following description, the terms "first\second\third" involved are merely used to distinguish similar objects and do not represent a specific ordering of the objects. It can be understood that "first\second\third" can be interchanged with a specific order or sequence where permitted, so that the embodiments of the present invention described herein can be implemented in an order other than that illustrated or described herein.

[0055] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as those commonly understood by those skilled in the art to which the present invention belongs. The terms used herein are only for the purpose of describing the embodiments of the present invention and are not intended to limit the present invention.

[0056] Before further describing the embodiments of the present invention in detail, the nouns and terms involved in the embodiments of the present invention are described. The nouns and terms involved in the embodiments of the present invention are subject to the following interpretations.

[0057] 1) A data index is a structure that sorts the values ​​of one or more columns in a database table (for example, the name column of the employee table).

[0058] 2) Points of interest refer to all geographical objects that can be abstracted as points, especially some geographical entities closely related to people’s lives, such as schools, banks, restaurants, gas stations, hospitals, supermarkets, etc.

[0059] 3) Paging is a memory management technique in an operating system that allows the computer's main memory to use data stored in secondary memory. The operating system partitions the data in the secondary memory (usually a disk) into fixed-size blocks called "pages".

[0060] 4) Transaction, which is equivalent to the computer term "transaction". Transaction includes operations that need to be submitted to the blockchain network for execution, and does not refer only to transactions in a business context. In view of the conventional use of the term "transaction" in blockchain technology, the embodiments of the present invention follow this convention.

[0061] For example, the Deploy transaction is used to install the specified smart contract to the nodes in the blockchain network and prepare it to be called; the Invoke transaction is used to append transaction records to the blockchain by calling the smart contract and perform operations on the blockchain's state database, including update operations (including adding, deleting, and modifying key-value pairs in the state database) and query operations (i.e. querying key-value pairs in the state database).

[0062] 5) Blockchain is an encrypted, chained transaction storage structure formed by blocks.

[0063] 6) Blockchain Network: A collection of nodes that incorporate new blocks into the blockchain through consensus.

[0064] 7) Ledger is a general term for blockchain (also called ledger data) and the state database synchronized with the blockchain. The blockchain records transactions in the form of files in the file system; the state database records transactions in the blockchain in the form of different types of key-value pairs, which is used to support fast query of transactions in the blockchain.

[0065] 8) Smart Contracts, also known as chaincode or application code, are programs deployed in the nodes of the blockchain network. The nodes execute the smart contracts called in the received transactions to update or query the key-value data in the state database.

[0066] 9) Consensus is a process in the blockchain network used to reach agreement on transactions in a block among multiple nodes involved. The agreed blocks will be appended to the end of the blockchain. The mechanisms for achieving consensus include Proof of Work (PoW), Proof of Stake (PoS), Delegated Proof-of-Stake (DPoS), Proof of Elapsed Time (PoET), etc.

[0067] Figure 1is a schematic diagram of the architecture of a data exchange system based on map data provided by an embodiment of the present invention, see Figure 1 To support an exemplary application, server 200-1 is connected to server 200-2 via network 300. Network 300 may be a wide area network or a local area network, or a combination of the two, using wireless or wired links to achieve data transmission.

[0068] Server 200-1 is used to push data update messages to server 200-2 when updated map data exists;

[0069] Here, the map data is stored in the database 500-1, and the data update message carries a data index, which includes a first data index and a second data index; wherein the first data index is used to locate a target data set (e.g., data set 1) containing updated map data from a plurality of data sets, and the plurality of data sets are classified according to at least one classification dimension; and the second data index is used to locate the updated map data in the target data set;

[0070] The server 200-2 is used to call the first data query interface based on the data update message to obtain the target data from the updated map data; store the target data in the database 500-2, and the database is used to query and obtain the target data through the second data query interface.

[0071] In some embodiments, the terminal 400-1 and the terminal 400-2 are provided with an application client (such as a map client) for presenting map data. After the terminal 400-2 obtains the target data, the presented map data can be updated according to the target data.

[0072] In actual applications, the server can be a single server that supports various services, or it can be configured as a server cluster; the terminal can be various types of user terminals such as smart phones, tablet computers, laptops, etc., and can also be wearable computing devices, personal digital assistants (PDAs), desktop computers, cellular phones, media players, navigation devices, game consoles, televisions, or a combination of any two or more of these data processing devices or other data processing devices.

[0073] Next, an electronic device implementing the data exchange method based on map data of an embodiment of the present invention is described below. Figure 2 , Figure 2 is a data schematic diagram of an electronic device provided by an embodiment of the present invention, Figure 2The electronic device includes: a processor 210, a memory 250, a network interface 220 and a user interface 230. The various components in the electronic device are coupled together through a bus system 240. It can be understood that the bus system 240 is used to realize the connection and communication between these components. In addition to the data bus, the bus system 240 also includes a power bus, a control bus and a status signal bus. However, for the sake of clarity, Figure 2 Various buses are labeled as bus system 240 .

[0074] The processor 210 can be an integrated circuit chip with signal processing capabilities, such as a general-purpose processor, a digital signal processor (DSP), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc., where the general-purpose processor can be a microprocessor or any conventional processor, etc.

[0075] The user interface 230 includes one or more output devices 231 that enable presentation of media content, including one or more speakers and / or one or more visual display screens. The user interface 230 also includes one or more input devices 232, including user interface components that facilitate user input, such as a keyboard, mouse, microphone, touch screen display, camera, other input buttons and controls.

[0076] The memory 250 may be removable, non-removable, or a combination thereof. Exemplary hardware devices include solid-state memory, hard disk drives, optical disk drives, etc. The memory 250 may optionally include one or more storage devices that are physically remote from the processor 210.

[0077] The memory 250 includes a volatile memory or a nonvolatile memory, or may include both volatile and nonvolatile memories. The nonvolatile memory may be a read-only memory (ROM), and the volatile memory may be a random access memory (RAM). The memory 250 described in the embodiment of the present invention is intended to include any suitable type of memory.

[0078] In some embodiments, memory 250 can store data to support various operations, examples of which include programs, modules, and data structures, or a subset or superset thereof, as exemplarily described below.

[0079] Operating system 251, including system programs for processing various basic system services and performing hardware-related tasks, such as a framework layer, a core library layer, a driver layer, etc., for implementing various basic services and processing hardware-based tasks;

[0080] A network communication module 252, used to reach other computing devices via one or more (wired or wireless) network interfaces 220, exemplary network interfaces 220 include: Bluetooth, Wireless Compatibility Certification (WiFi), and Universal Serial Bus (USB);

[0081] a display module 253 for enabling presentation of information via one or more output devices 231 (e.g., display screen, speaker, etc.) associated with the user interface 230 (e.g., a user interface for operating peripherals and displaying content and information);

[0082] The input processing module 254 is used to detect one or more user inputs or interactions from one of the one or more input devices 232 and translate the detected inputs or interactions.

[0083] In some embodiments, the data exchange device based on map data provided by the embodiments of the present invention can be implemented in a software manner. Figure 2 A data exchange device 255 based on map data stored in a memory 250 is shown, which can be software in the form of programs and plug-ins, including the following software modules: a receiving module 2551, an acquisition module 2552 and a storage module 2553. These modules are logical, and therefore can be arbitrarily combined or further split according to the functions implemented. The functions of each module will be explained below.

[0084] In other embodiments, the data exchange device based on map data provided by the embodiment of the present invention may be implemented in hardware. As an example, the data exchange device based on map data provided by the embodiment of the present invention may be a processor in the form of a hardware decoding processor, which is programmed to execute the data exchange method based on map data provided by the embodiment of the present invention. For example, the processor in the form of a hardware decoding processor may adopt one or more application specific integrated circuits (ASICs), DSPs, programmable logic devices (PLDs), complex programmable logic devices (CPLDs), field programmable gate arrays (FPGAs), or other electronic components.

[0085] Based on the above description of the data exchange system based on map data and the electronic device according to the embodiment of the present invention, the data exchange method based on map data provided by the embodiment of the present invention is described below. Figure 3A flow chart of a data exchange method based on map data provided by an embodiment of the present invention. In some embodiments, the data exchange method based on map data is implemented by a server, such as by Figure 1 The server 200-2 in the implementation, combined with Figure 1 and Figure 3 , a data exchange method based on map data provided by an embodiment of the present invention is described.

[0086] Step 301: The first server sends a data update message indicating the existence of updated map data to the second server.

[0087] Here, the data update message carries a data index set, which includes a first data index and a second data index; wherein the first data index is used to locate a target data set from multiple data sets, the target data set contains updated map data, and the multiple data sets are classified according to at least one classification dimension; the second data index is used to locate the updated map data in the target data set.

[0088] In actual implementation, after the first server detects that the map data in the database has been updated, such as data modification, data addition, etc., it sends a data update message to the second server so that the second server can perceive the update of the map data in time and obtain the target data from the updated map data as soon as possible, thereby improving the effectiveness of data exchange.

[0089] It should be noted that the platform corresponding to the first server and the platform corresponding to the second server are in a data sharing relationship and can exchange data, that is, the first server has the authority to obtain the data of the second server, and the second server also has the authority to obtain the data of the first server.

[0090] Since the map data is usually stored in a distributed file system (Hadoop Distributed File System, HDFS), in actual implementation, the first server obtains metadata of the map data from the HDFS, and classifies the obtained map data according to at least one classification dimension to obtain data sets corresponding to different categories.

[0091] Here, the classification dimensions can be provinces, cities, facility types, etc., among which the setting types include: medical care, food, shopping, etc.

[0092] In some embodiments, the acquired map data is classified according to a classification dimension, such as classifying the map data according to cities to obtain data sets corresponding to different cities; in other embodiments, the acquired map data can be classified according to multiple classification dimensions, such as classifying according to cities and facility types, that is, first classifying the map data according to cities to obtain primary data sets corresponding to different cities, and then classifying each data set based on the facility type to obtain multiple secondary data sets.

[0093] Here, by classifying the acquired map data to obtain multiple data sets, the data volume of a single data set can be reduced. For example, if the data volume of map data is greater than 50 million, then the map data can be classified according to the city so that the data volume corresponding to each data set is reduced to about one million. In this way, the query efficiency of the data can be improved. Among them, the more classification dimensions are used, the finer the division of the data set, the lower the data volume corresponding to each data set, and the higher the query efficiency when querying the map data.

[0094] In actual implementation, each data set corresponds to a sub-table, and the sub-table can be named using the category corresponding to the data set. For example, when the city is used as the classification dimension, each sub-table can be named using the city. In this way, by naming the sub-table using the category, there is no need to create an index for the corresponding sub-table, and the corresponding sub-table can be found directly by the name of the sub-table.

[0095] Step 302: The second server calls the first data query interface based on the data update message to obtain target data from the updated map data.

[0096] Here, the first data query interface is provided by the first server, so that the second server can query the data in the database to obtain the target data in the updated map data.

[0097] In some embodiments, the data update message is parsed to obtain a data index set; based on the data index set, a first data query interface is called to query the target data set to obtain updated map data; and the target data is obtained from the updated map data.

[0098] In actual implementation, the data index set includes a first data index and a second data index. The second server can call the first data interface based on the first data index and the second data index, so that the first server determines the target data set containing the updated map data based on the first data index, and queries the updated map data from the target data set based on the second data set, thereby obtaining the target data in the updated map data. Here, the target data can be all the data of the updated map data, or part of the data in the updated map data.

[0099] In some embodiments, the second server can obtain updated map data in the following manner: when multiple data sets are divided into multiple city sub-tables based on the city as the classification dimension, a data query request carrying a data index set is sent through a first data query interface to locate the target city sub-table corresponding to the updated map data based on the first data index, and to locate the position of the updated map data in the target city sub-table based on the second data index; and the returned updated map data is received.

[0100] For example, Figure 4 A schematic diagram of data exchange based on map data provided by an embodiment of the present invention is shown in FIG. Figure 4 , the first server stores the map data obtained from other servers and the map data obtained from HDFS in the database, and provides a first data query interface for other servers to query the map data in the database. Among them, the database of the first server includes multiple city sub-tables, and the second server can send a data query request through the first data query interface, so that the first server determines the city sub-table corresponding to the updated map data, and then queries the updated map data in the target city sub-table based on the second data index.

[0101] In some embodiments, the second server can obtain updated map data in the following manner: when multiple data sets are multiple city-facility sub-tables obtained by dividing the data into city and facility type as classification dimensions, a data query request carrying a data index set is sent through a first data query interface to locate the target city-facility sub-table corresponding to the updated map data based on the first data index, and locate the position of the updated map data in the target city sub-table based on the second data index; and receive the returned updated map data.

[0102] In actual implementation, the city-facility sub-table is further divided into multiple facility type sub-tables, such as dividing the xx city sub-table into xx-bank sub-table, xx-school sub-table, xx-hospital sub-table, etc. For example, Figure 5 A schematic diagram of data exchange based on map data provided by an embodiment of the present invention is shown in FIG. Figure 5, the first server stores the map data obtained from other servers and the map data obtained from HDFS in the database, and provides a first data query interface for other servers to query the map data in the database. The database of the first server includes multiple sub-tables, each of which stores map data of a certain facility type in a certain city, such as the xx-bank sub-table, which is used to store map data corresponding to banks in xx city. The second server can send a data query request through the first data query interface, so that the first server determines the city sub-table corresponding to the updated map data, and then queries the updated map data in the target city sub-table based on the second data index.

[0103] In some embodiments, the target data is data corresponding to the point of interest, and the second server can obtain the target data in the following manner: extracting keywords from the updated map data, where the keywords correspond to the points of interest; based on the keywords, extracting map data corresponding to the points of interest from the updated map data as the target data.

[0104] Here, Point of Interest (POI) refers to all geographical objects that can be abstracted as points, especially some geographical entities that are closely related to people's lives, such as schools, banks, restaurants, gas stations, hospitals, supermarkets, etc. Each POI contains four aspects of information: name, category, coordinates, and classification.

[0105] In actual implementation, keywords corresponding to points of interest, such as bank, hospital, etc., are extracted from the names of updated map data. If the keywords are included, the map data containing the keywords are extracted as target data. For example, if the keyword is "bank", the map data corresponding to "XX bank" is extracted from the map data as target data.

[0106] Step 303: The second server stores the target data in a database.

[0107] Here, the database is used for querying and obtaining the target data through the second data query interface. In actual implementation, the second server stores the target data in the database so that other servers can query and obtain the target data through the second data query interface.

[0108] It should be noted that, in some embodiments, other servers can query all the data in the database corresponding to the second server through the second data query interface. For example, the first server can obtain the map data stored in the database of the second server through the second data query interface. In this way, the first server and the second server can exchange data through the first data query interface and the second data query, that is, the first server can obtain the map data of the second server, and the second server can also obtain the map data of the first server.

[0109] In some embodiments, the second server can store the target data value in a database in the following manner: determine the data category to which the target data belongs; based on the data category to which the target data belongs, store the target data in a data set corresponding to the data category in the database; generate a third data index corresponding to the target data, and the data index set indicates the storage order or storage time of the target data.

[0110] In actual implementation, the database of the second server is similar to the database of the first server, and both store multiple data sets, and the multiple data sets are divided based on at least one data category. In some embodiments, the data sets in the database of the second server correspond one-to-one to the data sets in the database of the first server. The second server can directly determine the data set for storing the target data based on the target data set in the database of the first server.

[0111] In some embodiments, when the data set is in the form of a sub-table, the ID field of the third data index is set to the auto-increment form, i.e., AUTO_INCREMENT. Then, when inserting a row of data, there is no need to specify the ID, and the data table will be filled according to the previous ID value + 1. In this way, when adding records, there is no need to specify the ID field, and there is no need to worry about the duplication of the primary key; because the ID field is automatically numbered, the speed is fast, and it grows incrementally and is stored in order, which is very beneficial for retrieval; and the ID field is digital, takes up little space, is easy to sort, and is also convenient to pass in the program.

[0112] In some embodiments, the second server can obtain the full map data of the first server: receive an acquisition instruction for the full map data; based on the acquisition instruction, call the first data query interface to obtain the full map data by performing a data query method of paging query on each data set separately.

[0113] In actual implementation, since the amount of map data returned at one time is limited, it is necessary to obtain the full amount of map data through paging query.

[0114] In some embodiments, a paging query request for the full amount of map data is sent through the first data query interface, the paging query request is used to request a query for a target amount of map data in a target location interval; and the returned target amount of map data is received.

[0115] Since the paging query method provided by the database itself adopts the form of limit N, OFFSET M, that is, first scan N rows, and then fetch M rows. For this type of operation, fetching the first few rows of data will be fast, but the more records are scanned, the worse the database performance will be, because the larger N is, the more data the database needs to scan to locate the specific N rows, which consumes a lot of IO cost and time cost. For example, Figure 6 For a schematic diagram of paging query provided for related technologies, see Figure 6 , there are 10 rows of data records in the data set, and the 9th and 10th rows need to be taken. Then, the database needs to scan the data from rows 1 to 10 line by line, and then remove the data from rows 1 to 8 to get the data from rows 9 and 10.

[0116] In actual implementation, each data set uses a self-incrementing ID to establish a data index. When querying the map data of the target data volume in the target location interval, the map data of the target data volume in the target location interval is directly determined based on the data index. For example, Figure 7 A schematic diagram of a paging query provided by an embodiment of the present invention is shown in FIG. Figure 7 , there are 10 rows of data records in the data set, and the 9th and 10th rows need to be obtained. Then, the 9th and 10th rows can be directly located according to the data index without obtaining the data of each row. In this way, the efficiency of obtaining the full amount of data can be improved.

[0117] In some embodiments, the second server may acquire the target data or the full amount of data through Scrapy.

[0118] Here, Scrapy is an application framework designed for crawling website data and extracting structured data. Scrapy can easily implement a crawler to obtain the required data. Scrapy includes six major components: debugger, downloader, crawler, middleware, entity pipeline and Scrapy engine.

[0119] Among them, the Scrapy engine is responsible for controlling the flow of data in all components of the system and triggering events when corresponding actions occur; the scheduler accepts requests from the engine and queues them so that they can be provided to the engine when the engine requests them later; the downloader is responsible for obtaining page data and providing it to the engine, and then to the crawler; the crawler is a class written by Scrapy users to analyze page data and extract items or additional follow-up uniform resource locators; the pipeline is responsible for processing the items extracted by the spider; the downloader middleware is a specific hook between the engine and the downloader, which processes the page data passed by the downloader to the engine; the spider middleware is a specific hook between the engine and the spider, which processes the input and output of the crawler. In some embodiments, when the second server obtains the target data, the terminal corresponding to the second server can update the interface displaying the target data in a timely manner.

[0120] Exemplarily, the target data is POI data, and the target data is added to the database of the first server. Fig. 8A and Figure 8B A schematic diagram of the interface for POI data recommendation provided by an embodiment of the present invention, see Fig. 8A Before obtaining the target data, only Shop A and Shop B are recommended near the user's location; see Figure 8B After obtaining the target data, the services and shops C at the user's location are recommended. In this way, the POI data recommendation service provided to the user can be updated in time, providing the user with richer recommendation services.

[0121] Exemplarily, the target data is POI data, and the target data is modified in the database of the first server. Fig.9A and Fig. 9B A schematic diagram of the interface for POI data recommendation provided by an embodiment of the present invention, see Fig.9A , before obtaining the target data, store A is recommended near the user's location, but when store A is replaced by store B; see Fig. 9B , because the target data is obtained in time, the display of the map can be updated in time according to the obtained target data, and store A is replaced by store B. In this way, the POI data recommendation service provided to the user can be updated in time, providing the user with a more accurate recommendation service.

[0122] In some embodiments, after acquiring the target data, the second server may also combine blockchain technology to store the target data in the blockchain network to back up the target data, which will be described in detail below.

[0123] Here, after acquiring the target data, a transaction for storing the target data is generated, and the generated transaction is submitted to the node of the blockchain network, so that the node stores the corresponding target data to the blockchain network after reaching consensus on the transaction; before storing it in the blockchain network, the server may also obtain summary information of the target data corresponding to the target data; and store the obtained summary information of the target data in the blockchain network.

[0124] See also Fig.10 , Fig.10 The application architecture diagram of the blockchain network provided for the embodiment of the present invention includes a business entity 200, an authentication center 500, and a blockchain network 600 (consensus nodes 610-1 to consensus nodes 610-3 are shown as an example), which are described below respectively.

[0125] The types of blockchain network 600 are flexible and diverse, for example, it can be any one of a public chain, a private chain or a consortium chain. Taking a public chain as an example, any electronic device of a business subject, such as a user terminal and a server, can access the blockchain network 600 without authorization; taking a consortium chain as an example, after obtaining authorization, the electronic device (such as a terminal / server) under the jurisdiction of the business subject can access the blockchain network 600, and at this time, it becomes a server node in the blockchain network 600.

[0126] In some embodiments, the server node can only serve as an observer of the blockchain network 600, that is, to provide support for business entities to initiate transactions (for example, for storing data on the chain or querying data on the chain). For the functions of the consensus node 610 of the blockchain network 600, such as sorting function, consensus service and account book function, the server node can implement them by default or selectively (for example, depending on the specific business needs of the business entity). Thus, the data and business processing logic of the business entity can be migrated to the blockchain network 600 to the greatest extent, and the credibility and traceability of the data and business processing process can be achieved through the blockchain network 600.

[0127] The consensus node in the blockchain network 600 receives transactions submitted by the server node of the business entity 200, executes the transactions to update the ledger or query the ledger, and various intermediate results or final results of the executed transactions can be returned to the server node of the business entity for display.

[0128] For example, the server node 210 can subscribe to events of interest in the blockchain network 600, such as transactions occurring in a specific organization / channel in the blockchain network 600, and the consensus node 610 pushes the corresponding transaction notification to the server node 210, thereby triggering the corresponding business logic in the server node 210.

[0129] The following uses the example of a business entity accessing a blockchain network to redeem points to illustrate an exemplary application of blockchain.

[0130] See also Fig.10 The business subject 200 involved in the data exchange registers with the authentication center 500 to obtain a digital certificate. The digital certificate includes the business subject's public key and the digital signature signed by the authentication center 500 on the business subject's public key and identity information. It is used to attach to the transaction together with the business subject's digital signature for the transaction and is sent to the blockchain network for the blockchain network to take out the digital certificate and signature from the transaction, verify the reliability of the message (i.e., whether it has not been tampered with) and the identity information of the business subject who sent the message. The blockchain network will verify based on the identity, such as whether it has the authority to initiate a transaction. The client running on the electronic device (such as a terminal or server) under the jurisdiction of the business subject can request access to the blockchain network 600 and become a server node.

[0131] The server node 210 of the business entity 200 is used for data exchange. For example, a data update message indicating the existence of updated map data is received, and the data update message carries a data index set, and the data index set includes a first data index and a second data index; wherein the first data index is used to locate a target data set containing updated map data from multiple data sets, and the multiple data sets are classified according to at least one classification dimension; the second data index is used to locate the updated map data in the target data set; based on the data update message, the first data query interface is called to obtain the target data from the updated map data; and the obtained target data is stored in the blockchain network 600.

[0132] Among them, the operation of sending the target data to the blockchain network 600 can be pre-set in the server node 210 business logic, when the target data is obtained in the updated map data, the server node 210 automatically sends the target data to the blockchain network 600, or the business personnel of the business subject 200 can log in to the server node 210, manually package the target data, and send it to the blockchain network 600. When sending, the server node 210 generates a transaction corresponding to the storage operation according to the corresponding target data, and specifies the smart contract to be called to implement the storage operation and the parameters passed to the smart contract in the transaction. The transaction also carries the digital certificate of the server node 210 and the signed digital signature (for example, the summary of the transaction is encrypted using the private key in the digital certificate of the server node 210), and broadcasts the transaction to the consensus node 610 in the blockchain network 600.

[0133] When the consensus node 610 in the blockchain network 600 receives a transaction, it verifies the digital certificate and digital signature carried in the transaction. After successful verification, it confirms whether the business subject 200 has transaction authority based on the identity of the business subject 200 carried in the transaction. Any verification judgment in the digital signature and authority verification will cause the transaction to fail. After successful verification, the node 610 signs its own digital signature (for example, using the private key of node 610-1 to encrypt the summary of the transaction) and continues to broadcast in the blockchain network 600.

[0134] After receiving the successfully verified transaction, the consensus node 610 in the blockchain network 600 fills the transaction into a new block and broadcasts it. When the consensus node 610 in the blockchain network 600 broadcasts a new block, it will perform a consensus process on the new block. If the consensus is successful, the new block will be appended to the end of the blockchain stored by itself, and the state database will be updated according to the result of the transaction, and the transaction in the new block will be executed: for the transaction submitted to update the collection record, the collection record will be added to the state database.

[0135] As an example of blockchain, see Fig.11 , Fig.11 The schematic diagram of the structure of the blockchain in the blockchain network 600 provided in the embodiment of the present invention is that the header of each block can include the hash value of all transactions in the block, and also includes the hash value of all transactions in the previous block. The newly generated transaction records are filled into the block and after the consensus of the nodes in the blockchain network, they will be appended to the end of the blockchain to form a chain growth. The chain structure between blocks based on hash values ​​ensures the anti-tampering and anti-counterfeiting of transactions in the block.

[0136] The following describes an exemplary functional architecture of a blockchain network provided by an embodiment of the present invention. Fig.10 , Fig.12 The functional architecture diagram of the blockchain network 600 provided for an embodiment of the present invention includes an application layer 601, a consensus layer 602, a network layer 603, a data layer 604 and a resource layer 605, which are described below respectively.

[0137] The resource layer 605 encapsulates the computing resources, storage resources, and communication resources of each node 610 in the blockchain network 600.

[0138] The data layer 604 encapsulates various data structures for implementing the ledger, including the blockchain implemented as files in the file system, the key-value state database, and the existence proof (such as the hash tree of transactions in the block).

[0139] The network layer 603 encapsulates the functions of point-to-point (P2P) network protocol, data transmission mechanism and data verification mechanism, access authentication mechanism and business subject identity management.

[0140] Among them, the P2P network protocol realizes the communication between nodes 610 in the blockchain network 600, the data propagation mechanism ensures the propagation of transactions in the blockchain network 600, and the data verification mechanism is used to realize the reliability of data transmission between nodes 610 based on cryptographic methods (such as digital certificates, digital signatures, public / private key pairs); the access authentication mechanism is used to authenticate the identity of the business subject joining the blockchain network 600 according to the actual business scenario, and grant the business subject the right to access the blockchain network 600 when the authentication is passed; the business subject identity management is used to store the identity of the business subject allowed to access the blockchain network 600, and the authority (such as the type of transaction that can be initiated).

[0141] The consensus layer 602 encapsulates the mechanism (i.e., consensus mechanism) for the nodes 610 in the blockchain network 600 to reach consensus on blocks, transaction management, and account management functions. The consensus mechanism includes consensus algorithms such as POS, POW, and DPOS, and supports pluggable consensus algorithms.

[0142] Transaction management is used to verify the digital signature carried in the transaction received by the verification node 610, verify the identity information of the business subject, and determine whether it has the authority to conduct transactions based on the identity information (read relevant information from the business subject identity management); for business subjects that have obtained authorization to access the blockchain network 600, they all have digital certificates issued by the certification center. The business subject uses the private key in its own digital certificate to sign the submitted transaction, thereby declaring its legal identity.

[0143] Ledger management is used to maintain the blockchain and state database. For the blocks that have reached consensus, they are appended to the end of the blockchain; the transactions in the blocks that have reached consensus are executed, and when the transaction includes an update operation, the key-value pairs in the state database are updated; when the transaction includes a query operation, the key-value pairs in the state database are queried and the query results are returned to the server node of the business entity. Supports query operations on the state database in multiple dimensions, including: querying blocks based on block serial numbers (such as transaction hash values); querying blocks based on block hash values; querying blocks based on transaction serial numbers; querying transactions based on transaction serial numbers; querying business subject account data based on business subject account numbers (serial numbers); querying blockchains in channels based on channel names.

[0144] The application layer 601 encapsulates various services that can be implemented in the blockchain network, including transaction traceability, evidence storage, and verification.

[0145] The present invention receives service points of corresponding target users pushed by different service systems, and in response to a collection instruction for the service points, collects the service points pushed by at least two service systems into the points account of the target user. In this way, since the service points pushed by different service systems are integrated, it is possible to collect the service points pushed by multiple service systems based on one collection instruction of the user without having to collect them one by one, so that the user can quickly collect the points scattered in discrete point systems, thereby improving the user experience.

[0146] Fig.13 is a flow chart of a data exchange method based on map data provided by an embodiment of the present invention, see Fig.13 , the data exchange method based on map data provided by the embodiment of the present invention includes:

[0147] Step 701: The second server receives an instruction to obtain the full amount of map data in the first server.

[0148] Here, when the first server and the second server interact with each other for the first time, an administrator may trigger an instruction to obtain the full amount of map data in the first server through a terminal.

[0149] Step 702: The second server calls the first data query interface based on the acquisition instruction and sends a paged query request for the full map data.

[0150] Here, the second server provides a first data query interface for the first server to query the map data in the database of the second server. In actual implementation, since the amount of map data returned at one time is limited, it is necessary to obtain the full amount of map data through paging query.

[0151] Step 703: The first server performs paging query on each city sub-table based on the paging query request, and returns the map data obtained by the query.

[0152] Here, multiple city sub-tables are established in the database of the first server. The city sub-tables are obtained based on the city division to reduce the data volume of a single sub-table. For example, if the data volume of map data is greater than 50 million, then multiple city sub-tables are obtained based on the city as the classification dimension, and the order of magnitude of each city sub-table is reduced to the million level. In this way, the efficiency of data query can be improved.

[0153] In actual implementation, the first server obtains the map data of the target data volume each time based on the paging query request, and returns it to the second server until the full amount of map data is obtained.

[0154] Step 704: The second server stores the returned map data.

[0155] In actual implementation, the database of the second server also establishes multiple city sub-tables, corresponding to the city sub-tables of the first server. After obtaining the map data returned by the first server, the obtained map data is stored in the corresponding city sub-table based on the city to which the map data belongs. Here, the second server provides a second data query interface for the first server to query the map data in the database of the second server to achieve data exchange.

[0156] Step 705: When there is map data update on the first server, a data update message indicating the existence of updated map data is sent to the first server.

[0157] Step 706: The second server parses the data update message to obtain a data index set.

[0158] Here, the data index set includes a first data index and a second data index; wherein the first data index is used to locate the target city sub-table containing updated map data from multiple city sub-tables; and the second data index is used to locate the position of new map data from the target city sub-table.

[0159] In this way, by receiving a data update message indicating the existence of updated map data, it is possible to promptly learn that the map data is updated, so that the updated map data can be acquired from the updated map data as quickly as possible, thereby improving the timeliness of data acquisition.

[0160] Step 707: The second server calls the first data query interface based on the data index set and sends a query request carrying the data index set.

[0161] Step 708: The first server locates the target city sub-table corresponding to the updated map data based on the first data index.

[0162] Step 709: The first server locates the position of the updated map data in the target city sub-table based on the second data index.

[0163] Step 710: The first server returns updated map data.

[0164] Step 711: The second server determines the city to which the updated map data belongs.

[0165] Step 712: The second server stores the updated map data in a city sub-table of a corresponding data category in the database based on the city to which the updated map data belongs.

[0166] Step 713: The second server generates a third data index corresponding to the updated map data, where the third data index indicates the storage order or storage time of the updated map data.

[0167] In actual implementation, the ID field of the third data index is set to the auto-increment form, that is, AUTO_INCREMENT. Then, when a row of data is inserted, there is no need to specify the ID, and the data table will be filled according to the previous ID value + 1.

[0168] The following describes an exemplary application of an embodiment of the present invention in a practical application scenario. Fig.14 A flow chart of a data exchange method based on map data provided by an embodiment of the present invention is shown below. Fig.14 The data exchange method based on map data provided by an embodiment of the present invention is described.

[0169] Since map data is usually stored in HDFS, it is first necessary to obtain the map data from HDFS and obtain multiple city sub-tables based on the city classification dimension.

[0170] Here, by classifying the acquired map data and obtaining multiple city sub-tables, the data volume of a single sub-table can be reduced. For example, if the data volume of the map data is greater than 50 million, then multiple city sub-tables are obtained based on the city as the classification dimension, and the number of each city sub-table is reduced to millions, which can improve the efficiency of data query. In actual implementation, each sub-table is named after the city.

[0171] In some embodiments, multiple sub-tables may be obtained according to other classification dimensions, such as classification according to facility types, including: medical care, food, shopping, etc.

[0172] Here, the database provides a data query interface, so that other servers can query and obtain the target data to be acquired through the second data query interface.

[0173] In some embodiments, a request for obtaining full map data sent by the cooperation platform through a data query interface is received, and sub-table queries are performed on each city sub-table respectively.

[0174] It should be noted that the paging query method provided by the database itself adopts the form of limit N, OFFS ET M, that is, first scan N rows, and then fetch M rows. For such operations, fetching the first few rows of data will be very fast, but the more records are scanned, the worse the performance of the database will be, because the larger N is, the more data the database needs to scan to locate the specific N rows, which consumes a lot of IO cost and time cost. The embodiment of the present invention uses the form of self-incrementing ID to establish a data index, so that the page turning position can be determined directly based on the range of ID, so that the efficiency of paging query can be improved.

[0175] Here, after indexing by ID, the single table query takes no more than 100ms, while the paging query method provided by the database itself takes about 20s.

[0176] Since each full data update will cause a large number of deletion and update operations to lock the table, locking the table will make the interface inaccessible and affect data acquisition, so the incremental data update method does not affect the real-time data update; this way, the data synchronization time is fast and efficient. In some embodiments, when there is a map data update on the cooperation platform, such as map data addition, modification, etc., a data update message will be pushed, and the message carries the data index of the updated map data. In this way, the update of the map data of the cooperation platform can be timely known through data reception, so as to obtain the updated map data based on the data index as soon as possible, thereby updating its own data.

[0177] It should be noted that when there is data update in the map data in its own database, a data update message will also be pushed to the cooperation platform so that the cooperation platform can obtain the updated map data in time.

[0178] In some embodiments, the server may use Scrapy to obtain target data or full data.

[0179] The embodiment of the present invention gets rid of the method of exchanging map data using only offline files, and realizes data exchange through a real-time interface. In this way, the query rate per second (QPS) of the interface can reach about 300. In the case of 50 million full data, the full data acquisition can be completed in about 4-6 hours, and the stability of data acquisition is 99.99%.

[0180] The following is a description of an exemplary structure of a map data-based data exchange device 255 provided in an embodiment of the present invention implemented as a software module. Fig.15 , Fig.15 The schematic diagram of the structure of the data exchange device 255 based on map data provided by the embodiment of the present invention is shown in FIG. Fig.15 , the data exchange device 255 based on map data provided by the embodiment of the present invention includes:

[0181] A receiving module 2551 is configured to receive a data update message indicating the existence of updated map data, wherein the data update message carries a data index set, and the data index set includes a first data index and a second data index;

[0182] The first data index is used to locate a target data set from a plurality of data sets, the target data set includes updated map data, and the plurality of data sets are classified according to at least one classification dimension; the second data index is used to locate the updated map data in the target data set;

[0183] An acquisition module 2552 is used to call a first data query interface based on the data update message to acquire target data from the updated map data;

[0184] The storage module 2553 is used to store the target data in a database, and the database is used to query and obtain the target data through a second data query interface.

[0185] In some embodiments, the acquisition module is further used to parse the data update message to obtain the data index set;

[0186] Based on the data index set, calling a first data query interface to query the target data set to obtain the updated map data;

[0187] Target data is acquired from the updated map data.

[0188] In some embodiments, the acquisition module 2552 is further used to send a data query request carrying the data index set through a first data query interface when the multiple data sets are multiple city sub-tables obtained by dividing the multiple data sets based on the city as a classification dimension, so as to locate the target city sub-table corresponding to the updated map data based on the first data index, and locate the position of the updated map data in the target city sub-table based on the second data index;

[0189] The updated map data is received.

[0190] In some embodiments, the acquisition module 2552 is further used to extract keywords from the updated map data, where the keywords correspond to points of interest;

[0191] Based on the keyword, map data corresponding to the point of interest is extracted from the updated map data as the target data.

[0192] In some embodiments, the storage module 2552 is further used to determine the data category to which the target data belongs;

[0193] Based on the data category to which the target data belongs, storing the target data in a data set corresponding to the data category in a database;

[0194] A third data index corresponding to the target data is generated, wherein the third data index indicates a storage order or a storage time of the target data.

[0195] In some embodiments, the receiving module 2551 is further used to receive an acquisition instruction for the full map data;

[0196] The acquisition module is further used to call the first data query interface based on the acquisition instruction, so as to obtain the full map data in a data query manner of performing paging query on each of the data sets respectively.

[0197] In some embodiments, the acquisition module 2552 is further used to send a paging query request for the full amount of map data through the first data query interface, and the paging query request is used to request to query the map data of the target data amount of the target location interval;

[0198] The target data volume of map data is received.

[0199] An embodiment of the present invention provides a storage medium storing executable instructions, wherein the executable instructions are stored. When the executable instructions are executed by a processor, the processor will be caused to execute the method provided by the embodiment of the present invention, for example, Figure 3 The method shown.

[0200] In some embodiments, the storage medium may be a memory such as FRAM, ROM, PROM, EPROM, EE PROM, flash memory, magnetic surface memory, optical disk, or CD-ROM; or may be various devices including one or any combination of the above memories.

[0201] In some embodiments, executable instructions may be in the form of a program, software, software module, script or code, written in any form of programming language (including compiled or interpreted languages, or declarative or procedural languages), and may be deployed in any form, including as a stand-alone program or as a module, component, subroutine or other unit suitable for use in a computing environment.

[0202] As an example, executable instructions may, but need not, correspond to a file in a file system, may be stored as part of a file that stores other programs or data, such as in one or more scripts in a HyperText Markup Language (HTML) document, in a single file dedicated to the program in question, or in multiple coordinated files (e.g., files storing one or more modules, subroutines, or code portions).

[0203] By way of example, executable instructions may be deployed to be executed on one computing device, or on multiple computing devices located at one site, or on multiple computing devices distributed across multiple sites and interconnected by a communication network.

[0204] The above description is only an embodiment of the present invention and is not intended to limit the protection scope of the present invention. Any modification, equivalent replacement and improvement made within the spirit and scope of the present invention are included in the protection scope of the present invention.

Claims

1. A data exchange method based on map data, characterized in that: Applied to a second server, the platform corresponding to the second server and the platform corresponding to the first server are in a data sharing relationship; The method comprises: receiving a data update message sent by the first server indicating the existence of updated map data, wherein the data update message carries a data index set, and the data index set includes a first data index and a second data index; The first data index is used to locate a target data set from a plurality of data sets, the target data set includes the updated map data, and the plurality of data sets are obtained by the first server by classifying the acquired map data according to at least one classification dimension; the second data index is used to locate the updated map data in the target data set; Parsing the data update message to obtain the data index set; Based on the data index set, calling a first data query interface provided by the first server, and sending a query request carrying the data index set, so that the first server queries the target data set based on the first data index to obtain the updated map data; Acquiring target data from the updated map data, wherein the target data is map data corresponding to the point of interest in the updated map data; The target data is stored in a database, and the database is used to query and obtain the target data through a second data query interface.

2. The method according to claim 1, characterized in that The calling, based on the data index set, a first data query interface provided by the first server so that the first server queries and obtains the updated map data from the target data set based on the first data index includes: When the multiple data sets are multiple city sub-tables obtained by dividing the data using cities as a classification dimension, a data query request carrying the data index set is sent through a first data query interface provided by the first server, so that the first server locates a target city sub-table corresponding to the updated map data based on the first data index, and locates a position of the updated map data in the target city sub-table based on the second data index; Receive the updated map data returned by the first server.

3. The method according to claim 1, characterized in that The acquiring target data from the updated map data comprises: performing keyword extraction on the updated map data, wherein the keywords correspond to points of interest; Based on the keyword, map data corresponding to the point of interest is extracted from the updated map data as the target data.

4. The method according to claim 1, characterized in that The storing the target data in a database comprises: Determining the data category to which the target data belongs; Based on the data category to which the target data belongs, storing the target data in a data set corresponding to the data category in a database; A third data index corresponding to the target data is generated, wherein the third data index indicates a storage order or a storage time of the target data.

5. The method according to claim 1, characterized in that The method further comprises: Receiving an acquisition instruction for full map data; Based on the acquisition instruction, the first data query interface is called to obtain the full map data in a data query manner by performing paging query on each of the data sets.

6. The method according to claim 5, characterized in that The calling of the first data query interface to obtain the full map data in a data query manner of performing paging query on each of the data sets respectively includes: Sending a paging query request for the full amount of map data through the first data query interface, wherein the paging query request is used to request a query for a target amount of map data in a target location interval; The target data volume of map data is received.

7. The method according to claim 1, characterized in that The method further comprises: The target data is stored in the blockchain network.

8. A data exchange device based on map data, characterized in that: Applied to a second server, the platform corresponding to the second server and the platform corresponding to the first server are in a data sharing relationship; The device comprises: a receiving module, configured to receive a data update message sent by the first server indicating the existence of updated map data, wherein the data update message carries a data index set, and the data index set includes a first data index and a second data index; The first data index is used to locate a target data set from a plurality of data sets, the target data set includes the updated map data, and the plurality of data sets are obtained by the first server by classifying the acquired map data according to at least one classification dimension; the second data index is used to locate the updated map data in the target data set; an acquisition module, configured to parse the data update message to obtain the data index set; based on the data index set, call a first data query interface provided by the first server, and send a query request carrying the data index set, so that the first server queries the target data set to obtain the updated map data based on the first data index; and obtain target data from the updated map data, wherein the target data is map data corresponding to the point of interest in the updated map data; The storage module is used to store the target data in a database, and the database is used to query and obtain the target data through a second data query interface.

9. A computer-readable storage medium, characterized in that: Executable instructions are stored, which are used to cause the processor to execute and implement the data exchange method based on map data as described in any one of claims 1 to 7.

10. An electronic device, characterized in that: include: A memory for storing executable instructions; The processor is used to implement the data exchange method based on map data as described in any one of claims 1 to 7 when executing the executable instructions stored in the memory.

Citation Information

Patent Citations

  • System, method and device for updating index

    CN107315825A

  • Querying data set tables in a non-transactional database

    US9633074B1

  • Data processing method, device, and system, and information acquisition apparatus

    WO2018119587A1