Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Другие СУБД [игнор отключен] [закрыт для гостей] / Teradata. Какие есть методы прикинуть нужный размер spool space? / 16 сообщений из 16, страница 1 из 1
23.11.2012, 14:35
    #38050596
pectopatop
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Teradata. Какие есть методы прикинуть нужный размер spool space?
Имеется база, начало юзерской эксплуатации (на продакшн сервере).
Постоянно происходит "NO more spool space", Spool увеличивается, затем опять происходит падение юзеров по "No more spool space". и т.д..

Админ хочет примерные какие-нибудь формулы - прикинуть сколько надо Spool-а (по юзерам, запросам, объемам таблиц, планам более-менее известно всё)

Ссылки, документы.. приветствуются!
...
Рейтинг: 0 / 0
23.11.2012, 16:52
    #38050966
pectopatop
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Teradata. Какие есть методы прикинуть нужный размер spool space?
Например нормально ли будет так:
- создать тестовую нагрузку каким-нибудь Workload Analyzer
- посмотреть выгребаемый Spool в Teradata Manager
???
...
Рейтинг: 0 / 0
23.11.2012, 16:53
    #38050971
pectopatop
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Teradata. Какие есть методы прикинуть нужный размер spool space?
Далее масштабировать линейно по кол-ву юзеров (если допустим испытывалось на 10 коннектах, работать будут 50 юзеров => множитель 5 ? )
...
Рейтинг: 0 / 0
23.11.2012, 16:58
    #38050984
transpose
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Teradata. Какие есть методы прикинуть нужный размер spool space?
немножко не о том, но вы уверены, что ваши юзвери не грешат skewed запросами? Используете ли вы partitioning? No more spool space часто именно из за этого бывает.
...
Рейтинг: 0 / 0
23.11.2012, 17:01
    #38050991
transpose
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Teradata. Какие есть методы прикинуть нужный размер spool space?
pectopatopДалее масштабировать линейно по кол-ву юзеров (если допустим испытывалось на 10 коннектах, работать будут 50 юзеров => множитель 5 ? )
А спул разве не каждому юзверю индивидуально выделяется?
...
Рейтинг: 0 / 0
24.11.2012, 03:55
    #38051473
Павел Новокшонов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Teradata. Какие есть методы прикинуть нужный размер spool space?
Можно посмотреть MaxSpool для каждого пользователя. Это максимальмый размер spool, который когда либо фиксировался с момента последнего ресета. Также включить DBQL и посмотреть потребление spool по тем или иным запросам. А вообще tranpose дело говорит. Если запросы перекошены, то spool, который также равномерно размазан по AMP-ам может зашкалить, скажем при вытаскивании и перераспределении большой таблички по "левому" первичному индексу из условия join. Как вариант, я бы прописал собрать всю статистику, рекомендуемую оптимизатором для той или иной SQL нагрузки. И конечно надо смотреть запросы пользователей, а точнее WHERE clause - если это из серии - "Give me the world, baby", то резать не дожидаясь перетонита.
...
Рейтинг: 0 / 0
26.11.2012, 08:18
    #38052629
pectopatop
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Teradata. Какие есть методы прикинуть нужный размер spool space?
transposeвы уверены, что ваши юзвери не грешат skewed запросами? Используете ли вы partitioning?
Не уверен :)
Знаю примерные запросы какие выполняются на продакшн, у меня только разработческая база есть (по структуре абсолютная копия продакшена).
На этой разработческой, на простом офисном компе, эти запросы летают (по таким же примерно таблицам по кол-ву строк, различие не более 10% ).

Partitioning-а нету слава богу.

Да, вы правы, сейчас бОльше статистики пособираем, данных...

transposeспул разве не каждому юзверю индивидуально выделяется?
Как я понимаю (не проверял): спул выделяется каждому user (в терминах Teradata), я же речь вёл про пользователей (людей т.е.) и их коннекты под одним database user.
Как понимаю, если под одним database user логинятся 50 клиентов - spool на всех клиентов общий и суммарный его объем не превысит указанный для database user лимит?
...
Рейтинг: 0 / 0
26.11.2012, 08:20
    #38052633
pectopatop
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Teradata. Какие есть методы прикинуть нужный размер spool space?
Павел НовокшоновМожно посмотреть MaxSpool для каждого пользователя. Это максимальмый размер spool, который когда либо фиксировался с момента последнего ресета.
Ну посмотрели, а толку-то что?
Т.к. spool-а не хватает, а MaxSpool не показывает ведь сколько надо было бы ..

Допустим лимит 1Гб, MaxSpool достигал 999Мб, запрос упал, а надо было 5Гб - откуда цифра 5Гб вылезет?
...
Рейтинг: 0 / 0
26.11.2012, 12:48
    #38053035
pectopatop
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Teradata. Какие есть методы прикинуть нужный размер spool space?
Посмотрел: MaxSpool - не понял ЧЕМ отличается от PeakSpool ???
...
Рейтинг: 0 / 0
26.11.2012, 17:43
    #38053722
Павел Новокшонов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Teradata. Какие есть методы прикинуть нужный размер spool space?
pectopatopПосмотрел: MaxSpool - не понял ЧЕМ отличается от PeakSpool ??? Сорри - имел ввиду конечно же PeakSpool. MaxSpool - это максимально отведенная квота на spool space для пользователя. PeakSpool - то что когда-то использовалось в рамках той или иной транзакции.
...
Рейтинг: 0 / 0
26.11.2012, 20:09
    #38053901
