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

Откуда: Ростов-на-Дону
Сообщений: 344
Здравствуйте!

У меня некоторый возврат к теме секционирование предыдущая проблема была описана тут которая так ничем и незавершилась потому что приоритет у задачи так и не повысился.
Сейчас мне нужно сделать подборку чем секционирование таблиц лучше секционированных представлений (partitioned views)

Вот у меня получилась такая таблица во вложении, может быть кто-нибудь дополнит что-то из своего опыта.

Источники:
1 https://technet.microsoft.com/en-us/library/cc966424.aspx
2 https://technet.microsoft.com/en-us/library/dd578580(v=sql.100).aspx

Таблица полностью из документа (1) кроме версий.
Если кто-то использует секционированные представления, поделитесь почему не переходите на секционированные таблицы.

Насколько я понимаю ключевое различие, что с представлением нужно очень много делать вручную и это ключевой минус.

К сообщению приложен файл (TableVsView.xlsx - 12Kb) cкачать
12 дек 16, 17:27    [19994580]     Ответить | Цитировать Сообщить модератору
 Re: Секционированные таблицы vs представления  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 8807
Nimua,

формально это тоже самое. Таблицу проще обслуживать.
12 дек 16, 17:41    [19994641]     Ответить | Цитировать Сообщить модератору
 Re: Секционированные таблицы vs представления  [new]
a_voronin
Member

Откуда: Москва
Сообщений: 4893
Nimua,

Как человек имеющий некоторый опыт в работе с партициями, я придерживаюсь следующих взглядов.

1) Никогда не делать MERGE и SPLIT партиций на диапазонах уже заполненных данными
2) Генерировать партиции вперед с запасом на будущее
3) Большое кол-во партиций не является проблемой и не создает сильных издержек для обычных транзакций
4) Отгонять партиции в смежную таблицу и транкейтить их там

Что касается вьюх -- я бы вообще без надобности индексировать их не стал, тем более партиционировать
12 дек 16, 18:23    [19994793]     Ответить | Цитировать Сообщить модератору
 Re: Секционированные таблицы vs представления  [new]
Nimua
Member

Откуда: Ростов-на-Дону
Сообщений: 344
Владислав Колосов,
Спасибо!

a_voronin,

А использовали sliding window сценарий или новые партиции создаются вручную?

У меня был опыт работы с партициями, но мы сделали просто разные партиции на разные месяца и не нужно было добавлять партиции.
12 дек 16, 18:35    [19994837]     Ответить | Цитировать Сообщить модератору
 Re: Секционированные таблицы vs представления  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31957
Nimua
Сейчас мне нужно сделать подборку чем секционирование таблиц лучше секционированных представлений (partitioned views)
То есть нужно подогнать факты под готовый вывод, что ли? Какая задача то?

Nimua
Насколько я понимаю ключевое различие, что с представлением нужно очень много делать вручную и это ключевой минус.
Разве есть какие то отличия, про сравнению с секционированной таблицей? Тем более "ключевые"?

В обоих случаях нужно сделать некие действия с метаданными, выполняя некие T-SQL команды.

"Само по себе" оно управляться не будет, нет опций для секционированных таблиц, что бы, например, секции добавлялись или удалялись автоматически.
12 дек 16, 18:48    [19994892]     Ответить | Цитировать Сообщить модератору
 Re: Секционированные таблицы vs представления  [new]
Nimua
Member

Откуда: Ростов-на-Дону
Сообщений: 344
alexeyvg,

Нет, не так сформулировала => нужно сравнить 2 подхода и записать плюсы и минусы и уже сделать вывод каким путем идти.

Да, я понимаю что оба решения требуют работы, на мой взгляд пока то что я вижу путь через представления требует работы несколько больше. Я обычно стараюсь сделать каким то стандартным способом.
12 дек 16, 19:28    [19995007]     Ответить | Цитировать Сообщить модератору
 Re: Секционированные таблицы vs представления  [new]
a_voronin
Member

Откуда: Москва
Сообщений: 4893
Nimua
Владислав Колосов,
Спасибо!

a_voronin,

А использовали sliding window сценарий или новые партиции создаются вручную?

У меня был опыт работы с партициями, но мы сделали просто разные партиции на разные месяца и не нужно было добавлять партиции.


Я обычно генерю партиции с запасом вперед, а не скользящее окно. На три года вперед по месяцам. Но я проводил эксперименты, которые показали, что наличии сотен и даже тысяч партиций особого замедления не дает. Я имею ввиду заранее подготовленные партиции не обязательно сейчас заполненные данными.
12 дек 16, 19:53    [19995084]     Ответить | Цитировать Сообщить модератору
 Re: Секционированные таблицы vs представления  [new]
zasandator
Member [скрыт] [заблокирован]

Откуда:
Сообщений: 4887
a_voronin,

В 2008 sql было ограничение до 1024 партиций.
С позними версиями только работали?
12 дек 16, 22:57    [19995521]     Ответить | Цитировать Сообщить модератору
 Re: Секционированные таблицы vs представления  [new]
zasandator
Member [скрыт] [заблокирован]

Откуда:
Сообщений: 4887
Nimua,

Из того с чем сталкивался навскидку....
1. Партишн вью преимущества - можно попробовать партицировать по 2м и более полям - ничего тноретически не мешает.
А из минусов. Если некоторые таблицы/секции находятся в файловых группах ридонли - без триггера инстидоф во вьюху не вставите запись, хоть и чеки все корректны. А с таблицей партицированной норм всавка и модификация при части секций в ридонли фг.
12 дек 16, 23:01    [19995538]     Ответить | Цитировать Сообщить модератору
 Re: Секционированные таблицы vs представления  [new]
fnmd
Guest
https://www.brentozar.com/sql/table-partitioning-resources/

SQL Server Table Partitioning: Resources
12 дек 16, 23:05    [19995549]     Ответить | Цитировать Сообщить модератору
 Re: Секционированные таблицы vs представления  [new]
Nimua
Member

Откуда: Ростов-на-Дону
Сообщений: 344
fnmd,

О спасибо! огромная подборка материалов.
13 дек 16, 18:52    [19999131]     Ответить | Цитировать Сообщить модератору
 Re: Секционированные таблицы vs представления  [new]
Jovanny
Member

Откуда:
Сообщений: 1196
Ещё минус секционированных представлений - нельзя применить BULK INSERT.
14 дек 16, 09:34    [20000673]     Ответить | Цитировать Сообщить модератору
 Re: Секционированные таблицы vs представления  [new]
FOX75
Member

Откуда:
Сообщений: 29
Jovanny
Ещё минус секционированных представлений - нельзя применить BULK INSERT.

аха и запросы без предиката поля секцианирования...да куча еще нюансов. Я думаю ооооочень серьезно подумать. Подумал... отложил, потом еще раз подумать.. сходить в отпуск. А вот потом уж принять решение...Шутка, но в каждой шутке есть доля шутки!
14 дек 16, 10:27    [20000999]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить