Никогда не использовал Sphinx, но пробовал MySQL 5.6 FTS на таблице Innodb с примерно 170k строк. Сделал индекс FTS по столбцу имени (содержит все имена человека). Поиск слова в любой позиции строки MATCH(name) AGAINST("+word*") IN BOOLEAN MODE
работает намного быстрее (в моем случае в 2-3 раза), чем использование name LIKE "word%" OR name LIKE "% word"
. Однако при создании объединений проверьте EXPLAIN, чтобы увидеть, действительно ли используется индекс FTS. Похоже, что оптимизатор MySQL не очень хорошо угадывает, когда следует использовать индекс FTS.