У меня есть экземпляр SOLR с миллионами документов. Схема хорошо определена (т. Е. Все поля напечатаны). Все поисковые/огранки и т. Д. Работают нормально без каких-либо проблем.Запрос на анализ SOLR
Однако, я пытаюсь сделать что-то новое, что я «думаю» не поддерживается в текущей версии. Я запускаю SOLR 3.5 в Windows с помощью Jetty.
Чтобы упростить вопрос, мой документ содержит некоторые поля, такие как:
Id, Имя, Город, JobTitle
Допустим, у меня есть образец данных, как: P Wood, Лондон, директор J Smith, Лондон, менеджер проекта D Lock, Brighton, разработчик K Pracy, Лондон, разработчик
ради примера, предположим, что это та tching, которая позволяет людям находить друг друга. Также предположим, что Id - уникальный идентификатор.
Я хочу написать запрос «выборки», который должен найти мне набор записей, которые будут соответствовать другим записям для любых критериев.
Так, например, я хочу, чтобы определить критерии, как:
Найди мне людей, которые будут соответствовать людей в разных городах с differfent названия работы:
Если вышеуказанная схема была таблица РСУБД SQL (позволяет сказать, человек), примерный запрос будет что-то вроде этого:
SELECT P.Id, ( SELECT COUNT(1) FROM People PI Where PI.Id != P.Id AND PI.City != P.City AND PI.JobTitle != P.JobTitle ) AS FindCount FROM People P
Ну, запрос не может быть работоспособным, но вы получите идею. Во всяком случае, существуют и другие требования, что Findcount должен быть больше x и меньше y.
Может ли кто-нибудь сообщить мне, возможно ли это в SOLR или если это что-то не предназначено для SOLR. Я знаю, что SOLR 4 поставляется с оператором Join, но это похоже на предложение IN, которое ограничивает использование. Например, подумайте, что я хочу, чтобы совпадающий идентификатор также находился в вышеуказанном запросе, а не в процентах.
Вся помощь приветствуется.
Спасибо, Immi