Map search autocompletions for addresses and nearby points of interest

Abdelrahman 0 Reputation points
2024-09-20T12:36:25.6233333+00:00

We are planning to implement a robust autocomplete search feature for addresses and points of interest (POIs) within our application. We are using Azure App Service as our backend platform.

Specific Requirements:

  • Real-time Suggestions: Users should receive suggestions as they type, providing a seamless and intuitive search experience.
  • Fuzzy Search: Implement fuzzy search to match similar or partially correct terms, enhancing search accuracy.
  • Address and Nearby POI Suggestions: Offer suggestions for both addresses and POIs.
  • Scalability: The search feature should be scalable to handle a high volume of user searches without significant performance degradation.

Questions:

  1. Billable Search Transactions: How are billable search transactions calculated for autocomplete searches? Are they based on the number of API calls, or other factors? How do we control the cost without sacrificing the UX?
  2. Session-Based Calculations: If search transactions are not calculated based on sessions, how can we optimize the search feature to minimize costs while maintaining a high-quality user experience?
  3. Cost Optimization: What strategies can we implement to reduce the number of billable search transactions and optimize costs?
  4. Alternative Solutions: Are there any better approaches or technologies such as Azure Cognitive Search that could be considered for implementing autocomplete search for addresses and points of interest?

Additional Context:

  • We are using Azure App Service as our backend platform.
  • The application is designed for both web and mobile users.
  • We anticipate a high volume of search queries, especially during peak usage times.

We would appreciate your insights and recommendations on the best approach to implement autocomplete search within our application, considering our specific requirements and the need for cost optimization.

Azure AI Search
Azure AI Search
An Azure search service with built-in artificial intelligence capabilities that enrich information to help identify and explore relevant content at scale.
992 questions
Azure Maps
Azure Maps
An Azure service that provides geospatial APIs to add maps, spatial analytics, and mobility solutions to apps.
716 questions
Azure OpenAI Service
Azure OpenAI Service
An Azure service that provides access to OpenAI’s GPT-3 models with enterprise capabilities.
3,023 questions
Azure App Service
Azure App Service
Azure App Service is a service used to create and deploy scalable, mission-critical web apps.
7,743 questions
Azure AI services
Azure AI services
A group of Azure services, SDKs, and APIs designed to make apps more intelligent, engaging, and discoverable.
2,829 questions
0 comments No comments
{count} votes

1 answer

Sort by: Most helpful
  1. rbrundritt 17,981 Reputation points Microsoft Employee
    2024-09-20T16:29:55.3033333+00:00

    The Azure Maps Fuzzy search service is most likely what you are looking for: https://learn.microsoft.com/en-us/rest/api/maps/search/get-search-fuzzy?view=rest-maps-1.0&tabs=HTTP To use it in an autosuggest/complete scenario you simply add &typeahead=true to the request. The Azure Maps services in general are very scalable and handle billions of requests a day.

    The cost is one transaction per request. If you create a UX on top of this service, you would most likely want to add some local caching to handle scenarios like the user deleting a character so that it doesn't make the same request again.

    That said, some of the Bing Maps services have been migrating to Azure Maps, such as the geocoding service (address only). But I anticipate a service similar to the Bing Maps Autosuggest service will be brought over. I don't have any timelines, I'm not on the maps team. I believe that would likely be the service you will want longer term as it will likely have more data and improved logic over the Azure Maps v1 search services. I'm not sure how billing would work for that service, but ideally it would be similar to how Bing Maps charges for that service today with X number of requests equaling a single transaction. Note that service does not include latitude and longitude information, you have to pass the selected suggestion into a geocoder which would then generate an additional transaction.

    0 comments No comments

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.