fib0n / SearchEngine

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

hh.homework: search engine

Запуск (работает http://localhost:8000/):

mvn compile

mvn exec:java -Dexec.mainClass="hh.homework.search.Main"

Написать in-memory поисковый индекс, в котором хранятся документы вида {id:"...", text:"..."}. Текст должен храниться только в инвертирванном виде, поиск по id не нужен. Приложение должно быть написано на java и представлять собой http-сервис со следующими запросами:

  1. GET /search?query=???&logic=???&count=???

параметры: query - запрос, ключевые слова в котором разделены с помощью whitespace logic - логика объединения слов: and или or (по умолчанию or) count - максимальное количество результатов

поиск по документам: должен отдавать json с id документов, которые отсортированы по релевантности

  1. POST /index

в теле POST запроса находится json вида {id:"...", text:"..."}.

Документы ранжируются с помощью tf-idf. Приложение должно уметь фильтровать stop-слова и прогонять термы через стемминг. Стемминг писать не нужно, достаточно взять какой-нибудь бесплатный, подерживающий русский и английский языки.

About


Languages

Language:Java 100.0%