Как реализовать систему тегов

Мне было интересно, как лучше всего внедрить систему тегов, подобную той, что используется в SO. Я думал об этом, но я могупридумать хорошее масштабируемое решение.

Я думал о том, чтобы иметь базовое решение за 3 столами: иметьtags стол,articles столы иtag_to_articles Таблица.

Это лучшее решение этой проблемы, или есть альтернативы? Используя этот метод, таблица будет очень большой по времени, и для поиска это не слишком эффективно, я полагаю. С другой стороны, не так важно, что запрос выполняется быстро.