Индексация, поиск и ранжирование.
Цель
Создать поисковый индекс для картинок по результатам работы из задания 3. Новое приложение при старте заполняет базу, строит индекс типа keyword -> [id1, id2, id3], нормализует запрос из командной строки, находит соответствия и выдает список url картинок, до 10 штук. Предусмотреть возможные ограничения по времени при выполнении задания.
Критерии приемки
- xkcd при запуске проверяет заполнение базы, дозаполняет остатки.
- xkcd принимает запрос как в первом задании, с флагом -s:
xkcd -s "I'm following your questions”
Приложение должно найти слова после нормализации в database.json и вывести до 10и наиболее релевантных комиксов - urls
- хкcd строит индексный файл index.json c обозначенной в задании структурой, например
{
"question": [101, 202, 568],
"follow": [35, 68, 303, 234]
}
- Добавить флаг -i чтобы поиск шел по индексу.
- На сколько быстрее происходит поиск по индексу? Попробовать сделать бенчмарк (go bench tool)
- (со звездочкой) Подумать, как лучше ранжировать результаты, если придумали, реализовать.
Материалы для ознакомления
Benchmarks
Поиск
Индексация, поиск и ранжирование.
Цель
Создать поисковый индекс для картинок по результатам работы из задания 3. Новое приложение при старте заполняет базу, строит индекс типа keyword -> [id1, id2, id3], нормализует запрос из командной строки, находит соответствия и выдает список url картинок, до 10 штук. Предусмотреть возможные ограничения по времени при выполнении задания.
Критерии приемки
Приложение должно найти слова после нормализации в database.json и вывести до 10и наиболее релевантных комиксов - urls
Материалы для ознакомления
Benchmarks
Поиск