Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / OLAP и DWH Новый топик    Ответить
Топик располагается на нескольких страницах: 1 2      [все]
 Зависает процессинг куба  [new]
Ferdipux
Member

Откуда: Москва
Сообщений: 406
Доброго времени суток, All!

Буду признателен, если подскажете что-либо по следующему случаю.
Несколько кубов MOLAP, собраны в прокси-куб через linked measures. Размер - средний, 700 GB, структура большая, более 300 групп мер. Процессятся через формируемый XMLA скрипт (описание как формируется - ниже). Стали происходить "зависания процессинга" - во время них активность SSAS практически нулевая. Но стоит обратиться к кубу с MDX запросом - процессинг возобновляется и вскоре завершается.
Воспроизводится на SSAS Server 2008, 2008 R2 и 2014.
Вопрос - что это такое и как лечить? ИМХО, поведение ненормальное.

Для справки - как формируется XMLA скрипт на процессинг. Группы мер в кубах партицированы. При обновлении данных в источниках - формируется перечень обновлений источников. По этому перечню подбирается список групп мер (через внутренние метаданные системы) и передается C# коду. В коде через AMO
- включаем CaptureXML
- ищем все измерения, делаем для них Process(Process_Update)
- ищем группу мер, и для нее запускаем метод Process(Process_Full)
- после исчерпания групп мер - делаем ConcatenateCaptureLog в строчную переменную
Далее полученный XMLA - выполняем в SSIS пакете.
20 апр 16, 14:32    [19082854]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
мигель1
Member

Откуда:
Сообщений: 3298
Несколько кубов MOLAP, собраны в прокси-куб через linked measures.

Просто интересно, а зачем так сделано?
20 апр 16, 15:07    [19083185]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
StarikNavy
Member

Откуда: Москва
Сообщений: 1665
мигель1,

как обычно "хочу видеть ВСЁ в одном отчете"(С)
20 апр 16, 16:06    [19083798]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
StarikNavy
Member

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

"во время них активность SSAS практически нулевая"
что то такое недавно на форуме проскакивало, может поиском найдете
ЕМНИП
20 апр 16, 16:07    [19083807]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
мигель1
Member

Откуда:
Сообщений: 3298
StarikNavy
мигель1,

как обычно "хочу видеть ВСЁ в одном отчете"(С)


Это понятно, зачем linked measures?

Если меры "живут" друг с другом почему не сделать меры "мени то мени" и управлять видимостью через перспективы?
20 апр 16, 16:26    [19084018]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
Ferdipux
Member

Откуда: Москва
Сообщений: 406
мигель1
Это понятно, зачем linked measures?
Если меры "живут" друг с другом почему не сделать меры "мени то мени" и управлять видимостью через перспективы?

Гм, куб большой с точки зрения метаданных, групп мер в нем более 300. Группы мер добавлялись тематически, поэтому разделены на свои кубы.
Была попытка слить кубы в один. Наблюдение - если в кубе с материальными партицированными мерами их сильно много - процессинг сильно тормозит на начальной фазе - составления плана вычисления. Разбиение куба на части помогает сократить время процессинга.

А "мани-мани" там тоже есть :)...
20 апр 16, 17:25    [19084418]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
Ferdipux
Member

Откуда: Москва
Сообщений: 406
StarikNavy
"во время них активность SSAS практически нулевая"
что то такое недавно на форуме проскакивало, может поиском найдете

Находил и сталкивались вот с этим ограничение SSAS по памяти . Но в этом случае симптомы несколько иные - весь сервер "висит", трудно даже зайти удаленной консолью, помогает только рестарт. А здесь - сервер не загружен, MDX запрос инициирует процессинг.
20 апр 16, 17:30    [19084444]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
Ferdipux
Member

Откуда: Москва
Сообщений: 406
Словил симптомы снова, на SSAS 2014 SP1.

