Мы использовали Lucene в течение последних лет, и мы собираемся перейти на ElasticSearch. У нас есть много запросов Lucene (сложных), которые мы хотим использовать повторно. Я видел в ElasticSearch API "query_string" (https://www.elastic.co/guide/en/elasticsearch/reference/6.3/query-dsl-query-string-query.html#query-string-syntax).. Он работает довольно хорошо для простых запросов, но не работает при использовании таких функций, как spanNear или spanOr См. Ниже часть запроса:
spanNear([spanOr([ADDRESS:13, ADDRESS:13a, ADDRESS:13b, ADDRESS:13c, ADDRESS:13d, ADDRESS:13e, ADDRESS:13f, ADDRESS:13g, ADDRESS:13h, ADDRESS:13i, ADDRESS:13j, ADDRESS:13k, ADDRESS:13l, ADDRESS:13m, ADDRESS:13n, ADDRESS:13r, ADDRESS:13s, ADDRESS:13u, ADDRESS:13v, ADDRESS:13w, ADDRESS:13x, ADDRESS:13y, ADDRESS:13z]), [ADDRESS:carlton, ADDRESS:chalton, ADDRESS:charaton, ADDRESS:charleton, ADDRESS:charlon, ADDRESS:charlson, ADDRESS:charlston, ADDRESS:charlton, ADDRESS:charltons, ADDRESS:charlvon, ADDRESS:charston, ADDRESS:charton, ADDRESS:chorlton, ADDRESS:harlton, ADDRESS:sharlton]))
Знаете ли вы, как лучше всего использовать запросы такого рода, не переписывая их в формат ES? Мы используем библиотеки Java Lucene для генерации запросов на случай, если это поможет. Заранее спасибо.