Хобрук: Ваш путь к мастерству в программировании

Конфигурация Solr для реализации автозаполнения с помощью php

как мне проиндексировать мои данные и настроить solr и мои параметры поиска в solr, чтобы возможно автозаполнение (например, google) со следующими требованиями:

Продукты: - У нас есть продукты с их названиями, описаниями, идентификаторами, например для заголовка: toshiba tecra s1: centrino 1.5 ghz / xp pro / 15.0 "tft / 40 gb / 256 mb + 256mb / cd-rw-dvd-rom / lan / wi-fi - этот продукт или поля этого продукта должны должны быть проиндексированы таким образом, чтобы было возможно следующее (без каких-либо различий в том, как пользователь ищет поисковый запрос, например, TOSHIBA или tOSHiba) - если пользователь начинает вводить первые три символа «до» максимум 20 результатов (полный заголовок ( фраза) например, "toshiba tecra s1: centrino 1.5 ghz / xp pro / 15.0" tft / 40 gb / 256 mb + 256mb / cd-rw-dvd-rom / lan / wi-fi ") должно появиться в поле автозаполнения. - если пользователь входит, например, два термина "toshiba tecra" результат поиска должен быть более точным, и должны быть показаны только все документы, содержащие (последовательные) термины "toshiba tecra"

Было бы здорово получить какие-либо подсказки по этому поводу, какой токенизатор / компонент поиска и т. Д. Использовать.

Я использую solr версии 3.5

Спасибо за свои мысли Рамо


Ответы:


1

Solr 3.X имеет встроенный компонент Suggester, который позволяет создавать предложения по ограниченным полям.

Следующие ссылки предоставляют подробные сведения о реализации -
1. http://lucidworks.lucidimagination.com/display/solr/Suggester
2. http://solr.pl/en/2010/11/15/solr-and-autocomplete-part-2/

Для альтернативных подходов вы можете проверить Реализация EdgeNGrams или Компонент условий.

11.12.2011
  • Привет, я думал, что советчик только на условиях. Я попробовал реализовать вторую ссылку, но почему-то не получил описанного выше результата. я не знаю, можно ли искать связный термин .... 11.12.2011
  • Это по срокам, однако будет решено, кому вы будете индексировать термины. Вы можете использовать токенизатор ключевых слов, чтобы заголовки не разделялись на токены в дополнение к фильтрам нижнего регистра, фильтрам ascii, чтобы сделать регистр автозаполнения и язык независимым. 11.12.2011
  • хорошо, я использовал keywordtokenizerfactory и lowercasefilterfactory для индексации и поиска. это теперь хорошо работает. Следующим шагом будет оптимизация solr для повышения производительности поиска. спасибо Джайендра 12.12.2011
  • Новые материалы

    Прогресс в технологии Трансформеров часть 3
    Многомасштабный управляющий сигнальный преобразователь для бесфазного синтеза движения (arXiv) Автор: Линтао Ван , Кун Ху , Лей Бай , Юй Дин , Ваньли Оуян , Чжиюн Ван . Аннотация:..

    Представляем поддержку компонентов Vue.js. Мгновенный HMR и многое другое.
    Хотя у FuseBox уже был плагин Vue, он был базовым и не имел многих функций, которые делали работу с Vue.js такой приятной. Однако с этим выпуском мы рады сообщить, что в FuseBox..

    Приключения в Javascript, часть 1
    Я продолжаю думать о том, чтобы писать больше, но чем больше я думаю об этом, тем меньше я это делаю. Итак, сегодня я перестал думать и начал писать. Отсюда можно только спускаться… В..

    Понимание дженериков в TypeScript: подробное руководство
    Введение TypeScript, строго типизированный надмножество JavaScript, хорошо известен своей способностью улучшать масштабируемость, удобочитаемость и ремонтопригодность приложений. Одной из..

    Учебные заметки JavaScript Object Oriented Labs
    Вот моя седьмая неделя обучения программированию. После ruby ​​и его фреймворка rails я начал изучать самый популярный язык интерфейса — javascript. В отличие от ruby, javascript — это более..

    Разбор строк запроса в vue.js
    Иногда вам нужно получить данные из строк запроса, в этой статье показано, как это сделать. В жизни каждого дизайнера/разработчика наступает момент, когда им необходимо беспрепятственно..

    Предсказание моей следующей любимой книги 📚 Благодаря данным Goodreads и машинному обучению 👨‍💻
    «Если вы не любите читать, значит, вы не нашли нужную книгу». - J.K. Роулинг Эта статья сильно отличается от тех, к которым вы, возможно, привыкли . Мне очень понравилось поработать над..