SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 02.01.2014 15:58:01

Sandr
Участник
Зарегистрирован: 07.03.2012
Сообщений: 12

Реализация меток

Доброго времени суток. Подскажите пожалуйста как правильно реализовывать метки/теги к записям? К примеру, есть таблица с записями в блоге и я хочу, чтобы к каждой записи можно было добавлять много(в идеале - не ограничено) меток.

На ум приходит только создание отдельной таблицы со следующей структурой:
id | post_id | name

id - уникальный номер метки;
post_id - id записи метки;
name - название метки

Но дело в том, что предполагается большое количество записей и меток к ним => БД распухнет. Не будет ли всё это дико тормозить при, скажем, 100000 записях и 1000000 меток? Может быть есть варианты с лучшей структурой чем эта?

Неактивен

 

#2 02.01.2014 16:06:27

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Реализация меток

классика жанра.
1. таблица записей (id, ...
2. таблица меток (id, name)
3. таблица связей (post_id, metka_id)

Неактивен

 

#3 02.01.2014 16:09:39

Sandr
Участник
Зарегистрирован: 07.03.2012
Сообщений: 12

Re: Реализация меток

vasya написал:

классика жанра.
1. таблица записей (id, ...
2. таблица меток (id, name)
3. таблица связей (post_id, metka_id)

А зачем нужна таблица связей, если если всё тоже самое можно хранить в таблице меток?

Неактивен

 

#4 02.01.2014 16:13:54

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Реализация меток

В вашем варианте будет дублирование информации - многократное повторение имени метки.

Неактивен

 

#5 02.01.2014 16:24:34

Sandr
Участник
Зарегистрирован: 07.03.2012
Сообщений: 12

Re: Реализация меток

vasya, теперь понятно. Спасибо за помощь smile

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson