An indexer in Azure AI Search is a crawler that extracts textual data from cloud data sources and populates a search index using field-to-field mappings between source data and the search index. By default, indexers run on a recurring data refresh schedule, which can be as frequent as every five minutes.
While true real-time indexing isn’t possible with an indexer, you can achieve near real-time updates using the following strategies:
- Push Model: Instead of relying solely on the indexer’s pull model, consider pushing updated rows directly to the index when changes occur in your database.
- Custom Script or Code: Implement a custom script or code that detects changes in your database and triggers an update to the search index immediately.
- Azure Functions or Logic Apps: Use Azure Functions or Logic Apps to monitor changes in your data source and invoke the indexer when updates occur.
If your search service supports availability zones, replicas are automatically provisioned in different physical data centers for extra resiliency. Consider adding multiple replicas to handle higher indexing and query workloads. Availability zones ensure that even if one zone experiences an outage, your search service remains available.
While true real-time indexing isn’t achievable with indexers alone, near real-time solutions can significantly reduce the delay between data changes and index updates. Explore the options mentioned above to tailor your approach based on your project’s requirements! https://learn.microsoft.com/en-us/azure/search/search-reliability
Feel free to post if you have any further questions. If this answer helped, please accept the answer :-)