SQLinfo.ru - Все о MySQL

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

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

Вы не зашли.

#1 05.11.2009 09:20:08

asdasd
Участник
Зарегистрирован: 05.11.2009
Сообщений: 1

Нужна помощь с организацией структуры таблицы.

Привет. Пишу новое веб-приложение и решил попробовать грамотно оформить таблицу. Есть столбцы:
id (int) - auto_increment (primary) - ид
user_id (int) - ид юзера
element (varchar(8)) - имя элемента
... [другие столбцы, которые будут извлекаться]

Для каждого юзера есть несколько записей, имеющие разные element (например nickname, status, т.п) Выборку я буду производить по user_id=... and element="...". Есть смысл делать индексы для user_id или element ?

Неактивен

 

#2 05.11.2009 09:41:15

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

Re: Нужна помощь с организацией структуры таблицы.

Неактивен

 

#3 11.10.2010 03:33:57

w588
Участник
Зарегистрирован: 11.10.2010
Сообщений: 4

Re: Нужна помощь с организацией структуры таблицы.

Здравствуйте. У меня вопрос по организации таблиц, одна или две. Планирую сделать мп3 хранилище с голосованием:

Для случай одна таблица:

id|категория|литера песни|название группы|название песни|путь к мп3|голос_за|всего_голосов|описание группы|дата добавления

Количество строк ~40тысяч. Выборка планируется: по id для вывода пути к мп3;
по литере, для вывода названий групп;
по категории, для вывода названий групп.


При этом возникает дублирование множества строк: литера, название групп, описание группы.

Следует ли сделать отдельную таблицу для названных параметров? Интересует с точки зрения скорости. И вообще как влияет текстовые дублированные строки на скорость работы с одной таблицей? стоит ли разделять?

Неактивен

 

#4 11.10.2010 15:51:56

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Нужна помощь с организацией структуры таблицы.

Начните с нормализованных табличек. Денормализацию стоит делать только по
факту необходимости увеличения производительности. И не стоит поднимать
годовалые посты, правда.

Неактивен

 

#5 11.10.2010 18:21:29

w588
Участник
Зарегистрирован: 11.10.2010
Сообщений: 4

Re: Нужна помощь с организацией структуры таблицы.

Paulus спасибо за ответ. Т.е. несмотря на избыточность и больший размер, скорость работы с одной таблицей в данном случае будет выше, чем для двух нормализованных таблиц?

Неактивен

 

#6 11.10.2010 20:09:32

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Нужна помощь с организацией структуры таблицы.

Я этого не говорил. Больше всего будет скорость у базы, которая помещается
в память, и которая сразу хранит все результаты по всем возможным запросам.
Но поддержание хоть сколь нибудь целостной информации в ней станет настоя-
щей пыткой (ну, или тестом на выносливость). Ну и ошибку в приложении Вы,
разумеется, никогда не найдете.

Неактивен

 

#7 11.10.2010 21:46:42

w588
Участник
Зарегистрирован: 11.10.2010
Сообщений: 4

Re: Нужна помощь с организацией структуры таблицы.

м..%...Принял решение разбить на 2 таблички..

Неактивен

 

#8 11.10.2010 21:56:51

w588
Участник
Зарегистрирован: 11.10.2010
Сообщений: 4

Re: Нужна помощь с организацией структуры таблицы.

1 табличка:
group_id|категория|литера песни|название групп|описание группы

2 табличка:
song_id|group_|название песни|путь к мп3|голос_за|всего_голосов|дата добавления

Какие столбцы следует индексировать?

Неактивен

 

Board footer

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