2010-03-10 3 views
0

Где у меня есть поиск, который имеет категорию (внешний ключ) и необязательный текст, следует ли использовать мышление sphinx для поиска, где строка поиска не была отправлена, только категория?Thinking sphinx/mysql for non text search

ответ

1

Это действительно зависит от вашего варианта использования. Скажем, например, у вас есть записи в блогах, и у них есть категории a, b и c.

Если вы хотите, чтобы yoursite.com/a/ список всех сообщений в категории a в порядке от самого нового до самого старого, то, вероятно, не самая лучшая идея использовать sphinx/search для этого. Это будет простой запрос к базе данных, возможно, с разбиением на страницы.

Однако предположим, что вы хотите, чтобы эта страница отображала все сообщения этой категории или которые могут относиться к этой категории в соответствии с текстом, а также, возможно, сообщения, имеющие теги, относящиеся к этой категории. В этом случае, вероятно, лучше использовать поисковую систему, такую ​​как sphinx, для питания этой страницы. Поисковая система будет намного быстрее, если эквивалентный запрос к базе данных будет очень дорогим.

+0

Привет и спасибо за ваш ответ. Первый описанный вами сценарий - это случай, когда пользователь переходит к категории. Затем они вводят строку поиска и/или выбирают многие из многих тегов. Я просто задался вопросом о перемещении категории между тегами и последовательном поиске, выполняемом сфинксом, будь то текст или нет. Я, возможно, нуждаюсь в элементах, чтобы иметь много категорий, и это обеспечило бы большую гибкость. Сравнительно, сфинкс медленнее, чем mysql для нетекстового поиска? Еще раз спасибо. – mark

+0

Полнотекстовый поиск во многом основан на том, что сфинкс и другие поисковые системы (Lucene, Xapian, Solr) выполняют MySQL. –