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

Откуда:
Сообщений: 1055
Вопрос - как ускорить запросы к кубу? Куб MOLAP.
И поможет ли здесь создание индексов к таблице фактов на сервере?
9 апр 18, 18:46    [21324492]     Ответить | Цитировать Сообщить модератору
 Re: Ускорение запросов к кубу  [new]
DaniilSeryi
Member

Откуда:
Сообщений: 1055
SQL Server 2012(SP4) Enterprise Edition.
9 апр 18, 18:47    [21324493]     Ответить | Цитировать Сообщить модератору
 Re: Ускорение запросов к кубу  [new]
Дедушка
Member

Откуда: Город трёх революций
Сообщений: 5113
Проблемы с производительностью запросов к кубу могут быть по многим причинам, начиная от плохого проектирования куба и измерений до банального отсутствия нужных агрегатов и особеностей клиента который шлёт запросы кубу...
Для начала определите где у вас проблема, профайлером посмотрите планы выполнения запросов.
9 апр 18, 20:33    [21324630]     Ответить | Цитировать Сообщить модератору
 Re: Ускорение запросов к кубу  [new]
vikkiv
Member

Откуда: London
Сообщений: 1426
Re: ... И поможет ли здесь создание индексов к таблице фактов на сервере? ..

нет, для MOLAP при запросах к кубу это никак не поможет.
индексы в таблице фактов на сервере - такое на SQL стороне (в SSAS особо контроля пользователем над ними особого нет, только некоторые настройки атрибутов измерений по оптимизации и агрегации как уже заметили выше), т.е. SQL Server (как источник куба) - в этом случае SQL индексирование поможет в (или) 2х вариантах (хотя по сути один вариант): во первых в режиме ROLAP, во вторых при подготовке куба (processing) а не запросах к нему.

Согласен с Дедушкой - причин и их комбинаций в различных пропорциях - довольно широкий спектр (хотя профайлером можно xEvents и пр. counters отлавливать - плана как такового не увидеть - только если самому из events/трейсa фактический собирать)
9 апр 18, 23:48    [21324893]     Ответить | Цитировать Сообщить модератору
 Re: Ускорение запросов к кубу  [new]
bideveloper
Member

Откуда:
Сообщений: 330
DaniilSeryi
Вопрос - как ускорить запросы к кубу? Куб MOLAP.
И поможет ли здесь создание индексов к таблице фактов на сервере?

При MOLAP таблица фактов используется только при обработке куба. А потом уже запросы идут к собственной структуре базы SSAS.
Основные тормоза могут быть из-за:
1. Много детализированных измерений и фактов в одном отчете.
2. Запрашиваются агрегированные данные, но нет агрегатов.
3. Неоптимальные MDX вычисления.
10 апр 18, 00:38    [21324923]     Ответить | Цитировать Сообщить модератору
 Re: Ускорение запросов к кубу  [new]
DaniilSeryi
Member

Откуда:
Сообщений: 1055
bideveloper
DaniilSeryi
Вопрос - как ускорить запросы к кубу? Куб MOLAP.
И поможет ли здесь создание индексов к таблице фактов на сервере?

При MOLAP таблица фактов используется только при обработке куба. А потом уже запросы идут к собственной структуре базы SSAS.
Основные тормоза могут быть из-за:
1. Много детализированных измерений и фактов в одном отчете.
2. Запрашиваются агрегированные данные, но нет агрегатов.
3. Неоптимальные MDX вычисления.


По поводу агрегатов - пока их нет, только Unassigned Aggregation Design. В Aggreation Design Wisard по всем Cube Objects везде проставлено Default.
10 апр 18, 12:35    [21326086]     Ответить | Цитировать Сообщить модератору
 Re: Ускорение запросов к кубу  [new]
Критик
Member