Выглядит так - идет Process Index изменившихся партиций после Process Data, много партиций в одной большой транзакции в параллель. Сервер с 4 CPU, бодро пережевывает 5-20 партиций одновременно (показатель Proc Indexes\Current partitions) и 200 000 - 700 000 строк в секунду, есть работающие processing I\O threads и non I\O threads, I\O threads завершаются 20-40 раз в секунду, секундный processing pool job rate колеблется от 0,3 до 2. Короче, жужжит.
Начиная с некоторого момента количество Proc Indexes\Current partitions растет до 96, количество завершенных I\O threads и processing pool job rate падает до нуля. В таком состоянии и висит, может провисеть и сутки. Помогает выдача MDX SELECT запроса к кубу, одновременно с этим процессинг магически возобновляется и завершается за 5-15 минут.
В общем, чудеса. Что покрутить еще - не знаю, буду признателен за идеи.
31 авг 16, 10:27    [19610745]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
WarAnt
Member

Откуда: Питер
Сообщений: 2288
Ferdipux,

А сам xmla запрос не пробовали изучать? выгрузите его в файл посмотрите глазами, может чего найдете.
31 авг 16, 11:24    [19611100]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
Ferdipux
Member

Откуда: Москва
Сообщений: 406
WarAnt
А сам xmla запрос не пробовали изучать?


Ошибок или косяков там нет. Много задач ProcessIndex на партициях в одной Parallel, уровень паралеллизма не установлен, регистрация ошибок в файл. Файл с ошибками пустой.
31 авг 16, 11:26    [19611135]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
WarAnt
Member

Откуда: Питер
Сообщений: 2288
Ferdipux,

и еще "некоторый момент времени" не совпадает случаем с какой нить настройкой в General? типа ForceCommitTimeout
31 авг 16, 11:29    [19611161]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
Игорь Бобак
Member

Откуда:
Сообщений: 418
[quot Ferdipux]
WarAnt
Много задач ProcessIndex на партициях в одной Parallel.


вот с "много задач в одной parallel" будьте осторожны.

я когда-то разработал свой процессор кубов, в нем предусмотрел ограничения, чтобы в одном parallel не шло больше Process команд, чем ядер на машинке.

до этого тоже все висло, когда сделал вот так с ограничением - начало железобетонно работать.
31 авг 16, 11:58    [19611382]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
Ferdipux
Member

Откуда: Москва
Сообщений: 406
Игорь Бобак
вот с "много задач в одной parallel" будьте осторожны.

я когда-то разработал свой процессор кубов, в нем предусмотрел ограничения, чтобы в одном parallel не шло больше Process команд, чем ядер на машинке.

до этого тоже все висло, когда сделал вот так с ограничением - начало железобетонно работать.


Спасибо, хорошая идея, попробую поиграться со степенью параллелизма. Вопрос к опыту - что ставить относительно кол-ва ядер, 1 ядро - 1 поток или можно 2? Похоже что SSAS слишком оптимистично тут работает, и заводит себя в тупик.
31 авг 16, 12:22    [19611535]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
a_voronin
Member

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

Запустите SQL Profiler -- посмотрите другие события. Наверняка что-то есть. Обновление кешей и прочее.
31 авг 16, 14:31    [19612505]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
Ferdipux
Member

Откуда: Москва
Сообщений: 406
Новости с полей...

В XMLA процессинга прикрутил количество параллельных процессов = кол-ву ядер.
Запустил, на Process Index через некое время зависло с Proc Indexes \ Current Partitions = 8.
Одновременно вел профилирование. Начиная с запуска процессинга - кроме событий процессинга нет ничего.

MDX Select запрос к обрабатываемому кубу восстановил ход Processing.
Чудеса.
1 сен 16, 12:48    [19616772]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
vikkiv
Member

Откуда: London / Zurich
Сообщений: 1144
Ferdipux,
стандартная рекомендация на MS системах - провести всё до последнего обновления, например 2014 SP2 CU1 включает такое: https://support.microsoft.com/en-us/kb/3150432
ну и если не помогает - служба техподдержки MS, тогда подскажут что не так или при подтверждении на их стороне профиксят с одним из следующих выпусков.
1 сен 16, 13:04    [19616872]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
VicSO
Member

