Tips for Optimizing Elasticsearch on Azure
Elasticsearch is one of my favorite platforms. It’s an open source RESTful search platform built on Lucene.
Elasticsearch provides amazing performance, incredible scale, easy management, and virtually every feature you’d expect from a search index. It’s no surprise that over the past few years, it has become the de facto standard for building web search applications.
The core Elasticsearch product is free, and thus can be hosted in several ways:
A. Infrastructure-as-a-Service: On virtual machines or Docker / Kubernetes containers.
B. Managed Infrastructure-as-a-Service: Through Elastic themselves or a partner like AWS or Qbox. This provides the same control as hosting it yourself without the overhead of patch management, backups, and monitoring.
C. Platform-as-a-Service (Simplified): Microsoft’s Azure Search PaaS offering is built upon Elasticsearch and offers most, but not all, features.
After deploying multiple Elasticsearch instances in each scenario, here’s a list of tips.