2014-01-22 6 views
0

Я занимаюсь планированием базы данных малого и среднего размера в SQL Server 2008 R2 и недавно смотрел обучающее видео, которое упомянуло (кратко) тему Схемы.Использование схем в SQL Server 2008/2012

Используются ли они в организационных целях или целях безопасности? Я думал использовать их в своем дизайне, потому что хочу иметь раздел архива моей базы данных, где он будет хранить данные старше 1 года, но которые все еще существуют в базе данных. И отделите это от «активных» таблиц данных, которые будут представлять собой данные, возраст которых меньше года.

Я думал о создании двух схем с одинаковыми структурами таблиц (с той лишь разницей, с которыми связана их схема) с именем «Архив», а другой - с именем «Текущий» (с целью сортировки (или SQL Server может даже разрешить одно и то же имя таблицы, но в разных схемах?)

ответ

0

«Используются ли они в организационных целях и/или целях безопасности? "

  • Оба.

"Вы можете иметь такое же имя таблицы, но в двух разных схемах"

  • Да, вы можете. Но я бы не хотел, если UNLESS (при повторном чтении в отношении комментариев) это своего рода схема архива, и в этом случае я бы назвал таблицы одинаковыми.
+0

Так что, я думаю, из вашего ответа, возможно, было бы лучше создать поле (битового значения), чтобы указать, является ли строка «архивированной» или нет, а не дублирует таблицы? Таким образом, в запросе я бы просто сказал, чтобы найти записи, чей флаг «archive» установлен в FALSE или что-то в этом роде ...? Я знаю, что SQL Server (и MySQL в этом отношении) может обрабатывать миллионы строк за считанные секунды, но в основном это касается скорости выполнения запросов, когда таблица становится большой - скажем, более 500 000 строк. – CLB

+0

Чтобы повысить производительность, вы анализируете рабочую нагрузку (любые запросы, которые вы используете), а затем применяете индексы как практические. Не усложняйте свой дизайн флагом архива, который должен быть включен в каждый запрос. Это просто усложнит ситуацию. –

Смежные вопросы