Павел Новокшонов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Teradata. Какие есть методы прикинуть нужный размер spool space?
pectopatopКак я понимаю (не проверял): спул выделяется каждому user (в терминах Teradata), я же речь вёл про пользователей (людей т.е.) и их коннекты под одним database user. Как понимаю, если под одним database user логинятся 50 клиентов - spool на всех клиентов общий и суммарный его объем не превысит указанный для database user лимит?

Правильно понимаете. Spool общий для одного database user и 50 коннетов под одним database user будут его шэрить. Если пользуете database profiles для пользователей, то значение spool для профайла будет использоватся вне зависимости от того, что прописано для индивидуальных пользователей.

pectopatop Допустим лимит 1Гб, MaxSpool достигал 999Мб, запрос упал, а надо было 5Гб - откуда цифра 5Гб вылезет?
Прогнать запросы на продакшен данных под одним коннектом и посмотреть по DBQL сколько спула жрет каждый запрос. Затем прикинуть сколько одновременных пользователей будут работать в системе. Вообще спула можно отвести достаточно много, если диск позволяет и не парится 5 это ГБ или 15ГБ. Это безвредно. Как вариант в последних системах можно включить блочную компрессию для spool space. Но все это конечно не отменяет статистику, тюнинг и более детальное понимание того, что делает SQL нагрузка.
...
Рейтинг: 0 / 0
27.11.2012, 07:27
    #38054201
Apex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Teradata. Какие есть методы прикинуть нужный размер spool space?
pectopatopДопустим лимит 1Гб, MaxSpool достигал 999Мб, запрос упал, а надо было 5Гб - откуда цифра 5Гб вылезет?
Да ниоткуда, блин. Вы когда в Оракле размер темпа подбираете вы что, тоже можете заранее рассчитать по формуле, сколько его понадобится? Вот и здесь так же - увеличили, помониторили, подправили.

pectopatopPartitioning-а нету слава богу.

Что значит "слава богу"? Вы вообще понимаете о чем идет и речь и как все это работает? Правильно подобранная схема партиционирования позволяет сильно уменьшить объем данных, которые необходимо просканировать и, соответственно, уменьшить размер промежуточного результата того или иного шага запроса, все это, кроме непосредственно ускорения запроса, позволяет сократить объем потребляемого spool'а. Ну разумеется смотреть нет ли сильного перекоса, как уже правильно заметил transpose, ибо если сильный перекос на одном из шагов запросов имеет место быть, то никакого spool'а не хватит, т.к. все ляжет на один AMP.
...
Рейтинг: 0 / 0
27.11.2012, 08:23
    #38054223
pectopatop
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Teradata. Какие есть методы прикинуть нужный размер spool space?
ApexЧто значит "слава богу"? Вы вообще понимаете о чем идет и речь и как все это работает? Правильно подобранная схема партиционирования позволяет сильно уменьшить объем данных, которые необходимо просканировать и, соответственно, уменьшить размер промежуточного результата того или иного шага запроса, все это, кроме непосредственно ускорения запроса, позволяет сократить объем потребляемого spool'а. Ну разумеется смотреть нет ли сильного перекоса, как уже правильно заметил transpose, ибо если сильный перекос на одном из шагов запросов имеет место быть, то никакого spool'а не хватит, т.к. все ляжет на один AMP.
Я в курсе как работает партиционирование.
А нету его потому, что просто не нужно пока было - данных немного.

Если доступ идет по индексу - какая разница (для select-а):
- будет ли на 1 уровень больше в глобальном B-индексе
- будет ли меньше на 1 уроень в локальном B-индексе, но СУБД сначала "сообразит" в какую партицию стучаться
?
...
Рейтинг: 0 / 0
27.11.2012, 08:25
    #38054224
pectopatop
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Teradata. Какие есть методы прикинуть нужный размер spool space?
Короче ясно - общих "утилит", методов и формул нету.
Это и требовалось, Apex, а не рассуждения на тему "партиции", "skew"...
Спасибо
...
Рейтинг: 0 / 0
27.11.2012, 19:17
    #38055433
Павел Новокшонов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Teradata. Какие есть методы прикинуть нужный размер spool space?
pectopatopКороче ясно - общих "утилит", методов и формул нету.

Есть общие подходы - how to manage spool space. См. документацию Database Administration guide или Performance Management guide. Какие-то количественные оценки можно получить только посмотрев ваши данные и SQL нагрузки.
...
Рейтинг: 0 / 0
27.11.2012, 22:57
    #38055599
Apex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Teradata. Какие есть методы прикинуть нужный размер spool space?
pectopatopЕсли доступ идет по индексу - какая разница (для select-а):
- будет ли на 1 уровень больше в глобальном B-индексе
- будет ли меньше на 1 уроень в локальном B-индексе, но СУБД сначала "сообразит" в какую партицию стучаться?
Доступ по В-индексу, в Терадате, ага.

Иди документацию прочти, рассуждатель.
...
Рейтинг: 0 / 0
Форумы / Другие СУБД [игнор отключен] [закрыт для гостей] / Teradata. Какие есть методы прикинуть нужный размер spool space? / 16 сообщений из 16, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]