Цитаты в результатах поиска

P
На сайте с 28.11.2004
Offline
1
1079

Вопрос об организации "цитат" в результатах поиска (куски текста с подсветкой):

Это реализуется через хранение позиций слов в индексе и динамическим восстановлением текста (как же тогда с урезанием словоформ?) или каждый раз подгружается истинная страница?

По-моему первое логичнее, но какой алгоритм?

В этом случае нужно хранить в индексе все словоформы, не урезая их (пажежи, числа и т.д.) до основы, а это накладно с точки зрения места и ресурсов. Сомнения берут, что в этом случае можно умять индекс в 5 раз (как у Яндекса) по сравнению с оригиналом (учитывая все параметры хранения - i.e. позиции и т.д.)

Может уже и обсуждалось, но не нашел...

LM
На сайте с 30.11.2001
Offline
71
LiM
#1

Это реализуется по первому названному Вами методу. А словоформы в чистом виде и не хранятся. Скорее всего дело обстоит так: для известных слов хранится порядковый номер основы слова во внутреннем словаре + численный определитель, позволяющий из основы восстановить нужную флексию. Неизвестные системе слова хранятся "как есть" (тоже запоминается индекс, но из другого словаря).

Такая методика во-первых, сильно сокращает объем базы для известных слов, во-вторых, позволяет быстро находить все вхождения словарного слова, вне зависимости от флексии.

Это если вкратце... :)

С уважением, Андрей Хроленок. Загляни в FAQ по оптимизации и продвижению сайтов (http://www.seoman.ru/FAQ/) Анализатор страниц сайтов (http://www.seoman.ru/analizer/)
P
На сайте с 28.11.2004
Offline
1
#2

Примерно так я и полагал. Спасибо.

Правда, в моем проекте у меня не будет возможности приобрести хороший морфологический анализатор, придется делать все руками, что, собственно, и начал.

Не подскажете, где можно посмотреть такую несложную статистику, как количество основ и словоформ (по данным поисковиков для русского языка), среднее число слов/уникальных слов на странице и подобные данные. Это будет очень полезно для оценки объема БД индекса.

Кстати, при этом способе приходится хранить и все "малые слова", которые обычно фильтруются из запросов (союзы, предлоги и т.д.)? А также цифры (ну их хотя бы индексировать-то нужно).

AA
На сайте с 16.04.2001
Offline
70
#3

Статистику для русского языка можно посмотреть здесь:

Частотный словарь современного русского языка. Конечно, здесь нет особенностей по поисковикам.

приходится хранить и все "малые слова", которые обычно фильтруются из запросов (союзы, предлоги и т.д.)?

Ничего страшного в таком хранении, а также в возможности поиска с учетом предлогов и др. стоп-слов, на мой взгляд, нет. Иначе может оказаться, что поиск такого выражения, как "быть или не быть" будет просто невозможен.

С уважением, Антонов Александр.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий