В настоящее время я занимаюсь разработкой веб-сайта, который позволяет пользователям загружать презентации, документы и электронные книги (что-то вроде scribd и slideshare), поэтому мне нужно иметь возможность поиска по содержимому файла.В настоящее время я извлекаю текст из файлов в текстовом файле.Я рассматриваю 2 варианта, поскольку я использую MySQL:
- Сохранение простого текста в отдельной таблице и использование полнотекстового индекса mysql для его поиска.
- Использование инвертированного индекса для храненияслова и поиск по ним.(2 новые таблицы - слова и многие ко многим с таблицей документов).Теперь, в этом случае, что я могу сделать, чтобы работать с повторяющимися словами, которые придают большее значение результатам.
Текст будет использоваться только для поиска.Проблема с (1) состоит в том, что текст электронной книги может быть огромным, поэтому я думаю ограничить его (например) до 50 КБ или меньше.(2) также есть проблема с большим количеством слов в электронной книге, которая, опять же, может быть ограничена.
Так что вы можете указать мне лучший способ индексировать текст и иметь возможность быстро выполнять полный текстпоиск.В этом случае мне нужно извлечь максимум пользы из mysql.