1) использовать один из движков поиска (sphinx, ElasticSearch). Есть готовые бандлы, помогающие использовать эти движки в symfony-проекте.
2) либо сделать самому кучу поисков по нужным сущностям, можно сделать UNION запрос:
SELECT id, title, 'article' as `type` FROM Article WHERE ...
UNION SELECT id, title, 'news' as `type` FROM News WHERE ...
UNION SELECT id, title, 'post' as `type` FROM Post WHERE ...
да, второй способ без индексирования. Зато простой :), если поиск нужен "для галочки". Если нужен нормальный поиск с хорошей произодительностью, то используй первый способ.