A computer-implemented method for identifying points-of-interest based on customized query prediction, characterized in that the method comprises the following operations performed by one or more processors: receiving a partial query transmitted over a network from a client, the partial query comprising a plurality of characters associated with a full query, and location data associated with a current location of the client; analyzing the received partial query using at least one dictionary selected from a group of dictionaries, the at least one dictionary comprising a plurality of data distributed between a plurality of partitions based on a perceived load of the plurality of data, wherein the plurality of data is ordered based on the perceived load, and wherein substrings, of the plurality of data, having a highest perceived load are distributed among the plurality of partitions; predicting at least one query based on the analysis of the received partial query; identifying at least one point-of-interest based on the at least one predicted query, the at least one point-of-interest being identified based on the at least one point-of-interest being located within a particular radius of the current location of the client; and transmitting data associated with the at least one identified point-of-interest over the network to the client prior to receiving the full query from the client: wherein analyzing the received partial query using at least one dictionary comprises: selecting at least one dictionary based on the location data associated with the current location of the client; and analyzing the at least one query using the at least one selected dictionary. receiving a partial query transmitted over a network from a client, the partial query comprising a plurality of characters associated with a full query, and location data associated with a current location of the client; analyzing the received partial query using at least one dictionary selected from a group of dictionaries, the at least one dictionary comprising a plurality of data distributed between a plurality of partitions based on a perceived load of the plurality of data, wherein the plurality of data is ordered based on the perceived load, and wherein substrings, of the plurality of data, having a highest perceived load are distributed among the plurality of partitions; predicting at least one query based on the analysis of the received partial query; identifying at least one point-of-interest based on the at least one predicted query, the at least one point-of-interest being identified based on the at least one point-of-interest being located within a particular radius of the current location of the client; and transmitting data associated with the at least one identified point-of-interest over the network to the client prior to receiving the full query from the client: wherein analyzing the received partial query using at least one dictionary comprises: selecting at least one dictionary based on the location data associated with the current location of the client; and analyzing the at least one query using the at least one selected dictionary. selecting at least one dictionary based on the location data associated with the current location of the client; and analyzing the at least one query using the at least one selected dictionary.