У меня есть сайт аренды автомобилей PHP/MYSQL. В таблице MYSQL я хранитьКак нормализовать базу данных MySQL
- автомобильных номерные знаки
- автомобиля спецификации (как AC, марка и такие)
- цены за день (30 colums), так как цена за 1 день X евро в день, и за 30 дней, скажем, составляет 1 евро в день
- страхование в день (это за автомобиль , потому что это зависит от конкретной истории автомобиля, год, ), модель, модель и т. д.). Так, так как есть 30 дней в месяц, мы есть здесь еще 30 столбцов, так как страхование за 1 день <> страховой в течение 28 дней, скажем
Теперь, если я положил все эти вещи в меня будет о 70 колоний. Любые более умные способы сделать это, чтобы избежать удара производительности? Я не контролирую цены, и нет ежедневной цены или ежедневной формулы страхования.
Один идеей будет использование автомобильных табличек в качестве индекса и удар в 2 стола, один с ценами (35 строк), один со страховкой (35 строк). Любой другой?
БД имеет 1000 автомобилей или около того. Я получаю около 10.000 запросов в день в БД
Доброго спасибо.
'цена за день (30 номеров)' ... это не будет хорошо масштабироваться, если у вас более 30 дат. Вместо этого измените даты на запись (строку). –
Этот вопрос немного широк, чтобы ответить, и некоторые вещи неясны (по крайней мере, для меня). Но да, общая идея нормализации/реляционных баз данных заключается в создании отдельных таблиц, как вы уже говорили. Однако можно ли арендовать автомобиль только на срок до 30 дней? Я думаю, вам нужно тщательно подумать о том, что именно вы подразумеваете под ценой в день. Я не могу себе представить, сколько дней в месяц является ограничивающим фактором для аренды автомобиля. Или это? –
1000 и 10000 и 35 и 35 * 1000 являются «крошечными» числами. У вас нет проблем с размером и производительностью (при условии, что у вас есть подходящие индексы). –