Elasticsearch имеет отличную DSL. Однако как мы реализуем пользовательский язык запросов, который позволит пользователю говорить, например. Name = Dwayne OR Johnson
похоже на то, что Atlassian Jira реализовала как JQL.Человеческий дружественный язык запросов, аналогичный JQL (язык запросов jira) для elasticsearch
Я прошел через https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-query-string-query.html. Но синтаксис lucene | и & могут быть еще более техничными для пользователя.
Другим вариантом было бы реализовать синтаксический анализатор пользовательских запросов и тип запроса как elasticsearch плагин, вероятно, с помощью ANTLR или пропаренный
Однако, если есть библиотеки/рамки, которые уже делает это, то было бы проще просто использовать их. (например, http://www.loc.gov/standards/sru/cql/spec.html)
Итак, вопрос в том, существуют ли такие рамки/библиотеки?
Вы проверили 'simple_query_string' https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-simple-query-string-query.html? – Val
Да, я упомянул, что в моем вопросе тоже используется синтаксис lucene, который, по моему мнению, не настолько удобен для пользователя. Спасибо за ответ –
Нет вы упомянутых 'query_string',' simple_query_string' - это более простой вариант 'query_string', ориентированный на конечных пользователей. – Val