у нас есть приложение eMall, основанное в основном на основной таблице MySQL размером ~ 500 тыс. Строк (с таблицами подробностей, в которых хранятся поля без возможности поиска, и другими связанными таблицами с информацией о магазине и т. Д.).
Сегодня пользователи могут выполнять поиск на основе определенной структурированнойданные о продукте (например, бренд, категория, цена, конкретный магазин и т. д.).
Мы также хотели бы поддерживать поиск по ключевым словам в сочетании со структурированными данными.
Мы также хотим повысить производительностьнаше приложение и рассматриваем наши варианты инфраструктуры для достижения как функциональных требований поиска по ключевым словам, так и технических требований повышения скорости:
Lucene, Sphinx и т. д. для индексации всех продуктов?БД NoSQL (монго, кушетка и т. Д.), Используемый в качестве промежуточного уровня кэширования перед MySQL?БД NOSQL для замены MySQL?
Комбинация вышеперечисленного?
В случае Lucene и Sphinx - насколько они гибки с точки зрения объединения структурированных критериев?Или нам нужно сначала запустить текстовый поиск, а затем отфильтровать результаты по второму структурированному запросу на MySQL?
Любые подсказки или уроки, извлеченные из вашего собственного опыта, будут более чем приветствоваться!
заранее спасибо