Bird
Raised Fist0
Elasticsearchquery~3 mins

Why Index settings (shards, replicas) in Elasticsearch? - Purpose & Use Cases

Choose your learning style10 modes available
The Big Idea

What if your search could never slow down, even with millions of users searching at once?

The Scenario

Imagine you have a huge library of books stored in one big room. Every time someone wants a book, they have to search the entire room from start to finish.

Now, imagine many people want books at the same time. It becomes chaotic and slow.

The Problem

Searching through one big room for every request is slow and tiring. If the room is too crowded, people have to wait a long time.

Also, if a book gets lost or damaged, there is no backup, so the information is gone.

The Solution

Index settings with shards and replicas split the big room into smaller sections (shards), so many people can search different sections at the same time.

Replicas create copies of these sections, so if one section is busy or lost, others can help without delay.

Before vs After
✗ Before
{ "settings": { "number_of_shards": 1, "number_of_replicas": 0 } }
✓ After
{ "settings": { "number_of_shards": 5, "number_of_replicas": 1 } }
What It Enables

This lets your search system handle many requests quickly and safely, even if some parts fail.

Real Life Example

A popular online store uses shards to split product data so thousands of customers can search at once, and replicas to keep the site running even if a server goes down.

Key Takeaways

Shards split data to speed up searches.

Replicas keep copies for safety and availability.

Together, they make big data fast and reliable.

Practice

(1/5)
1. What is the main purpose of setting number_of_shards in an Elasticsearch index?
easy
A. To define the size of the index
B. To create backup copies of data
C. To split data into parts for faster searching
D. To set the maximum number of documents

Solution

  1. Step 1: Understand shards role

    Shards divide the index data into smaller parts to allow parallel searching.
  2. Step 2: Differentiate shards from replicas

    Replicas are copies for safety, not for splitting data.
  3. Final Answer:

    To split data into parts for faster searching -> Option C
  4. Quick Check:

    Shards = split data for speed [OK]
Hint: Shards split data, replicas copy data [OK]
Common Mistakes:
  • Confusing shards with replicas
  • Thinking shards create backups
  • Assuming shards set index size
2. Which of the following is the correct way to set 3 shards and 2 replicas in an Elasticsearch index creation JSON?
easy
A. { "settings": { "number_of_shards": 3, "number_of_replicas": 2 } }
B. { "settings": { "shards": 3, "replicas": 2 } }
C. { "settings": { "shard_count": 3, "replica_count": 2 } }
D. { "settings": { "num_shards": 3, "num_replicas": 2 } }

Solution

  1. Step 1: Recall correct setting keys

    The official keys are number_of_shards and number_of_replicas.
  2. Step 2: Match keys with options

    Only { "settings": { "number_of_shards": 3, "number_of_replicas": 2 } } uses the exact correct keys and valid JSON format.
  3. Final Answer:

    { "settings": { "number_of_shards": 3, "number_of_replicas": 2 } } -> Option A
  4. Quick Check:

    Correct keys = number_of_shards, number_of_replicas [OK]
Hint: Use full keys: number_of_shards and number_of_replicas [OK]
Common Mistakes:
  • Using shorthand keys like shards or replicas
  • Wrong JSON syntax
  • Mixing shard and replica counts
3. Given an index with number_of_shards set to 4 and number_of_replicas set to 1, how many total shard copies exist in the cluster?
medium
A. 4
B. 6
C. 5
D. 8

Solution

  1. Step 1: Calculate primary shards

    There are 4 primary shards as set.
  2. Step 2: Calculate replica shards

    Each primary shard has 1 replica, so 4 replicas total.
  3. Step 3: Add primary and replicas

    Total shards = 4 primary + 4 replicas = 8 shards.
  4. Final Answer:

    8 -> Option D
  5. Quick Check:

    Total shards = primary + replicas = 8 [OK]
Hint: Total shards = shards x (1 + replicas) [OK]
Common Mistakes:
  • Counting only primary shards
  • Adding shards and replicas incorrectly
  • Confusing replicas with shards
4. You tried to create an index with this setting: { "settings": { "number_of_shards": 2, "number_of_replicas": -1 } }. What is the problem?
medium
A. Negative replicas value is invalid
B. Number of shards cannot be 2
C. Missing required field for replicas
D. JSON syntax error

Solution

  1. Step 1: Check shards value

    Number of shards is 2, which is valid.
  2. Step 2: Check replicas value

    Replicas cannot be negative; -1 is invalid.
  3. Final Answer:

    Negative replicas value is invalid -> Option A
  4. Quick Check:

    Replicas must be zero or positive [OK]
Hint: Replicas cannot be negative numbers [OK]
Common Mistakes:
  • Assuming negative replicas mean no replicas
  • Thinking shards must be > 3
  • Ignoring JSON correctness
5. You want to create an index optimized for high availability with 5 shards. Which setting combination is best to ensure data safety and fast search?
hard
A. { "number_of_shards": 5, "number_of_replicas": 0 }
B. { "number_of_shards": 5, "number_of_replicas": 1 }
C. { "number_of_shards": 1, "number_of_replicas": 5 }
D. { "number_of_shards": 10, "number_of_replicas": 1 }

Solution

  1. Step 1: Understand shards and replicas roles

    Shards split data for speed; replicas provide copies for safety.
  2. Step 2: Evaluate options for availability and speed

    { "number_of_shards": 5, "number_of_replicas": 1 } keeps 5 shards for speed and 1 replica for safety, balancing both.
  3. Step 3: Reject other options

    The option with zero replicas has no safety, the option with 1 shard is slow for search, the option with 10 shards has overhead.
  4. Final Answer:

    { "number_of_shards": 5, "number_of_replicas": 1 } -> Option B
  5. Quick Check:

    Balance shards and replicas for speed and safety [OK]
Hint: Balance shards for speed and replicas for safety [OK]
Common Mistakes:
  • Setting zero replicas for safety
  • Using too few shards for speed
  • Over-sharding causing overhead
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard