How do I learn Elasticsearch?

How do I learn Elasticsearch?

Now and then, devs participating in technical conferences, meetups ask me, "How do I learn Elasticsearch?" or "Where do I start learning Elasticsearch?"

There are so many useful resources out there, either from the Developer Community or the official site. But it varies according to your profile.

In this blog, I'll try to summarize the learning path.

First, you need to know the ecosystem of other projects (Elastic Stack) that completes your Elasticsearch experience.

b0fe1f01700f6e797675c3c00419eeb586f84bee.png

Elasticsearch is not a relational database but a full-text search engine used as a NoSQL datastore.

Step 1: Learning the terms and distributed nature

Elasticsearch is a distributed system. There are concepts like Cluster, Nodes, Shards, Replicas, Cluster Co-ordination layer, and their settings, which are essential to understand the system's working further. There are many terms like Index, fields, mappings.

You can get this gist also in Getting Started with Elasticsearch

Step 2: Learning the APIs

The API-oriented nature helped Elasticsearch integrate with several other systems, be it a SaaS service like PagerDuty, ServiceNow, or other open-source systems like Prometheus, Beats Logstash.

Almost all features have APIs, and every API is linked to a concept like Aggregations, Index Lifecycle Management.

Step 3: Learning how to manage & monitor

Monitoring the system which monitors your infrastructure sounds like inception! Elasticsearch comes with a monitoring UI in Kibana, and it can alert you about cluster load and various other issues. You can also manage the indices with Index lifecycle management or look at multiple metrics like searches per minute, latency, heap & CPU utilization.

These steps help you get started with Elasticsearch, a minimal plan to understand the overall system. Many users might use Elasticsearch to build a centralized logging/auditing system, Observability system, to create a search engine, or a threat hunting solution.

There are Quick Start tutorials for some of these if you like to spend some time and complete a course.

If you have more questions, feel free to connect/DM me on Twitter at aravindputrevu. I write, share articles about tech on Twitter and Linkedin