У них есть свои (и достаточно весомые недостатки):
1. Только сиквел 2008 и выше (проект, для которого это изначально делалось, был на 2005 enterprise)
2. Их нельзя использовать в кластерном индексе (мне не надо, но вдруг кто-то пользует?)
3. (самое главное, как по мне) Не-нуловые строки занимают в полтора-два раза больше места. Для интов, например, 8 байт вместо 4, для мани - 12 вместо 8. Т.е. заполнение колонки должно быть на 1/5 - 1/3 для получения экономии. В моих проектах обычно распределение параметров по заполняемости примерно одинаковое, исключение составляют разве что PRM_STRING, которых меньше.
Добавлено: Ср Апр 11, 2012 11:54 am Заголовок сообщения:
alex писал(а):
Кластерный индекс по данным? Это от души. Самое интересное будет при вставке в середину таблички с парой сотен тысяч строк.
Ну подумаешь, пару тысяч сплитов Но на самом деле боюсь даже предположить, что надо делать в акценте (кроме какого-то мегаимпорта), чтобы зафигачить внутрь таблицы несколько сотен тысяч строк... Я обычно делаю заполнение индексов журнала, документов, валют и мисков на уровне 90% - при ежедневной перестройке вполне хватает. Если джоб не отработает пару дней - начинает тупить при большом количестве ежедневных апдейтов/инсертов (специфика моих проектов в том, что проводки генерятся на следующие 10-20-30-40 лет и джорнал колбасит неслабо).
alex писал(а):
И еще. SPARSE означает, что NULL значения ВООБЩЕ не занимают места. MS рекомендует ставить SPARSE, если >80-90% значений = NULL.
Насколько я помню, в Акценте в таблицах параметров все значения nullable - если это не так, то нужно заменить процедуры выборки-записи в эти таблицы.
P.S. Пожалуй все это имеет смысл только для DOC_PARAMS, JRN_PARANS - все остальное относительно маленькое.
nullable не занимает ничего. Зато то, что не null - занимает в полтора-два раза больше. Потому я и говорю, что если в параметрах есть сильный перекос в сторону одного из полей (например, 90% параметров - long), то sparse можно и нужно использовать. А если (как у меня) все типы - срединка на половинку - выгода абсолютно теряется.
З.Ы. Еще в разных проектах может AG_PARAMS, ENT_PARAMS. У меня вот на маленьком проекте на 1,3м проводок - 0,8м параметров проводок, 120к корреспондентов и 360к параметров корреспондентов. Все относительно.
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах