У меня есть поле диапазона с именем salary
типа int4range
для моей базы данных Postgres. Я намерен индексировать это поле в Elasticsearch. Могу ли я узнать, каков рекомендуемый способ сделать это? Из того, что я знаю, нет типа диапазона в Elasticsearch, только целое число.Индексирование индексирования Postgres int4range range
Итак, нужно ли разобрать начальную и конечную границы int4range по отдельности и проиндексировать их как salary_begin
и salary_end
и во время поиска использовать фильтр диапазона, или есть лучший подход?
Postgres ==> int4range ==> salary (only 1 field in PSQL)
Elasticsearch ==> integer ==> [salary_begin, salary_end] (2 index fields in ES)
Да, ТКС для метода синтаксического анализа. На самом деле меня больше интересует, как интегрироваться с Elasticsearch для int4range. – mech
Я не знаком с ElasticSearch, поэтому я не был бы правильным человеком для этого. Тем не менее, я был бы очень удивлен, если Lucene или ElasticSearch предложили что-либо, отдаленно эквивалентное диапазонам диапазонов Postgres с точки зрения функциональности. Я бы ожидал либо индексировать диапазоны, сколько два разных поля int, как и в Postgres до 9.2, что приводит к главным образом бесполезным индексам btree, а не диапазонам индексов gist. –