Есть известные системы для реализации такого поиска: apache lucene (solr, elasticsearch), sphinx; ну и остальные, мне неизвестные, а значит ненужные.
Хотелось бы в поверхностном ключе, вашими практико-теоретическими напутствиями, войти в курс дела и залить в основу логической мысли фундамент рационального применения в масштабном проекте того или иного поискового движка (или обёртки над ними), а может нескольких сразу (как я понимаю — декомпозиционировать одно большое решение слоями/модулями).
В основе развития событий лежит, ну давайте, высоконагруженный проект рода и пола твиттера с более сложным бизнесом внутри и, соответственно, ряд дебильных вопросов:
— В каком виде хранятся индексы?
— Каковы основные этапы оптимизации поисковых движков при линейном росте содержимого/нагрузок?
— Последний вопрос забыл, подскажите? :)
В общем, прошу литературы или интересных ссылок, а может даже частичку опыта, дабы оперируя плюсоминусами — родить более подходящее под себя решение. При этом имеет смысл уйти от конкретики, в силу того, что задачи как таковой нет (а может и есть; смотреть несабжевый тег). Приветствуется словоблудство ради скилла.