POI (Point of Interest) retrieval method and device, electronic equipment, storage medium and program product
By building a tree index structure and an integrated storage and computing architecture, the problem of large-scale point of interest search is solved, efficient and real-time point of interest search is achieved, and low-latency needs of large-scale real-time search systems are met.
Patent Information
- Application Number
- CN202510622213.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-14
- Publication Date
- 2025-08-22
AI Technical Summary
In the prior art, the search delay of the point of interest is relatively large, which is difficult to meet the low latency requirements of large-scale real-time search systems. Especially when the number of points of interest is large, the search delay overhead is significant.
A tree index structure is used to build a real-time set of interest points, and search through an integrated storage and computing architecture, eliminating the data network transmission overhead and efficient search using the tree index structure.
It realizes efficient and real-time interest search, reduces search delay, improves search performance, and is easy to apply in large-scale real-time search systems.
Smart Images

Figure CN120524014A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of data search technology, and in particular to a method, device, electronic device, storage medium, and program product for retrieving points of interest. Background Art
[0002] With the rapid development of data search technology, various life service search services have emerged. Currently, the main search requirement in life service search services is to associate search results with the user's nearest point of interest (POI) in real time to enhance the user's search experience. However, due to the large number of POIs, the retrieval latency is long, which makes it difficult to meet the low latency requirements of large-scale real-time search systems. Summary of the Invention
[0003] In view of this, the present disclosure provides a method, apparatus, electronic device, storage medium, and program product for retrieving points of interest to solve the problem of large delay in retrieving points of interest.
[0004] In a first aspect, the present disclosure provides a method for retrieving points of interest, including: obtaining a real-time point of interest set corresponding to a target retrieval request; constructing a tree index structure of the real-time point of interest set based on the positions of each point of interest in the real-time point of interest set; storing the real-time point of interest set to a target location according to the tree index structure; and retrieving the target point of interest corresponding to the target retrieval request in the real-time point of interest set stored at the target location according to the tree index structure.
[0005] In the second aspect, the present disclosure provides an interest point retrieval device, including: an acquisition module for acquiring a real-time interest point set corresponding to a target retrieval request; an index construction module for constructing a tree index structure of the real-time interest point set based on the positions of each interest point in the real-time interest point set; a storage module for storing the real-time interest point set to a target location according to the tree index structure; and a retrieval module for retrieving a target interest point corresponding to the target retrieval request in the real-time interest point set stored at the target location according to the tree index structure.
[0006] In a third aspect, the present disclosure provides an electronic device comprising: a memory and a processor, the memory and the processor being communicatively connected to each other, the memory storing computer instructions, and the processor executing the interest point retrieval method of the first aspect or any corresponding embodiment thereof by executing the computer instructions.
[0007] In a fourth aspect, the present disclosure provides a computer-readable storage medium having computer instructions stored thereon, the computer instructions being used to enable a computer to execute the point of interest retrieval method of the first aspect or any corresponding embodiment thereof.
[0008] In a fifth aspect, the present disclosure provides a computer program product, comprising computer instructions, which are used to enable a computer to execute the point of interest retrieval method of the first aspect or any corresponding embodiment thereof.
[0009] The point of interest retrieval method, device, electronic device, storage medium and program product provided by the embodiments of the present disclosure obtain a real-time point of interest set corresponding to a target retrieval request to associate the search results of the target retrieval request with the real-time point of interest, and then, through the position of each point of interest in the real-time point of interest set, construct a corresponding tree index structure, that is, use the full amount of points of interest to construct the tree index structure, which is conducive to ensuring the balance of the tree index structure, thereby ensuring the accuracy of subsequent point of interest retrieval using the tree index structure and improving the efficiency of point of interest retrieval. At the same time, the real-time point of interest set is stored in the target location according to the tree index structure, and the target point of interest corresponding to the target retrieval request is retrieved in the real-time point of interest set stored at the target location, thereby realizing the storage and computing integration of point of interest retrieval, eliminating data network transmission overhead, further improving the retrieval performance of the target point of interest, reducing the retrieval delay of the target point of interest, facilitating efficient and real-time point of interest retrieval, and facilitating implementation in large-scale real-time search systems. BRIEF DESCRIPTION OF THE DRAWINGS
[0010] In order to more clearly illustrate the specific embodiments of the present disclosure or the technical solutions in the related technologies, the following briefly introduces the drawings required for use in the specific embodiments or related technical descriptions. Obviously, the drawings described below are some embodiments of the present disclosure. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0011] Figure 1 is a schematic diagram of an application scenario according to an embodiment of the present disclosure;
[0012] Figure 2 is a flowchart of a method for retrieving points of interest according to an embodiment of the present disclosure;
[0013] Figure 3 is a flowchart of another method for retrieving points of interest according to an embodiment of the present disclosure;
[0014] Figure 4 is a flowchart of another method for retrieving points of interest according to an embodiment of the present disclosure;
[0015] Figure 5 is a structural block diagram of a point of interest retrieval device according to an embodiment of the present disclosure;
[0016] Figure 6 Schematic diagram of the hardware structure of an electronic device according to an embodiment of the present disclosure. DETAILED DESCRIPTION
[0017] To make the purpose, technical solutions, and advantages of the embodiments of the present disclosure more clear, the technical solutions in the embodiments of the present disclosure will be clearly and completely described below in conjunction with the drawings in the embodiments of the present disclosure. Obviously, the described embodiments are part of the embodiments of the present disclosure, not all of the embodiments. Based on the embodiments of the present disclosure, all other embodiments obtained by those skilled in the art without making creative efforts shall fall within the scope of protection of the present disclosure.
[0018] It is understandable that before using the technical solutions disclosed in the various embodiments of this disclosure, the type, scope of use, usage scenarios, etc. of the personal information involved in this disclosure should be informed to the user and the user's authorization should be obtained in an appropriate manner in accordance with relevant laws and regulations.
[0019] For example, in response to a user's active request, a prompt message is sent to the user to clearly inform the user that the operation requested will require the acquisition and use of the user's personal information. This allows the user to independently choose whether to provide personal information to the electronic device, application, server, storage medium, or other software or hardware that performs the operations of the disclosed technical solution based on the prompt message.
[0020] As an optional but non-limiting implementation, in response to receiving a user's active request, the prompt information may be sent to the user in the form of a pop-up window, in which the prompt information may be presented in text form. Furthermore, the pop-up window may also contain a selection control for the user to select "agree" or "disagree" to provide personal information to the electronic device.
[0021] It is understandable that the above notification and user authorization process are merely illustrative and do not limit the implementation of the present disclosure. Other methods that comply with relevant laws and regulations may also be applied to the implementation of the present disclosure.
[0022] It is understandable that the data involved in this technical solution (including but not limited to the data itself, the acquisition or use of the data) must comply with the requirements of relevant laws, regulations and relevant provisions.
[0023] In the life service search business, there is a large demand to associate the search results (such as group purchase product results) with the points of interest (POI) closest to the user in real time, such as available store POIs, thereby improving the user's search experience and business benefits. Currently, online POI retrieval is mainly carried out through the K-nearest neighbor method. Specifically, K-nearest neighbor retrieval mainly consists of three parts: data production, data storage and calculation, and retrieval algorithm. Among them, data production is mainly responsible for producing all available POI data corresponding to each search result; data storage is responsible for persistent storage of this data and providing an online query interface; the retrieval algorithm is responsible for real-time retrieval of the nearest POI for online search results.
[0024] In terms of data production, offline table data is typically processed using daily batch tasks to generate a list of all POI information associated with each search result, including the POI's primary key, longitude and latitude, and finally loaded into storage media. This daily offline production method lacks timeliness, making it difficult to reflect actions such as adding, deleting, and modifying POI information in real time, which in turn affects the accuracy of search results.
[0025] In terms of data storage and computing, a KV database (such as Redis) is usually used to store the generated data to obtain lower online query latency. The Key is the primary key of the search result, and the Value is the list of all POI information corresponding to the search result. During calculation, the primary key of the search result is used as the key to query the corresponding POI information from the remote database and pull it to the local computing service for subsequent K-nearest neighbor calculation. This storage and computing separation architecture has essential network communication overhead, which is more significant when the data volume is large. Therefore, in large data volume scenarios (such as scenarios with tens of thousands of POIs), in order to reduce the network overhead of data transmission during query, all POIs are usually grouped and stored according to the city code. During query, only the POI list under the user's city code is obtained for subsequent K-nearest neighbor calculation. However, this solution cannot guarantee the global K-nearest neighbor, and the effect is impaired.
[0026] In terms of search algorithms, a brute force algorithm is typically used. A list of all POIs associated with each search result is retrieved from the storage service. The distance between each POI and the user is then calculated using a traversal method combined with a priority queue. The top K results are then returned as the final result. Similarly, this brute force approach suffers from performance disadvantages when the number of POIs is large.
[0027] In summary, in real-world applications, a single search request often requires replacing hundreds of search results with the most recent POI. Furthermore, some results often involve a large number of associated POIs. The resulting increased latency makes it difficult to meet the low-latency requirements of large-scale real-time search systems. Therefore, achieving efficient real-time POI retrieval to meet the low-latency requirements of large-scale real-time search systems remains an urgent issue.
[0028] Based on this, the technical solution disclosed in this disclosure aims to realize real-time POI retrieval based on tree index and storage-computing integrated architecture, so as to achieve ultimate optimization in terms of data timeliness and retrieval performance to meet business needs and system low latency requirements.
[0029] As an optional application scenario of the embodiment of the present disclosure, Figure 1 As shown, the optional application scenario mainly includes a streaming data processing module 101, a streaming tree index construction module 102, a storage and computing integrated retrieval module 103 and a client 104.
[0030] The streaming data processing module 101 is responsible for subscribing to real-time POI data change messages. By subscribing to real-time data change messages, it can detect changes in the POI point set associated with each search result, such as additions, deletions, and modifications, at a minute-by-minute level. By parsing the message content of the real-time data change messages, the POI point set data is formatted into a standard two-dimensional point set. The streaming tree index construction module 102 recursively constructs a tree index structure based on the POI point set data and a tree construction algorithm. It then serializes the index data corresponding to the tree index structure and writes it into the key-value database of the local storage and computing retrieval module 103.
[0031] Specifically, during online retrieval, a retrieval request is obtained from the client 104, and the corresponding tree index data is retrieved from the KV database based on the search result primary key carried in the retrieval request. After deserialization, the user location (such as longitude and latitude) that initiated the retrieval request is used to execute the K nearest neighbor POI retrieval algorithm based on the tree index on the storage and computing integrated retrieval module 103 to obtain the corresponding target POI.
[0032] From the analysis of algorithm complexity, the complexity of the brute force algorithm that traverses all POIs to calculate the K nearest neighbors is O(n*logk), the algorithm complexity of building a tree index is O(n*logn), and the average complexity of the retrieval algorithm based on the tree index is O(k*logn). Compared with the brute force algorithm, the extra tree construction step is a purely offline process and will not be coupled with the online K nearest neighbor retrieval process. Therefore, the tree construction process will not bring the delay overhead of online retrieval. Moreover, in business scenarios, k is usually 1, which is much smaller than the number of POIs n. Therefore, the retrieval efficiency of the POI retrieval based on the tree index is significantly improved. At the same time, this method obtains the target POI of the K nearest neighbors as the global optimal, and compared with obtaining the target POI of the K nearest neighbors after dividing by city code, it also has a significant retrieval effect advantage.
[0033] Since each POI data needs to store latitude and longitude and primary key information, which takes up a total of 24 bytes, when the number of POIs associated with a search result reaches tens of thousands, the total amount of data can reach hundreds of KB (taking 10,000 POIs as an example, the data size is 24*10000 / 1024 ~= 234.375KB). Each search request will generate hundreds of search results, and the total data volume that needs to be obtained from the remote database service can reach tens of MB (taking each search request generating 100 search results as an example, 100*234.375=23437.5kb~=22.9MB).
[0034] In this optional application scenario, the storage-computation integrated retrieval module 103, implemented based on a KV database, retrieves the corresponding tree index data from the local KV database when a user's search request arrives. Subsequent K-nearest neighbor POI search calculations are then performed locally without requiring network transmission. This allows only the K-nearest neighbor POI primary key results to be returned for the search request. Given the large volume of business data, this significantly reduces network transmission overhead, further improving search performance.
[0035] When the tree index structure is written from the streaming tree index construction module 102 to the KV database of the storage and computing integrated retrieval module 103, the tree index structure needs to be serialized, and at the same time, the online retrieval process needs to perform a deserialization operation after taking out the tree index data. Here, the recursive table function of Flatbuffer can be used to complete the Schema definition of the tree structure. Specifically, the tree node contains longitude and latitude, POI primary key, and left and right subtree members defined using the Flatbuffer recursive table function. By using the Flatbuffer protocol to design the tree index Schema, the overhead of serialization and deserialization is reduced, especially the deserialization operation related to the online retrieval process, the overhead is extremely small.
[0036] The streaming data processing module 101, the streaming tree index construction module 102, and the storage-computation integrated retrieval module 103 are deployed in the electronic device, and each module has computing resources or computing capabilities. The electronic device can be a device with computing capabilities. For example, the electronic device can be provided with a processor and a memory, etc., or can be equipped with a dedicated accelerator (such as a graphics processing unit (GPU)). In addition, the electronic device can store and maintain data. Examples of electronic devices may include supercomputers, personal computers, laptop computers, vehicle-mounted computing devices, mobile devices (such as smart phones, tablet computers, etc.), or a combination of any one or more of the above devices. It should be understood that the electronic devices described herein are exemplary and non-restrictive. For example, other different types of electronic devices may also be used.
[0037] According to an embodiment of the present disclosure, an embodiment of a method for retrieving points of interest is provided. It should be noted that the steps shown in the flowchart of the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions, and although a logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in an order different from that shown here.
[0038] In this embodiment, a method for retrieving points of interest is provided, which can be used in electronic devices such as mobile phones, tablet computers, computers, servers, etc. Figure 2 is a flowchart of a method for retrieving points of interest according to an embodiment of the present disclosure. Figure 2 As shown, the process includes the following steps:
[0039] Step S201: Obtain a real-time point of interest set corresponding to a target search request.
[0040] The real-time POI set is a set of POIs updated in real time. The real-time POI set is a set of locations with specific interests or values, such as a set of available stores, a set of tourist attractions, a set of hotels, etc., which is not specifically limited here.
[0041] Specifically, the real-time POI set includes multiple POIs, each of which has a clear geographical location, such as longitude and latitude coordinates, and each POI may also include other information such as address, phone number, and evaluation.
[0042] A target retrieval request is a request initiated by a target subject through a client. Specifically, the client is deployed with an application that provides an interactive interface, through which the target subject can initiate a target retrieval request. Accordingly, the client and the electronic device are connected in communication, and the electronic device can receive the target retrieval request initiated by the target subject and obtain the real-time set of points of interest at the time the target retrieval request was initiated.
[0043] Since the information of each point of interest is not static, electronic devices can subscribe to real-time changes in points of interest. When changes to points of interest are detected (such as addition, deletion, modification, etc.), electronic devices can perceive the latest data of each point of interest, use the latest data to update the point of interest set, and obtain a real-time point of interest set corresponding to the current target retrieval request.
[0044] Step S202: constructing a tree index structure of the real-time point of interest set based on the position of each point of interest in the real-time point of interest set.
[0045] A tree index structure is a tree-like data structure used to retrieve points of interest. Specifically, the tree index structure includes multiple nodes, each of which represents a point in a multidimensional space and contains pointers to its child nodes. For example, the tree index structure can be a KD tree. This tree index structure can be used to quickly find the nearest neighbors of a given point in K-dimensional space, thereby implementing the nearest neighbor search for points of interest for the target search request.
[0046] Specifically, the location of each point of interest represents the geographical location of the point of interest, which can be expressed in longitude and latitude. As described above, each point of interest has a corresponding location representation, and each point of interest is regarded as a node in space. For any node, the space where the current node is located is divided according to a preset dimension (such as longitude), and then the space where the child node corresponding to the current node is located is divided according to another preset dimension (such as latitude).
[0047] For the current real-time point of interest set, the root node is determined according to the position of each point of interest in the real-time point of interest set. Then, different preset dimensions are used alternately as space division axes to divide the space where the current point of interest and its corresponding child nodes are located. The tree structure construction algorithm is recursively called to perform offline construction of the tree index structure, realizing the construction of the tree index structure using all the points of interest in the real-time point of interest set.
[0048] Step S203: storing the real-time point of interest set to a target location according to the tree index structure.
[0049] The target location is the local location where the tree index structure is stored, such as a local KV database. After the tree index structure is constructed, all points of interest in the real-time point of interest set are written to the target location in the form of the tree index structure. This allows for subsequent retrieval of points of interest from the target location, achieving integrated storage and computation of points of interest at the target location, eliminating data network transmission overhead.
[0050] Step S204: searching the target interest point corresponding to the target search request in the real-time interest point set stored at the target location according to the tree index structure.
[0051] The target POI is the POI pointed to by the target search request. Since the real-time POI set is already stored at the target location according to the tree index structure, when a target search request arrives, the tree index data corresponding to the target search request is retrieved from the target location according to the tree index structure. Subsequent target POI retrieval is then completed at the target location without network transmission. For example, the target POI is calculated using a K-nearest neighbor search method, and the top K ranked target POI corresponding to the target search request are returned.
[0052] The interest point retrieval method provided in this embodiment obtains a real-time interest point set corresponding to a target retrieval request to associate the search results of the target retrieval request with the real-time interest points. Then, the corresponding tree index structure is constructed based on the position of each interest point in the real-time interest point set. That is, the tree index structure is constructed using the full amount of interest points, which is conducive to ensuring the balance of the tree index structure, thereby ensuring the accuracy of subsequent interest point retrieval using the tree index structure and improving the efficiency of interest point retrieval. At the same time, the real-time interest point set is stored in the target location according to the tree index structure, and the target interest point corresponding to the target retrieval request is retrieved in the real-time interest point set stored in the target location. This realizes the storage and computing integration of interest point retrieval, eliminates data network transmission overhead, further improves the retrieval performance of the target interest point, reduces the retrieval delay of the target interest point, facilitates efficient and real-time interest point retrieval, and is easy to implement in large-scale real-time search systems.
[0053] In this embodiment, a method for retrieving points of interest is provided, which can be used in electronic devices such as mobile phones, tablet computers, computers, servers, etc. Figure 3 is a flowchart of a method for retrieving points of interest according to an embodiment of the present disclosure. Figure 3 As shown, the process includes the following steps:
[0054] Step S301: Obtain a real-time point of interest set corresponding to a target search request.
[0055] Specifically, the above step S301 includes:
[0056] Step S3011, obtaining a set of historical points of interest.
[0057] The historical POI set is the set of POIs before the target search request is initiated. Specifically, before receiving the target search request, the electronic device can subscribe to changes in each POI. If no changes are detected, the set of unchanged POIs is determined as the historical POI set. If changes are detected, step S3012 is executed to update the POIs.
[0058] Step S3012: If the historical interest points in the historical interest point set are changed, stream data processing is performed on the changed historical interest points in the historical interest point set to update the historical interest point set.
[0059] By subscribing to real-time data change messages for each point of interest, you can detect changes in the point of interest set associated with each target search request at the minute level. For example, you can subscribe to real-time changes in the point of interest set associated with each search request through a message queue.
[0060] Specifically, if a change in a point of interest in the historical point of interest set is detected, the system parses the content of the real-time data change message and formats each point of interest in the point of interest set, converting the real-time point of interest set into a standard two-dimensional point set. Subsequently, the system updates the changed points of interest in the historical point of interest set using streaming data processing to obtain an updated point of interest set, improving the timeliness of data updates. This ensures that the point of interest set obtained when a target search request is initiated is the latest point of interest set.
[0061] Step S3013: When a target search request is obtained, the updated historical POI set is determined as a real-time POI set.
[0062] When the target object initiates a target retrieval request for points of interest through the interactive page of the application, in order to ensure that the point of interest set associated with the target retrieval request is the latest point of interest set, the historical point of interest set after the real-time data change can be determined as the real-time point of interest set.
[0063] It should be noted that if the point of interest set changes when the point of interest retrieval results are returned according to the target retrieval request, the target object can be reminded that the point of interest has changed and the retrieval results can be refreshed; or the current search can be continued and the real-time point of interest set associated with the target retrieval request can be updated the next time the target retrieval request is initiated.
[0064] Step S302: constructing a tree index structure of the real-time point of interest set based on the position of each point of interest in the real-time point of interest set.
[0065] Specifically, the above step S302 includes:
[0066] Step S3021: obtaining a first segmentation dimension and a second segmentation dimension for the real-time interest point set, wherein the first segmentation dimension and the second segmentation dimension are vertical to each other.
[0067] The first and second segmentation dimensions are pre-set segmentation axes for alternate spatial segmentation, and the first and second segmentation dimensions are spatially perpendicular to each other. For example, the first segmentation dimension is the longitude segmentation axis and the second segmentation dimension is the latitude segmentation axis; or the first segmentation dimension is the latitude segmentation axis and the second segmentation dimension is the longitude segmentation axis.
[0068] Specifically, the real-time interest point set obtained by the target retrieval request is formatted into a standard two-dimensional point set, each two-dimensional point has a corresponding spatial position representation, and the first segmentation dimension and the second segmentation dimension for spatial alternating segmentation are determined by the corresponding spatial position representation.
[0069] Step S3022: Alternately use the first segmentation dimension and the second segmentation dimension to segment the real-time interest point set, and obtain a first interest point segmentation subset and a second interest point segmentation subset corresponding to each recursive segmentation.
[0070] The first subset of interest points is the left subset of interest points formed by each recursive segmentation; the second subset of interest points is the right subset of interest points formed by each recursive segmentation. Specifically, the root node of the tree index structure is selected from the real-time interest point set. For the root node and its child nodes, the first segmentation dimension and the second segmentation dimension are alternately selected to segment the space. For example, the first segmentation dimension is used for the first segmentation, the second segmentation dimension is used for the second segmentation, the third segmentation dimension is used for the first segmentation, the fourth segmentation dimension is used for the second segmentation, and so on, until all interest points are leaf nodes. The specific segmentation method is as follows:
[0071] (1) Based on the selected segmentation dimension (first segmentation dimension or second segmentation dimension), the real-time interest point set is divided into a left subset of interest points and a right subset of interest points. For example, all points smaller than the root node value on the segmentation dimension form the left subset of interest points, and all points greater than or equal to the root node value on the segmentation dimension form the right subset of interest points.
[0072] (2) Using a segmentation dimension different from that in step (1), the left subset of interest points and the right subset of interest points are segmented again.
[0073] (3) Repeat steps (1) and (2), and construct the corresponding left subtree and right subtree of interest points according to the first interest point segmentation subset and the second interest point segmentation subset formed by each recursive segmentation.
[0074] In some optional implementations, the above step S3022 includes:
[0075] Step a1: for any recursive segmentation, obtain the current set of interest points to be segmented and the current segmentation dimension, wherein the current segmentation dimension is the first segmentation dimension or the second segmentation dimension.
[0076] Step a2: segment the current interest point set to be segmented using the median point corresponding to the current segmentation dimension to obtain a first interest point segmentation subset and a second interest point segmentation subset.
[0077] When recursively applying the first and second segmentation dimensions to the real-time interest point set, the interest point set is segmented using the median of the first and second segmentation dimensions, obtaining a segmented point set. The interest point segmentation method is recursively applied to the segmented point set until each interest point is a leaf node, thereby achieving recursive segmentation of the interest point set.
[0078] Specifically, in any recursive segmentation, the current segmentation interest point set and the current segmentation dimension are obtained. If it is the first segmentation, the current segmentation interest point set is the real-time interest point set; if it is not the first segmentation, any interest point subset obtained in the previous segmentation is used as the current segmentation interest point set; when the secondary segmentation dimension is the first segmentation dimension or the second segmentation dimension, and the current segmentation dimension is not the segmentation dimension used in the previous segmentation.
[0079] When the current segmentation dimension is determined, the median point corresponding to the current segmentation dimension is obtained and the current set of interest points to be segmented is segmented using the median point, into the first interest point segmentation subset and the second interest point segmentation subset. All points less than the value on the current segmentation dimension form the first interest point segmentation subset, and all points greater than or equal to the value on the current segmentation dimension form the second interest point segmentation subset.
[0080] In the above implementation, by obtaining the current set of interest points to be segmented and the current segmentation dimension, the current set of interest points to be segmented is segmented using the median point corresponding to the current segmentation dimension to obtain the corresponding first interest point segmentation subset and second interest point segmentation subset, thereby achieving an orderly segmentation of the interest point set and ensuring the accuracy of the construction of the tree index structure.
[0081] Step S3023: insert the points of interest in the first interest point segmentation subset and the second interest point segmentation subset into the tree structure in sequence according to the recursive segmentation order, and generate a tree index structure.
[0082] According to the recursive segmentation order, the interest point segmentation subsets obtained in each segmentation can be determined. Since each recursion is a re-segmentation based on the previous segmentation, there is an association between the first interest point segmentation subset and the second interest point segmentation subset obtained in each recursive segmentation and its previous segmentation. Combined with the recursive segmentation order and the association between the recursive segmentations, the interest points in the first interest point segmentation subset and the second interest point segmentation subset are sequentially inserted into the tree structure until all interest points are inserted, generating the corresponding tree index structure.
[0083] Each time the tree index structure is constructed, it is constructed based on the full amount of interest point information in the interest point set, which ensures the balance of the constructed tree index structure. In a specific example, taking the construction of the KD tree as an example, an interest point is selected from all the interest points as the root node. The root node can select the first interest point, or it can be determined by a preset segmentation strategy (such as median segmentation); for the root node and its child nodes, the longitude and latitude points are used alternately as the segmentation dimensions, and the corresponding median points are used to segment the interest point set, such as the longitude for the first segmentation, the latitude for the second segmentation, and so on. According to the selected dimension, the real-time interest point set is divided into two interest point subsets, such as all points less than the root node value on the dimension form a left subset, and all points greater than or equal to the root node value on the dimension form a right subset; the above segmentation steps are recursively called for the left subset and the right subset respectively to construct the left subtree and the right subtree, and each time the recursion is performed, the next dimension that has not been used by the current node is selected to segment the space until all interest points are inserted into the KD tree. At this point, the construction of the KD tree index structure for the real-time interest point set is completed.
[0084] Step S303: Store the real-time interest point set to the target location according to the tree index structure. Please refer to the description of the corresponding steps in the above embodiment for details, which will not be repeated here.
[0085] Step S304: According to the tree index structure, the target interest point corresponding to the target search request is retrieved from the real-time interest point set stored at the target location. Detailed descriptions of the corresponding steps in the above embodiment are provided and will not be repeated here.
[0086] The POI retrieval method provided in this embodiment updates changed historical POIs to a historical POI set using streaming data processing, facilitating minute-by-minute POI data updates and significantly improving data timeliness. Upon receiving a target retrieval request, the updated historical POI set is identified as the real-time POI set. This real-time POI set is then used to construct a tree index structure, improving the accuracy of subsequent retrieval.
[0087] By alternately using the first segmentation dimension and the second segmentation dimension to segment the real-time point of interest set until all points of interest are leaf nodes, the points of interest in the first and second interest point segmentation subsets are inserted into the tree structure in sequence according to the recursive segmentation order to generate a tree index structure. This realizes the construction of a tree index structure using all points of interest and ensures the balance of the tree index structure.
[0088] In this embodiment, a method for retrieving points of interest is provided, which can be used in electronic devices such as mobile phones, tablet computers, computers, servers, etc. Figure 4 is a flowchart of a method for retrieving points of interest according to an embodiment of the present disclosure. Figure 4As shown, the process includes the following steps:
[0089] Step S401: Acquire a real-time point of interest set corresponding to the target search request. Please refer to the description of the corresponding steps in the above embodiment for details, which will not be repeated here.
[0090] Step S402: construct a tree index structure of the real-time POI set based on the position of each POI in the real-time POI set. Detailed descriptions of the corresponding steps in the above embodiment are provided and will not be repeated here.
[0091] Step S403: storing the real-time point of interest set to a target location according to the tree index structure.
[0092] Specifically, the above step S403 includes:
[0093] Step S4031 : Serialize the tree index structure using a preset serialization method to generate a target tree index.
[0094] The preset serialization method is a pre-set method for serializing the tree index structure, such as serializing using the Flatbuffer protocol; the target tree index is the tree index structure after serialization, and each index node of the target tree index includes a spatial position, an interest point index primary key, and left and right subtree members defined using the preset serialization method.
[0095] For example, the Flatbuffer protocol is used to design a tree index structure schema to realize the serialization of the tree index structure, so that the index node of the target tree index after serialization contains the longitude and latitude of the point of interest, the primary key of the point of interest, and the left and right subtree members defined using the recursive table function of the Flatbuffer protocol.
[0096] Step S4032: Write the target tree index into the target location.
[0097] The target tree index generated by serialization is written to the target location in a streaming manner. When the points of interest change, streaming data processing is performed on the real-time updated points of interest to obtain a real-time updated point of interest set. Subsequently, a tree index structure is constructed for all the points of interest in the point of interest set. The constructed tree index structure is serialized to obtain the corresponding target tree index, and the index data corresponding to the target tree index is written to the target location. This realizes streaming data production and streaming data writing, improving data timeliness.
[0098] Step S404: According to the tree index structure, the target interest point corresponding to the target search request is searched in the real-time interest point set stored at the target location.
[0099] Specifically, the above step S404 includes:
[0100] Step S4041, obtaining the initiation location corresponding to the target retrieval request.
[0101] The initiation location is the geographic location of the target object when it initiates the target retrieval request. Specifically, the target object initiates the target retrieval request through the client. The target retrieval request can carry the target object's current location. The target object's current location is the initiation location corresponding to the target retrieval request. The initiation location can be collected through the client's positioning function. Accordingly, when the electronic device receives the target retrieval request initiated by the target object, it can parse the content carried by the target retrieval request to obtain the initiation location of the target retrieval request.
[0102] Step S4042: Determine the search order of points of interest according to the tree index structure.
[0103] The POI search order is the order in which POIs are retrieved from the real-time POI set. Since the real-time POI set is stored at the target location according to the tree index structure, the POI search order in the POI retrieval process can be determined based on the index construction order of the tree index structure.
[0104] Step S4043: recursively search for points of interest according to the search order of points of interest, and determine from the real-time point of interest set a plurality of target points of interest whose distances from the initiating location are within a preset value.
[0105] The preset value is a pre-set ranking value, such as the top K. Specifically, the top K points of interest can be determined as target points of interest from the real-time point of interest set by K-nearest neighbor retrieval, and the K value is not specifically limited here.
[0106] A recursive search is performed on the real-time POI set stored in the target location in the order of POI search. During the recursive search process, it is detected whether there is a subtree that is closer to the initiating location. If so, the recursive search is continued until no more adjacent subtree exists. If not, it indicates that the recursive search has been completed. In this case, the recursive search is skipped and the search results are updated with the currently searched POIs. Multiple target POIs whose distances to the initiating location are within a preset value are retrieved from the updated search results.
[0107] In some optional implementations, recursive retrieval of points of interest according to the search order of points of interest includes:
[0108] Step b1, obtaining the initial search interest point corresponding to the current recursive search and the current recursive interest point.
[0109] Step b2: determining a first distance between the initiating location and the current recursive point of interest.
[0110] Step b3: If the first distance is less than the second distance between the initial search interest point and the initiation location, the initial search interest point is updated according to the current recursive interest point, and the next recursive interest point is determined for recursive retrieval.
[0111] The initial search interest points are the interest points associated with the target search request obtained before the current recursive search; the current recursive interest points are the interest points required to be searched in the current recursive search determined according to the interest point search order.
[0112] During the recursive search process, each time a recursive search is completed, the POI search result is updated, the TOP K POIs included in the POI search result are determined, and the distances between the TOP K POIs and the initiating location (ie, the second distance) are recorded.
[0113] The current recursive interest point to be compared in each recursive search is determined based on the interest point search order, and the distance between the initiating position and the current recursive interest point (i.e., the first distance) is calculated. This first distance is compared with the existing K second distances to determine whether the first distance is less than one or more second distances. If the first distance is less than one or more second distances, it means that the current recursive interest point corresponding to the first distance is a neighbor of the initiating position. At this time, the initial search interest point is updated with the current recursive interest point, and the next recursive interest point corresponding to the current recursive interest point is determined according to the interest point search order for recursive search until no neighbor exists.
[0114] In the above embodiment, by determining the first distance between the initiating position and the current recursive interest point, the first distance is compared with the second distance between the initial search interest point and the initiating position to determine the initial search interest point that needs to be replaced, ensuring that the interest point finally recursively retrieved is closest to the target object, thereby improving the interest point retrieval experience of the target object.
[0115] In some optional implementations, determining a plurality of target points of interest from the real-time point of interest set whose distances from the initiation location are within a preset value includes:
[0116] Step c1, obtaining tree index data obtained by recursive retrieval.
[0117] Step c2: Deserialize the tree index data to determine multiple spatial locations corresponding to the tree index data.
[0118] Step c3: determining the points of interest corresponding to each spatial position as target points of interest.
[0119] Each recursive search is performed according to the tree index structure, and the tree index data is the search data obtained by each recursive search. As described above, the target location stores a serialized target tree index. Therefore, when calculating the target point of interest corresponding to the target search request from the target location, the associated tree index data can be retrieved from the target tree index using the recursive search method, and this tree index data is serialized data.
[0120] The spatial location is the geographic location of the index point in the tree index data. Specifically, the tree index data contains one or more serialized index points, which are deserialized to obtain the spatial location represented by the serialized index point. The point of interest corresponding to the spatial location is the target point of interest matched by the target search request.
[0121] By deserializing the tree index data obtained by recursive retrieval, multiple spatial positions corresponding to the tree index data are obtained, and the points of interest corresponding to each spatial position are determined as target points of interest, thereby achieving orderly search of target points of interest and further improving retrieval efficiency.
[0122] The POI retrieval method provided in this embodiment serializes the tree index structure using a preset serialization method to generate a target tree index and write the target tree index to the target location. The serialization method can be set according to actual needs, saving serialization overhead and computing resources, further improving retrieval efficiency. Recursive retrieval of target POIs is performed based on the initiation location corresponding to the target retrieval request and the POI search order determined by the tree index structure, achieving integrated storage and computation at the target location, thereby avoiding data network transmission and further improving POI retrieval performance.
[0123] As a specific application embodiment of the embodiment of the present disclosure, the changes in the interest point set associated with each search result are subscribed to in real time through a message queue. When it is determined that the interest point set has changed, the interest point set is updated according to the latest collected interest point information through streaming data processing. Then, the KD tree is rebuilt according to the updated interest points, and the original KD tree index is overwritten with the KD tree to achieve the uniqueness of the KD tree index. Subsequently, the KD tree index is serialized and written into the local KV database. Since each KD tree index produced is constructed based on the full amount of interest points, it can be guaranteed that the constructed KD tree index is balanced. It is then streamed into the KV database. By subscribing to real-time data change messages, changes in the interest point set associated with each search result, such as addition / deletion / modification, can be perceived at the minute level, ultimately achieving real-time perception of minute-level business data changes and improving business timeliness.
[0124] When a user's target search request arrives, the tree index data corresponding to the target search request is retrieved from the local KV database, and the subsequent K-nearest neighbor search calculation is completed locally, without network transmission. Ultimately, only the primary key results of the K-nearest neighbor points of interest are returned for the target search request. This significantly eliminates network transmission overhead and further improves search performance in the context of large business data volumes. Furthermore, the KD tree index is constructed based on all points of interest, eliminating any performance loss compared to the city grouping strategy used in related technologies.
[0125] Based on real online business scenario data and indicator statistics, the latency overhead of the tree-index-based K-nearest neighbor algorithm disclosed in this paper was tested and compared with that of the brute force algorithm. Taking the calculation of K-nearest neighbors for 5,000, 10,000, and 20,000 points of interest (POIs) as an example, assuming that a search request has 100 search results that require K-nearest neighbor replacement, the total latency for completing 100 K-nearest neighbor searches is recorded as follows:
[0126] Table 1 Total delay comparison when K=1
[0127]
[0128] Table 2 Total delay comparison when K=3
[0129]
[0130]
[0131] Table 3 Total delay comparison when K=10
[0132]
[0133] By observing real-world online business metrics, we've implemented a storage-and-computing integrated architecture using a local KV database. Compared to a separate storage-and-computing architecture, this architecture reduces network transmission and packet latency by approximately 3-5ms. Furthermore, the POI information associated with each search request is updated and visible within minutes.
[0134] This embodiment also provides a point of interest retrieval device for implementing the above-mentioned embodiments and preferred implementations. Details already described will not be repeated. As used below, the term "module" may refer to a combination of software and / or hardware that implements a predetermined function. Although the devices described in the following embodiments are preferably implemented in software, implementation using hardware, or a combination of software and hardware, is also possible and contemplated.
[0135] This embodiment provides a device for searching points of interest. Figure 5 Shown, including:
[0136] The acquisition module 501 is used to acquire a real-time point of interest set corresponding to a target search request.
[0137] The index building module 502 is configured to build a tree index structure of the real-time point of interest set based on the position of each point of interest in the real-time point of interest set.
[0138] The storage module 503 is used to store the real-time interest point set to a target location according to the tree index structure.
[0139] The retrieval module 504 is configured to retrieve the target interest point corresponding to the target retrieval request from the real-time interest point set stored at the target location according to the tree index structure.
[0140] In some optional implementations, the index building module 502 includes:
[0141] The segmentation dimension acquisition unit is used to acquire a first segmentation dimension and a second segmentation dimension for the real-time interest point set, where the first segmentation dimension and the second segmentation dimension are vertical in space.
[0142] The alternating segmentation unit is used to alternately segment the real-time interest point set using the first segmentation dimension and the second segmentation dimension to obtain a first interest point segmentation subset and a second interest point segmentation subset corresponding to each recursive segmentation.
[0143] The tree index construction unit is used to insert the points of interest in the first interest point segmentation subset and the second interest point segmentation subset into the tree structure in sequence according to the recursive segmentation order to generate a tree index structure.
[0144] In some optional embodiments, the alternating segmentation unit includes:
[0145] The segmentation information acquisition subunit is used to obtain the current set of interest points to be segmented and the current segmentation dimension for any recursive segmentation, where the current segmentation dimension is the first segmentation dimension or the second segmentation dimension.
[0146] The recursive segmentation subunit is used to segment the current set of interest points to be segmented using the median point corresponding to the current segmentation dimension to obtain a first interest point segmentation subset and a second interest point segmentation subset.
[0147] In some optional implementations, the storage module 503 includes:
[0148] The serialization processing unit is used to serialize the tree index structure using a preset serialization method to generate a target tree index.
[0149] The data writing unit is used to write the target tree index to the target location.
[0150] In some optional implementations, the retrieval module 504 includes:
[0151] The location acquisition unit is used to obtain the initiation location corresponding to the target retrieval request.
[0152] The search order determination unit is used to determine the interest point search order according to the tree index structure.
[0153] The recursive retrieval unit is used to perform recursive retrieval of interest points according to the interest point search order, and determine a plurality of target interest points whose distances from the initiating position are within a preset value from the real-time interest point set.
[0154] In some optional implementations, the recursive search unit includes:
[0155] The recursive initial information acquisition subunit is used to obtain the initial search interest points corresponding to the current recursive retrieval and the current recursive interest points.
[0156] The distance determination subunit is used to determine a first distance between the initiation location and the current recursive interest point.
[0157] The updating subunit is configured to update the initial search interest point according to the current recursive interest point if the first distance is less than the second distance between the initial search interest point and the initiation position, and determine the next recursive interest point for recursive retrieval.
[0158] In some optional implementations, the recursive retrieval unit further includes:
[0159] The index data acquisition subunit is used to obtain the tree index data obtained by recursive retrieval.
[0160] The deserialization processing subunit is used to perform deserialization processing on the tree index data and determine multiple spatial positions corresponding to the tree index data.
[0161] The target determination subunit is used to determine the points of interest corresponding to each spatial position as target points of interest.
[0162] In some optional implementations, the acquisition module 501 includes:
[0163] The historical information acquisition unit is used to acquire a set of historical points of interest.
[0164] The stream processing unit is configured to perform stream data processing on the changed historical interest points in the historical interest point set if the historical interest points in the historical interest point set change, and update the historical interest point set.
[0165] The real-time point of interest set acquisition unit is configured to determine the updated historical point of interest set as the real-time point of interest set when a target search request is received.
[0166] The further functional description of each of the above modules and units is the same as that of the above corresponding embodiments and will not be repeated here.
[0167] The interest point retrieval device provided by the embodiment of the present disclosure can execute the interest point retrieval method provided by any embodiment of the present disclosure, and has the functional modules and beneficial effects corresponding to the execution method. By obtaining the real-time interest point set corresponding to the target retrieval request, the search results of the target retrieval request are associated with the real-time interest points, and then, through the position of each interest point in the real-time interest point set, the corresponding tree index structure is constructed, that is, the tree index structure is constructed using the full amount of interest points, which is conducive to ensuring the balance of the tree index structure, thereby ensuring the accuracy of the subsequent interest point retrieval using the tree index structure, and improving the retrieval efficiency of the interest points. At the same time, the real-time interest point set is stored in the target location according to the tree index structure, and the target interest point corresponding to the target retrieval request is retrieved in the real-time interest point set stored at the target location, thereby realizing the storage and computing integration of interest point retrieval, eliminating the data network transmission overhead, further improving the retrieval performance of the target interest point, reducing the retrieval delay of the target interest point, facilitating the realization of efficient and real-time interest point retrieval, and facilitating implementation in large-scale real-time search systems.
[0168] Figure 6 A schematic structural diagram of an electronic device provided in an embodiment of the present disclosure.
[0169] The following specific reference Figure 6 , which shows a schematic diagram of the structure of an electronic device suitable for implementing the embodiments of the present disclosure. The electronic device may include a processor (e.g., a central processing unit, a graphics processing unit, etc.) 601, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 602 or a program loaded from a memory 608 into a random access memory (RAM) 603. Various programs and data required for the operation of the electronic device are also stored in the RAM 603. The processor 601, ROM 602, and RAM 603 are connected to each other via a bus 604. An input / output (I / O) interface 605 is also connected to the bus 604.
[0170] Typically, the following devices may be connected to the I / O interface 605: an input device 606 including, for example, a touch screen, a touchpad, a keyboard, a mouse, a camera, a microphone, an accelerometer, a gyroscope, etc.; an output device 607 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; a memory 608 including, for example, a magnetic tape, a hard disk, etc.; and a communication device 609. The communication device 609 may allow the electronic device to communicate with other devices wirelessly or by wire to exchange data. Although Figure 6 An electronic device having various devices is shown, but it should be understood that it is not required to implement or possess all of the devices shown, and more or fewer devices may be implemented or possessed instead.
[0171] In particular, according to an embodiment of the present disclosure, the process described above with reference to the flowchart can be implemented as a computer software program. For example, an embodiment of the present disclosure includes a computer program product, which includes a computer program carried on a non-transitory computer-readable medium, and the computer program includes program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from the network through the communication device 609, or installed from the memory 608, or installed from the ROM 602. When the computer program is executed by the processor 601, the above-mentioned functions defined in the point of interest retrieval method of the embodiment of the present disclosure are performed.
[0172] Figure 6 The electronic device shown is only an example and should not limit the functions and scope of use of the embodiments of the present disclosure.
[0173] The embodiments of the present disclosure also provide a computer-readable storage medium. The above-mentioned method according to the embodiments of the present disclosure can be implemented in hardware, firmware, or implemented as a computer code that can be recorded in a storage medium, or implemented as a computer code that is originally stored in a remote storage medium or a non-temporary machine-readable storage medium and downloaded through a network and will be stored in a local storage medium, so that the method described herein can be stored in such software processing on a storage medium using a general-purpose computer, a dedicated processor, or programmable or dedicated hardware. Among them, the storage medium can be a magnetic disk, an optical disk, a read-only storage memory, a random access memory, a flash memory, a hard disk or a solid-state drive, etc.; further, the storage medium can also include a combination of the above-mentioned types of memory. It can be understood that a computer, a processor, a microprocessor controller or programmable hardware includes a storage component that can store or receive software or computer code. When the software or computer code is accessed and executed by a computer, a processor or hardware, the point of interest retrieval method shown in the above embodiment is implemented.
[0174] A portion of the present disclosure may be applied as a computer program product, such as a computer program instruction, which, when executed by a computer, can call or provide the method and / or technical solution according to the present disclosure through the operation of the computer. Those skilled in the art should understand that the form in which the computer program instruction exists in a computer-readable medium includes but is not limited to a source file, an executable file, an installation package file, etc. Accordingly, the way in which the computer program instruction is executed by the computer includes but is not limited to: the computer directly executes the instruction, or the computer compiles the instruction and then executes the corresponding compiled program, or the computer reads and executes the instruction, or the computer reads and installs the instruction and then executes the corresponding installed program. Here, the computer-readable medium can be any available computer-readable storage medium or communication medium that can be accessed by the computer.
[0175] Although the embodiments of the present disclosure have been described with reference to the accompanying drawings, those skilled in the art may make various modifications and variations without departing from the spirit and scope of the present disclosure, and such modifications and variations are all within the scope defined by the appended claims.
Claims
1. A method for retrieving points of interest, characterized in that: The method comprises: Get the real-time point of interest set corresponding to the target retrieval request; Constructing a tree index structure of the real-time point of interest set based on the position of each point of interest in the real-time point of interest set; Storing the real-time point of interest set to a target location according to the tree index structure; According to the tree index structure, the target interest point corresponding to the target retrieval request is retrieved from the real-time interest point set stored at the target location.
2. The method according to claim 1, characterized in that The step of constructing a tree index structure of the real-time point of interest set based on the position of each point of interest in the real-time point of interest set includes: Obtain a first segmentation dimension and a second segmentation dimension for the real-time point of interest set, wherein the first segmentation dimension and the second segmentation dimension are spatially perpendicular to each other; Alternately segmenting the real-time interest point set using the first segmentation dimension and the second segmentation dimension to obtain a first interest point segmentation subset and a second interest point segmentation subset corresponding to each recursive segmentation; The points of interest in the first interest point segmentation subset and the second interest point segmentation subset are sequentially inserted into the tree structure according to the recursive segmentation order to generate the tree index structure.
3. The method according to claim 2, characterized in that The step of alternately using the first segmentation dimension and the second segmentation dimension to segment the real-time interest point set to obtain a first interest point segmentation subset and a second interest point segmentation subset corresponding to each recursive segmentation includes: For any recursive segmentation, obtain the current set of interest points to be segmented and the current segmentation dimension, where the current segmentation dimension is the first segmentation dimension or the second segmentation dimension; The current set of interest points to be segmented is segmented using the median point corresponding to the current segmentation dimension to obtain the first interest point segmentation subset and the second interest point segmentation subset.
4. The method according to any one of claims 1 to 3, characterized in that Storing the real-time point of interest set to a target location according to the tree index structure includes: Serializing the tree index structure using a preset serialization method to generate a target tree index; The target tree index is written to the target location.
5. The method according to claim 1, wherein The step of searching the target interest point corresponding to the target retrieval request from the real-time interest point set stored at the target location according to the tree index structure includes: Obtaining the initiation location corresponding to the target retrieval request; Determining a search order for points of interest according to the tree index structure; Recursive retrieval of interest points is performed according to the interest point search order, and a plurality of target interest points whose distances from the initiation location are within a preset value are determined from the real-time interest point set.
6. The method according to claim 5, characterized in that The recursive retrieval of interest points according to the interest point search order includes: Obtain the initial search interest points corresponding to the current recursive search and the current recursive interest points; Determining a first distance between the initiation location and the current recursive point of interest; If the first distance is less than the second distance between the initial search interest point and the initiation position, the initial search interest point is updated according to the current recursive interest point, and the next recursive interest point is determined for recursive retrieval.
7. The method according to claim 5 or 6, characterized in that The step of determining, from the real-time point of interest set, a plurality of target points of interest whose distances from the initiation location are within a preset value comprises: Get the tree index data obtained by recursive retrieval; Deserialize the tree index data to determine multiple spatial locations corresponding to the tree index data; The points of interest corresponding to the respective spatial positions are determined as the target points of interest.
8. The method according to claim 1, characterized in that The obtaining of a real-time point of interest set corresponding to the target retrieval request includes: Get the historical points of interest set; If a historical point of interest in the historical point of interest set changes, performing streaming data processing on the historical point of interest that has changed in the historical point of interest set to update the historical point of interest set; When the target retrieval request is obtained, the updated historical point of interest set is determined as the real-time point of interest set.
9. A point of interest search device, characterized in that: The device comprises: An acquisition module is used to obtain a real-time point of interest set corresponding to a target retrieval request; An index building module, configured to build a tree index structure of the real-time point of interest set based on the position of each point of interest in the real-time point of interest set; A storage module, configured to store the real-time point of interest set to a target location according to the tree index structure; A retrieval module is used to retrieve the target interest point corresponding to the target retrieval request from the real-time interest point set stored at the target location according to the tree index structure.
10. An electronic device, characterized in that: include: A memory and a processor, wherein the memory and the processor are communicatively connected to each other, the memory stores computer instructions, and the processor executes the interest point retrieval method according to any one of claims 1 to 8 by executing the computer instructions.
11. A computer-readable storage medium, characterized in that The computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a computer to execute the point of interest retrieval method according to any one of claims 1 to 8.
12. A computer program product, characterized in that The method comprises computer instructions for causing a computer to execute the point of interest retrieval method according to any one of claims 1 to 8.
Citation Information
Patent Citations
Data searching method and device
CN107291785A
Method for protecting position privacy based on cache
CN108280162A
POI (Point of Interest) aggregation method, device, system and related product
CN115033652A
Map data query method and apparatus, computer device, and storage medium
US20220049962A1