Откуда:
Сообщений: 148
Ferdipux,
Машина виртуальная или реальная?
Такая проблема была виртуальной машине, проблема решилась заменой виртуальной ситивушки.
проблема была в то что при нагрузке, соединение не обрывалась, но и потока не было :(
1 сен 16, 13:10    [19616913]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
Ferdipux
Member

Откуда: Москва
Сообщений: 406
VicSO
Такая проблема была виртуальной машине, проблема решилась заменой виртуальной ситивушки.
проблема была в то что при нагрузке, соединение не обрывалась, но и потока не было :(


Машина виртуальная. А что значит "замена виртуальной сетевухи" - пересоздание ее, что-ли, или иные настройки?
1 сен 16, 13:25    [19617028]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
VicSO
Member

Откуда:
Сообщений: 148
Ferdipux,
была выбрана эмуляция другой сетевушку и проблема исчезла после этого.
2 сен 16, 05:04    [19619779]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
VicSO
Member

Откуда:
Сообщений: 148
а возврат предыдущей сетевушки, проблему повторила, попробовали 2 раза :)
сделали выводы, что какой-то сбой в эмуляции, и как он влияет на 127.0.0.1 вообще не понятно.
та как изначально база была на другом сервере, а куб на другом и он тянул, сбои были частые.
потом все сделали на одно, чуть реже были но все равно.
потом поменяли виртуальную сетевушку и проблема исчезал.
2 сен 16, 07:50    [19619857]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
a_voronin
Member

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

В чудеса верить не надо.
У вас там случайно не стоит Lazy Aggregations ?
5 сен 16, 12:30    [19628463]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
Игорь Бобак
Member

Откуда:
Сообщений: 418
[quot Ferdipux]
Игорь Бобак
Спасибо, хорошая идея, попробую поиграться со степенью параллелизма. Вопрос к опыту - что ставить относительно кол-ва ядер, 1 ядро - 1 поток или можно 2? Похоже что SSAS слишком оптимистично тут работает, и заводит себя в тупик.

у меня стоит "к-во ядер умноженное на два", но я бы на вашем месте игрался начиная с к-ва ядер, и по чуть чуть увеличивал
5 сен 16, 13:21    [19628688]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
Ferdipux
Member

Откуда: Москва
Сообщений: 406
a_voronin
Ferdipux,

У вас там случайно не стоит Lazy Aggregations ?

Нет, Lazy Aggregations запрещен.
5 сен 16, 14:14    [19628898]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
Ferdipux
Member

Откуда: Москва
Сообщений: 406
Игорь Бобак
у меня стоит "к-во ядер умноженное на два", но я бы на вашем месте игрался начиная с к-ва ядер, и по чуть чуть увеличивал

Попробовал, выведя множитель ядер как параметр. К сожалению, зависание повторилось, даже с множителем 1. Так что попробуем открыть кейс в поддержке Microsoft.
Из интересного в этом - при множителе 1 и 2 - наблюдается явный недогруз CPU, так как очередь задач на процессинг не пуста и при этом загрузка CPU плавает в районе 40-60%.
5 сен 16, 14:17    [19628921]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
Критик
Member

Откуда: Москва / Калуга
Сообщений: 31500
Блог
Ferdipux,

На тестовой системе воспроизводится?
Если куб полностью переразвернуть из проекта (с удалением предыдущего) - ошибка воспроизводится?
5 сен 16, 16:09    [19629470]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
Ferdipux
Member

Откуда: Москва
Сообщений: 406
Критик
Ferdipux,

На тестовой системе воспроизводится?
Если куб полностью переразвернуть из проекта (с удалением предыдущего) - ошибка воспроизводится?

Если развернуть проект на тестовом сервере DWH (где мало данных) - не воспроизводится.
Если развернуть проект на копии продуктива - воспроизводится.
5 сен 16, 16:29    [19629608]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
Критик
Member

Откуда: Москва / Калуга
Сообщений: 31500
Блог
Если разбить скрипт на отдельные блоки: процессинг измерений, Process Data и Process Index?
Где повиснет?
5 сен 16, 17:32    [19629927]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
Ferdipux
Member

Откуда: Москва
Сообщений: 406
Критик
Если разбить скрипт на отдельные блоки: процессинг измерений, Process Data и Process Index?
Где повиснет?

Писал выше - Process Index. Process Update и Process Data идет без подобных зависаний.
5 сен 16, 17:40    [19629989]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
Критик
Member

Откуда: Москва / Калуга
Сообщений: 31500
Блог
А если запустить прцоессинг сразу после рестарта службы SSAS - тоже виснет?
5 сен 16, 18:05    [19630123]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
Ferdipux
Member

Откуда: Москва
Сообщений: 406
Критик
А если запустить прцоессинг сразу после рестарта службы SSAS - тоже виснет?

Какой - сразу Process Index, или сделать стандартный цикл - Process Dim Update, Process Cube Data, Process Cube Index?
5 сен 16, 18:17    [19630176]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
Критик
Member

Откуда: Москва / Калуга
Сообщений: 31500
Блог
так: Process Dim Update, Process Cube Data, рестарт, Process Cube Index
5 сен 16, 18:22    [19630208]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
Игорь Бобак
Member

Откуда:
Сообщений: 418
Ferdipux
Игорь Бобак
у меня стоит "к-во ядер умноженное на два", но я бы на вашем месте игрался начиная с к-ва ядер, и по чуть чуть увеличивал

Попробовал, выведя множитель ядер как параметр. К сожалению, зависание повторилось, даже с множителем 1. Так что попробуем открыть кейс в поддержке Microsoft.
Из интересного в этом - при множителе 1 и 2 - наблюдается явный недогруз CPU, так как очередь задач на процессинг не пуста и при этом загрузка CPU плавает в районе 40-60%.


я бы их попробовал бы отпрофайлить и получить flamegraph, а дальше бы ткнул носом Майкрософт в то, чем занимается SSAS.
6 сен 16, 11:21    [19631996]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
VicSO
Member

Откуда:
Сообщений: 148
Ferdipux,
смена сетевушки не помогла?
6 сен 16, 12:16    [19632289]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
Критик
Member

Откуда: Москва / Калуга
Сообщений: 31500
Блог
на железке (не виртуалка) все ок?
6 сен 16, 20:46    [19634597]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
Ferdipux
Member

Откуда: Москва
Сообщений: 406
Критик
так: Process Dim Update, Process Cube Data, рестарт, Process Cube Index

Ага, попробовал. Результат интересный.
1. Сделал как описано - Process Dim Update, Process Cube Data, рестарт, Process Cube Index. Процессинг Process Cube Index прошел без ошибок и довольно быстро.
2. Попробовал воспроизвести кейс с зависанием в процессе последовательного процессинга без рестарта. Кейс воспроизвелся. Что любопытно - "висящий" SSAS не останавливался из Service Manager - писал для сервиса статус Stopping.

Попробовать на физ машине не могу ввиду отсутствия доступных оных (там нужна не только машина, но и подключение к фабрике FibreChannel, а с этим все плохо) :(...
14 сен 16, 18:04    [19665651]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
Alex_496
Member

Откуда: Moscow https://www.dvbi.ru
Сообщений: 3509
Подыму тему.

SSAS MOLAP 2016 SP1 EE 64x
Оперативной памяти хватает

Полный процессинг измерения "Клиенты" (свыше 59 млн.) в 2 фазы:
Process Data - примерно < 9 мин. (в DSV - columnstore таблица)
Process Index - а вот эта фаза ~ 35 мин. длится

Натуральные иерархии:
Клиенты по поколениям от дат рождения
Клиенты по алфавиту - индекс, фамилия, фио, неуникальный клиент
Все ключи BIGINT, совместимость выставлена 1100

Как бы еще ускорить фазу Process Index ?
19 июл 17, 00:41    [20655966]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
Критик
Member

Откуда: Москва / Калуга
Сообщений: 31500
Блог
Alex_496,

посмотреть, что в эти 35 минут происходит по счетчикам CPU/дисков
19 июл 17, 08:21    [20656111]     Ответить | Цитировать Сообщить модератору
 Re: Зависает процессинг куба  [new]
Yagrus2
Member

Откуда: Москва
Сообщений: 685
Alex_496,
Какая у вас дисковая система? Сколько доступно иопсов?
19 июл 17, 09:48    [20656377]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: 1 2      [все]
Все форумы / OLAP и DWH Ответить