Я использую Lucene для поиска работы с использованием .net. Перед лицом проблем, связанных с производительностью, в следующем примере использования. Использование: При поиске работы пользователь может выбрать место работы (для exameple: Atlanta, GA) и выбрать радиальное расстояние (скажем, 50 миль). Время, необходимое для возврата результатов поиска работы из Lucene, довольно велико.Улучшение производительности поиска по местоположению с использованием Lucene
FYI, мы поддерживаем базу данных sql server 2005, где мы размещаем город, штат, долготу и широту США и Канады (содержит в общей сложности около 1 миллиона записей).
В любом случае я могу улучшить работу этого поиска на основе местоположения на основе поиска?
Не могли бы вы рассказать о том, как именно вы используете Lucene для поиска по местоположению в зависимости от вашей базы данных? Например, когда пользователь ищет «Атланту, штат Джорджия», как Луцен знает, в каких городах они находятся в радиусе 50 миль от него? Нужно ли сначала запрашивать базу данных? –
Спасибо за комментарии ur. У нас есть API-интерфейс расстояния на основе .Net, который принимает местоположение в качестве входных данных и возвращает ближайшие города в пределах заданного радиуса. Затем эта коллекция предоставляется Lucene для поиска заданий. – user74042
Итак, вы ищете индекс Lucene для строки «Atlanta, GA»? Что вы индексируете? Вы индексируете «Атланту, штат Джорджия» в качестве одного термина или делится на токены? – Gandalf