opensearch-project/OpenSearch

[Feature Request] Analyzers on non-text sub fields

Open

#11.882 aberto em 15 de jan. de 2024

Ver no GitHub
 (3 comments) (0 reactions) (0 assignees)Java (1.505 forks)batch import
Indexingenhancementhelp wanted

Métricas do repositório

Stars
 (8.123 stars)
Métricas de merge de PR
 (Mesclagem média 5d 9h) (266 fundiu PRs em 30d)

Description

Is your feature request related to a problem? Please describe

In my domain, Every single type of document has an id that consists of two parts: id space and thei d itself, e.g. 31-111. When trying to sort by id, I'd actually want to sort by the last part, numerically. Currently I cannot create an analyzer for a sub field (ie.g. d.number) that would index the id part as a long because analyzers work on strings.

Describe the solution you'd like

When the main field is a string (text, keyword) and the sub field is another type, you should be able to set an analyzer to the sub field. Opensearch should try to cast the result to the type of the sub field.

Related component

Indexing

Describe alternatives you've considered

Store the number part in a separate field.

  • It's not part of the data so the result is awkward.
  • The purpose of sub fields is to avoid this exact thing.

Script sorting

  • Performance becomes an issue.

Additional context

No response

Guia do colaborador