When quadtree in one server, “We will first find the node that contains the user’s location. If that node has enough desired places, we can return them to the user. If not, we will keep expanding to the neighboring nodes (either through the parent pointers or doubly linked list) until either we find the required number of places or exhaust our search based on the maximum radius.”
According to sharding based on locationID, While building our QuadTree, we will iterate through all the places and calculate the hash of each LocationID to find a server where it would be stored.
But when we shard quadtree based on locationID into many server. What’s the detailed search workflow? Nodes are distributed in different servers and we don’t even know how and where to find root node, parent node or child node since servers only have locationID. How can we do the search? @Design_Gurus