Я думаю, вы должны получить вариант 2.
Вам все равно нужно создать модель голосования, поскольку вы, вероятно, захотите ограничить пользователей одним голосованием по каждому пункту.
Если в дальнейшем у вас возникнут проблемы с производительностью, вы всегда можете кэшировать количество голосов в элементе, теме или категории.
Как вы обновляете эти цифры, должно быть тщательно продумано. Триггер для голосов, который автоматически обновляет все числа выше, может вызвать слишком много операций записи. Другой способ - периодически запускать хранимую процедуру статистики.
В любом случае, реальная точка зрения - не оптимизируйте, пока не узнаете, что есть проблема .