Задавайте вопросы, мы ответим
Вы не зашли.
Доброго времени суток, люди знающие.
Подскажите, посоветуйте по следующей проблеме....
Ведется разработка системы управления и учета клиентов тур оператора, который предоставляет услуги по паломничеству. Область весьма спецефична...Вобщем, есть мастер таблица, куда заносятся основные данные паломников, ну и внешние ключи к другим таблицам. Каждый год, регистрируются 3000-4000 паломников. На каждого паломника приходится еще 5-7 записей в других записях. Для БД это не такие большие объемы. Но все же меня терзает вопрос...К примеру...запси сделанные 2009 г (т.е. паломники сезона 2009) они пркатически не используются в 2010. а записи за 2009 и 2010гг не актульны в 2011...Все они хранятся в одной таблице (в смысле нет разделения таблиц по годам) и пологаю, что педоставляют некую нагрузку при работе с данными за текущий год. Стоит ли беспокоится по данному поводу? Каким образом можно оптимизировать таблицу в данной ситуации?Подскажите пожалуйста в каком напрвлении думать и работать?
Неактивен
Вообще для таких случаев есть такая вещь как Партиционирование таблиц (partitioning)
Но в вашем конкретном случае, у вас очень мало записей, не думаю что вам стоит беспокоится. В крайнем случае если количество паломников резко увеличится, то на partitioning можно перейти всегда.
Неактивен
Спасибо!!! Попробовал разобраться в партициях. суть уловил. Однако....
1) Если при разработке БД не учитывать партицирование, возможно ли при необходимости применить его уже к разработанной и активно используемой системе, невнося кординальные изменения в структура БД?
2) Если применить партицирование к основной таблице (имеетя в виду, что она уже содержит множества записей), то как отразится это на запросах, в которых содержатья ссылки на эту таблицу? Ведь после партицирования одна большая табл разбивается на несколько? Или запросы смогут увидеть эти табл как одну целую?
3) "Foreign keys not supported. Partitioned tables do not support foreign keys..." В моем случае, табл. которую возможно понадобится оптимизровать, содержит внешние ключи. Получается к данной табл не пременимо партицирование?\
4) Партишининг - это скорее девелепмент или администрирование?Имеетя в виду, его нуно учитывать уже при разработке БД?
Прошу прощения,если вопросы совсем глупые. Совсем зеленый пока...Но хочу созреть...
Отредактированно rdk (05.06.2011 14:11:16)
Неактивен
1) Да
2) Да смогут. Запросы будут видеть как одну целую, но естественно преимущество в скорости будет при выборки данных из одной части.
3) Это надо проверить ...
4) В вашем случае, можно раз в году ручками создавать, а можно и автоматом сделать ...
Ну а вообще при таких мелких обьёмах вам это вообще не надо ... :-)
Неактивен
Спасибо за поддержку!))
Неактивен