If we take a look into the output of some of the APIs especially of search and run below command for a particular index let's say twitter
curl <host-ip>:9200/twitter/_search/pretty
below is response that we get
{
"took" : 4,
"timed_out" : false,
"_shards" : {
"total" : 5,
"successful" : 5,
"skipped" : 0,
"failed" : 0
},
"hits" : {
"total" : 0,
"max_score" : null,
"hits" : [ ]
}
}
my question here is why do we have an _ in shards field name and make it _shards. If that is the way people decided to go why don't we have have _ in took, timed_out and hits.