Эффективный алгоритм работы для посторения облака тэгов php/mysql.
Добрый день!
подскажите как сделать наиболее быстрое создание и поиск по облаку тэгов на записи.
Предположим есть большая таблица с именами (и тэги к ним).
Роман (Москва, Студент, Рыжий)
Николай (Борода, Кареглазый)
Иван (Урод, Кидалово, Гей)
Как видите тэгов может быть много и они абсолютно разные.
Нужно выполнять по базе поиск по данным тэгам.
Вынести тэги в отдельную таблицу и джоинить её некатит - слишком долгая операция.
Сделать это поле как SET тоже не катит т.к. у SET ограничение на 64 разных тэга. А это поле по сути бесконечно возможный SET
Пока выручает что тэги пишутся в проиндексированное текстовое поле и поиск ведётся так - SELECT * WHERE `tag` LIKE '%Борода%' OR `tag` LIKE '%Студент%'
возможно есть какое-то более красивое решение задачи?