Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Индексы в архивную таблицу для ХД  [new]
Glebanski
Member

Откуда: Msk ->NL
Сообщений: 313
Приветствую,

Посоветуйте, как лучше поступить с индексами для некой архивной таблицы.
Туда будут валиться данные после их загрузки в ХД. На всяк случай, типа новой перезагрузки, реконсилиации и т.п. Т.е. вроде как выбросить жалко, но и хранить 2 раза одно и то же неохота (оно ж еще в таблицу фактов упадет навечно...)

[DBID] [tinyint] NOT NULL ,
[EventPropertyTypeID] [int] NOT NULL,
[EventDtm] [datetimeoffset](2) NOT NULL ,
[Value] [float] NOT NULL,

Цель в том, чтоб сэкономить места и при этом не выполнять fullscan каждый раз, как надо прочитать старые данные.
Пока 3 варианта пришло в голову:
1. уникальный кластерный индекс по 1-м трем полям в том же порядке. Но что-то есть сомнения - не толстоват ли индекс и нет ли тут перерасхода места.
2. Есть мысль также добавить поле LoadID int not null. Так можно определить временной период через таблицу загрузок.
И на него повесить неуникальный кластерный индекс. Тогда можно будет по кускам данные выбирать и перезагружать в случае чего.
3. Можно ничего не делать, просто все в кучу валить, а там, если вдруг понадобится внезапно, создать индекс...

Предполагается, что в таблицу будут данные bulk insertom попадать.

ЗЫ: щас пока данных мало, но потенциально через пару лет - 1 ТБ в год, 15-20 млрд записей. Может к тому времени на Enterprise раскошелятся или осел с падишахом окочурятся. (это я к тому, что компресса и партиций пока нет)

Спасибо
22 окт 14, 17:05    [16744588]     Ответить | Цитировать Сообщить модератору
 Re: Индексы в архивную таблицу для ХД  [new]
SERG1257
Member

Откуда:
Сообщений: 2750
Решение "в лоб" - создаете новую таблицу для каждой заливки - легко перезалить, легко чистить, легко грохнуть,
плюс вьюха объединяющая все таблицы для заливки
http://technet.microsoft.com/en-us/library/ms190019(v=sql.105).aspx
22 окт 14, 17:44    [16744786]     Ответить | Цитировать Сообщить модератору
 Re: Индексы в архивную таблицу для ХД  [new]
Glebanski
Member

Откуда: Msk ->NL
Сообщений: 313
SERG1257,

Вариант интересный,
А че это на 2008 R2 все кончается?
22 окт 14, 17:52    [16744827]     Ответить | Цитировать Сообщить модератору
 Re: Индексы в архивную таблицу для ХД  [new]
Дедушка
Member

Откуда: Город трёх революций
Сообщений: 5111
имхо,
отказаться от таблицы, хранить в виде текстовых файлов.
бить как удобно, жать архиватором.
22 окт 14, 20:11    [16745397]     Ответить | Цитировать Сообщить модератору
 Re: Индексы в архивную таблицу для ХД  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74925
Секционированные представления, ReadOnly файловые группы и бэкапы со сжатием существуют и в Standard редакциях, если версия не ниже, чем 2008R2 (в части сжатия бэкапов).
22 окт 14, 22:40    [16745984]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить