1

In relation to elasticsearch, what are concrete indices.

The elasticsearch docs mention them hundreds of times, but I can't find a definition anywhere.

For example:

count - allowNoIndices:

  • Whether to ignore if a wildcard indices expression resolves into no ~concrete indices~.
Community
  • 1
  • 1
Ryan White
  • 2,366
  • 1
  • 22
  • 34

1 Answers1

4

A concrete index is simply a real index that is stored in Elasticsearch and that you can list with a /_cat/indices command such as

 curl 'localhost:9200/_cat/indices?v'

As you probably know, when searching you can either specify:

  1. one concrete index: /my_index/_search
  2. more than one concrete indices: /my_index1,my_index2/_search
  3. one alias: /my_alias/_search
  4. more than one aliases: /my_alias1,my_alias2/_search
  5. an index wildcard: /my_*/_search

In cases 1 and 2, you specify concrete indices, i.e. indices that you would see listed by the /_cat/indices command above.

In cases 3 and 4, the alias(es) you specify will resolve to concrete indices, so that in the end if my_alias is an alias for my_index1 and my_index2, then 3. is equivalent to 2.

In case 5, it's just a shortcut to not have to list all concrete indices whose name starts with the prefix my_. You often use that when you have time-based indices, such as logstash-2015* for all logstash indices of the year 2015.

To sum it up, a concrete index is an index that you have created one way or another and that will show when listing all indices of present in your Elasticsearch instance.

Val
  • 207,596
  • 13
  • 358
  • 360