Каковы плюсы и минусы использования возможностей полнотекстового поиска MySQL - PullRequest
2 голосов
/ 09 августа 2010

Прежде всего: я безуспешно пытался найти на Stackoverflow.com какие-либо подсказки по моей проблеме, однако, если я что-то пропустил, пожалуйста, дайте мне знать!


В моей базе данных есть таблица, содержащая метаданные (например, описание и т. Д.) И некоторую другую информацию (имена файлов и т. Д.) О количестве файлов.

Я бы хотел предоставить пользователям возможность поиска среди файлов, которые соответствуют поисковому запросу как по имени файла, так и по описанию.

Как лучше всего решить эту проблему, если я буду использовать функции полнотекстового поиска MySQL или есть лучший способ решения этой проблемы? Какие-либо проблемы с производительностью, которые следует учитывать?

Заранее спасибо!

Ответы [ 2 ]

2 голосов
/ 09 августа 2010

Полнотекстовый поиск MySQL делает ваши поиски более надежными и гибкими.Это «поиск на естественном языке», то есть вы можете создать правила, к которым должен адаптироваться поиск, например, порядок / границы слова / и так далее.Более того, полнотекстовый поиск может быть адаптирован, например: Расширение полнотекстового запроса , запоминает «синонимы» во время поиска.

Некоторые недостатки заключаются в том, что вставлять большие наборы данных в производительность сложнотаблица с полнотекстовым индексом, которую можно использовать только для таблиц MyISAM.

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

0 голосов
/ 09 августа 2010

Помимо проблем с производительностью и масштабируемостью, основным недостатком является использование полнотекстового поиска в MySQL, вы должны использовать MyISAM в качестве механизма хранения, что довольно редко встречается в настоящее время.

В любом случае, я бы сказал,Настоятельно рекомендуем вам попробовать Sphinx: http://www.sphinxsearch.com/. Он очень прост в настройке и интеграции с MySQL.Выдающимися пользователями Sphinx являются Craigslist и MySQL.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...