Как лучше организовать запись в БД (система лайков)?
Как лучше организовать записи в таблице с лайками.
Я делаю так: допустим, есть два поля в таблице id_user и id_article,
id_user - ид пользователя поставившего лайк
id_article - ид записи которую лайкнули
Второй вариант не имеет ограничений по количеству статей, как первый вариант. И будет проще посчитать, сколько лайков у статей, а не сколько пользователей используют систему лайков :-)
Вообще, переделать в будущем можно в любой из этих двух вариантов. Это не должно быть проблемой.
Palehin: данных ведь там немного, 2-4 байта на число, максимум восемь :-)
Подобные вещи обычно вертикально хранят. Это и удобней.
С массивами, на обработку полученных данных тоже время будет расходоваться. Чем больше данных, тем больше потребуется времени. При высоких нагрузках это может существенно все тормознуть.
Если статей мало и сайт размещен на обычном хостинге, то можно и с массивами повозиться. Но с ростом, все равно придется на вертикальный вариант переходить.
Если у Вас возникает сейчас такой вопрос, значит Вы пишите первую версию Вашего скрипа, а если так, значит Вам нужно придерживаться 3-й нормальной формы.