Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Нормализация. Стоит ли выделять очень маленький справочник?  [new]
Шамиль Фаридович
Member

Откуда: Саратов
Сообщений: 487
Доброго времени суток!
На входе есть tb1 (предположительный объем 3 миллиона строк размером примерно 500Кб каждая),
есть поле Category(varchar(15)), в которой содержится около 15 различный значений.
Поиск по этому полю не предусмотрен.
Стоит ли выделять для этого поля отдельный справочник?

Насколько я понимаю, на скорость чтения это поле влияет не сильно (из-за небольшого размера относительно всей строки), и незначительный выигрыш от замены varchar(15) на tinyint будет целиком нивелироваться необходимостью соединения с таблицей-справочником при выборках.
30 авг 13, 11:03    [14774823]     Ответить | Цитировать Сообщить модератору
 Re: Нормализация. Стоит ли выделять очень маленький справочник?  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
СтОит. И место на страницах сэкономите и дабы потом при необходимости поменять наименование категории не UPDATEтить несколько сотен тысяч строк.

Сообщение было отредактировано: 30 авг 13, 11:10
30 авг 13, 11:09    [14774878]     Ответить | Цитировать Сообщить модератору
 Re: Нормализация. Стоит ли выделять очень маленький справочник?  [new]
Гость333
Member

Откуда:
Сообщений: 3683
Шамиль Фаридович
на скорость чтения это поле влияет не сильно

На скорость чтения чего? Судя по размеру записей, у вас там LOB-данные. Которые хранятся отдельно от in-row данных. То есть скорость чтения in-row данных может повыситься, если после описанных преобразований эти данные будут занимать меньше страниц данных, чем до преобразований.
30 авг 13, 11:10    [14774886]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить