Skip to content

Se antal dokumenter i et index

Med API kald til Elasticsearch kan du se antal dokumenter i et index. Ved at lave en søgning vil du få nogle meta data med som viser hvor mange hits du har med den givne søgning. Du skal dog være opmærksom på at Elasticsearch ikke altid viser det total antal. Hvis der er mere en 10.000, vil den blot som standard vise at der er 10.000.

Her er først en simpel søgnin som gælder for alle dokumenter i det valgte index:

Elasticsearch søgning

Her vil su så få en resultat lignedende dette:

Resultat af Elasticsearch søgning

Som du kan se så siger den under ‘hits – total – value’ at der er 10.000. Men dette er ikke sikkert er det korrekte antal, som sagt så viser den kun op til 10.000 hvis ikke du tvinger den til det.

Hvis du i stedet laver en søgning med ‘track_total_hits’ så vil den bruge de ekstra kræfter på at vise dig det helt rigtige antal.

Elasticsearch søgning med 'track_total_hits'

Herunder kan du se hvad resultater i virkeligheden er i dette eksempel:

Resultat af søgning i Elasticsearch med 'track_total_hits'

Hvis du kun er intresseret i at retunere antallet, vil en optimering desuden være at lade være med at retunere nogle dokumenter.
Det kan du gøre ved at sætte ‘size’ til 0

Det gøres sådan:

Optimeret søgning i Elasticsearch med 'size' 0

Og resutlatet er som følhende:

Resultat at søgning i Elasticsearch med 'size'

Som du kan se så er der i dette tilfælde inden ‘hits’ retuneret, men kun, meta data omkring din søgning. Dette vil optimere din kode så der ikke benytte unøding hukommelse til at opbevare resultater som ikke skal bruges.

Back To Top