Откуда: Москва / Калуга
Сообщений: 33315
Блог
  • создать нужные агрегаты (лучше на основе статистики, или хотя бы с помощью мастера)
    и/или
  • купить SSD-карточку, куда положить куб
    и/или
  • перепроектировать куб
  • 10 апр 18, 13:05    [21326243]     Ответить | Цитировать Сообщить модератору
     Re: Ускорение запросов к кубу  [new]
    ShIgor
    Member

    Откуда: Нижний Новгород
    Сообщений: 2042
    Народ, а может автор все-таки пояснит что он конкретно хочет прежде чем ему советовать?.
    10 апр 18, 13:17    [21326318]     Ответить | Цитировать Сообщить модератору
     Re: Ускорение запросов к кубу  [new]
    StarikNavy
    Member

    Откуда: Москва
    Сообщений: 1839
    ShIgor,
    >> что он конкретно хочет прежде
    хочет чтобы "вжух" и полетели))

    DaniilSeryi ,
    >>индексов к таблице фактов
    как уже сказали (другими словами), вместо это делают агрегаты в кубе
    10 апр 18, 15:06    [21326810]     Ответить | Цитировать Сообщить модератору
     Re: Ускорение запросов к кубу  [new]
    ShIgor
    Member

    Откуда: Нижний Новгород
    Сообщений: 2042
    StarikNavy,

    он хочет ускорить "запросы к кубу"!!! чего не понятно-то!!
    не про расчеты, ответы, результаты идет речь!!
    медленно передаются что-ли?
    или медленно пишутся...
    в общем ничего не понятно

    ну от меня, в последнее время, кроме стёба, тоже понятно, ждать нечего...
    10 апр 18, 16:16    [21327118]     Ответить | Цитировать Сообщить модератору
     Re: Ускорение запросов к кубу  [new]
    DaniilSeryi
    Member

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

    Ок. Я хочу ускорить процесс загрузки данных отчёта. Так оно правильнее звучит?
    11 апр 18, 17:51    [21330717]     Ответить | Цитировать Сообщить модератору
     Re: Ускорение запросов к кубу  [new]
    Дедушка
    Member

    Откуда: Город трёх революций
    Сообщений: 5113
    DaniilSeryi,

    в гугле пишете "ssas mdx performance tuning" и погружаетесь в дивный мир
    11 апр 18, 18:27    [21330847]     Ответить | Цитировать Сообщить модератору
     Re: Ускорение запросов к кубу  [new]
    ShIgor
    Member

    Откуда: Нижний Новгород
    Сообщений: 2042
    DaniilSeryi,

    Нет.

    В БД SSAS готовых отчетов нет.
    В БД есть (грубо) измерения и кубы. в кубах - группы мер, связи, скрипты и всевозможные дополнительные инструменты для производительности/безопасности.

    1. Данные в БД заливаем в измерения и группы мер.
    2. Получаем из БД результаты запросов посредством см п.3
    3. Расчетов заданных в скрипте БД и/или запросе.

    Что хотите ускорять? 1, 2 или 3?
    12 апр 18, 00:13    [21331518]     Ответить | Цитировать Сообщить модератору
     Re: Ускорение запросов к кубу  [new]
    Andy_OLAP
    Member

    Откуда: я знаю, что Зенит - чемпион
    Сообщений: 2196
    Дедушка
    DaniilSeryi,

    в гугле пишете "ssas mdx performance tuning" и погружаетесь в дивный мир

    А ему не поможет. Помните тему 2017 года?
    "...Таблицы Excel с бюджетами нескольких типов по нескольким объектам.
    Число строк бюджета зависит от конкретного объекта и типа бюджета, и колеблется от нескольких десятков до пары сотен.
    Число уровней строк бюджета - 4 уровня, уровни неравномерные (то есть для какой-то статьи бюджета есть подстатьи третьего уровня вложенности, а для какой-то статьи подстатей нет вообще).
    Число СТОЛБЦОВ - более 250 (1 столбец - один месяц, бюджет расписан на 20 с лишним лет, плюс куча столбцов для уже посчитанных значений по кварталам и годам).
    Число объектов - не менее пяти.

    Поставили задачу - затащить это всё на SQL Server в обычную БД или в OLAP-куб, по моему выбору.

    С OLAP-кубом - ситуация выглядит проще только на первый взгляд, так как куб получается нестандартным (с необходимостью использовать измерение родитель-дитя, + к этому это измерение неоднородное), плюс летит в бездну текущая раскладка столбцов (в Бездне Хаоса я её видеть хотел, да, но это другой вопрос).
    И это всё дерьмо ещё как-то надо сравнивать друг с другом.

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

    У него наверняка задача бюджетирования и иерархия Parent-Child. Плюс судя по всему права доступа для доменных учеток задаются через UserName() и группу мер M2M на ветки статей бюджетирования в иерархии. Поэтому и тормоза. Без разворачивания в плоскую поатрибутную иерархию с фиксированными уровнями, на которые задаются права в ролях без использования M2M.
    12 апр 18, 00:15    [21331522]     Ответить | Цитировать Сообщить модератору
     Re: Ускорение запросов к кубу  [new]
    Andy_OLAP
    Member

    Откуда: я знаю, что Зенит - чемпион
    Сообщений: 2196
    Дедушка,

    А если у него еще и distinct count счетчики по подразделениям, на которые распределяется бюджет по статьям, плюс счетчики на ответственных за растрату казенных денег....С M2M это превращается в веселое сканирование.

    Как вариант - SQL 2016 SP1 с CU8 (далее уже будет хуже, с CU9 индусы сломали работу с M2M).

    А у него 2012SP4, что само по себе уже достаточно древнее сооружение, совсем некошерное.
    12 апр 18, 00:18    [21331524]     Ответить | Цитировать Сообщить модератору
     Re: Ускорение запросов к кубу  [new]
    ShIgor
    Member

    Откуда: Нижний Новгород
    Сообщений: 2042
    Andy_OLAP,

    не сломали ничего.
    кроме стандартных, 3 P-C измерения, 4 группы мер с M2M (междусобойчик такой), DC в одной из них в том числе + расчеты поверх
    2016 SP1CU8 версия 13.0.4474.0 - все летает без проблем

    CU9 есть только для чистого 2016, но после выхода SP1 оно для меня не актуально, поэтому проверить не могу.
    12 апр 18, 09:17    [21331943]     Ответить | Цитировать Сообщить модератору
    Все форумы / OLAP и DWH Ответить