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

Откуда:
Сообщений: 19
Доброго дня всем.

В кубе имеется измерение, построенное на таблице, насчитывающей примерно 50 млн записей.
Каждая запись имеет уникальный ключ - X (единственный столбец)
На таблице построен уникальный индекс по ключу X

Измерение в кубе имеет два атрибута из этой таблице. Ключом измерения является значение X, по которому происходит связка с таблицей фактов.

Куб используется посредством Excel, где пользователи хотят в качестве фильтра использовать атрибуты этого измерения.
Поиск по конкретному значения любого из атрибута длится ооочень долго - не менее 10 минут.

Вопрос: как ускорить поиск по значению атрибута?

Индекс по столбцу атрибута маловероятен, так как админ БД не я.
25 сен 18, 16:22    [21685653]     Ответить | Цитировать Сообщить модератору
 Re: SSAS + Excel поиск по атрибуту очень большого измерения  [new]
vikkiv
Member

Откуда: London
Сообщений: 1654
IlyamI,

PK на DWH измерении скорее всего и так проиндексирован (тем более для некоторых вариантов это влияет только на процессинг). Остальное зависит от...
Проблема скорости на клиенте или на сервере?
SSAS: редакция/версия/RAM/CPU/кол-во пользователей и что там ещё крутится.
OLAP База: Модель/режим{Tab~MD}/расчётные меры
Запрос: С мерами или без. Вообще неплохо-бы сам запрос на сервер перехватить и показать (выполнить на серьёзной машине и на обычном клиенте).
Так что лучше всего смотреть где с выбранным типом запроса по ресурсам затык (perf-monitor) и от туда начинать копать решение - скорее всего CPU/RAM,
но для SSAS:MD/ROLAP {для MOLAP измерений всё равно всё в памяти, к тому-же ключ и так проиндексирован} может быть от проблем на стороне DWH до настроек измерения (оптимизации параметров, типов данных и пр.) и т.д.

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

Универсальное решение: нарастить мощности железа раз в 10 (скорость дисков, производительность ядер CPU, обьём памяти)
25 сен 18, 16:58    [21685729]     Ответить | Цитировать Сообщить модератору
 Re: SSAS + Excel поиск по атрибуту очень большого измерения  [new]
Voyager_lan
Member

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

Смотри Filtering PivotTable to a List для OLAP PivotTable Extensions
25 сен 18, 17:02    [21685738]     Ответить | Цитировать Сообщить модератору
 Re: SSAS + Excel поиск по атрибуту очень большого измерения  [new]
Alex_496
Member

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

Поищите по форуму, вроде бы я уже ранее писал.
В измерении "Клиенты" было ~ 59 млн. записей.
Строим натуральные обычные иерархии, в котором соотношения между уровнями должны быть большими (порядок соотношения).
Поиск (по вхождению или точном совпадению) по атрибуту не дождаться пока отработает.

А вот если в область фильтров сводной таблицы Excel бросить атрибут и по нему выставить фильтр грубой отсечки,
а в область строк - иерархию, то Drill Down работает нормально,
Некоторая задержка наблюдалась << 1 минуты на последнем детальном уровне, не уникальных Ивановых (уж больно их много в РФ), для других ФИО - без задержек
25 сен 18, 17:09    [21685749]     Ответить | Цитировать Сообщить модератору
 Re: SSAS + Excel поиск по атрибуту очень большого измерения  [new]
Alex_496
Member

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

"OLAP PivotTable Extensions" не помогал, проверял
25 сен 18, 17:09    [21685753]     Ответить | Цитировать Сообщить модератору
 Re: SSAS + Excel поиск по атрибуту очень большого измерения  [new]
IlyamI
Member

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

Вот, какой запрос формируется, когда просто атрибут в фильтр кинуть, без каких-либо мер

WITH MEMBER [Measures].cChildren
As
'AddCalculatedMembers([Измерение].[Измерение Number].currentmember.children).count'
Set FilteredMembers
As
'Head (Filter(AddCalculatedMembers([Измерение].[Измерение Number].[Измерение Number].Members), InStr(1, [Измерение].[Измерение Number].currentmember.member_caption, "номер интересующего клиента")>0),10001)'
Select
{[Measures].cChildren} on ROWS,
Hierarchize(Generate(FilteredMembers, Ascendants([Измерение].[Измерение Number].currentmember)))
DIMENSION PROPERTIES PARENT_UNIQUE_NAME, MEMBER_TYPE ON COLUMNS
FROM [cube]

Железо нормальное, этим кубом пока никто не пользуется
SSAS 2016 MD MOLAP
25 сен 18, 17:16    [21685764]     Ответить | Цитировать Сообщить модератору
 Re: SSAS + Excel поиск по атрибуту очень большого измерения  [new]
vikkiv
Member

Откуда: London
Сообщений: 1654
IlyamI,

ну так остальные вопросы как?, мало ведь конкретных ответов.

по тому что удалось выжать:

индексирование SQL DB не поможет, всё хранится в SSAS

как по скорости на прямую на сервере запрос отрабатывает? (это по идее не должно кэшироваться, поэтому чистить не обязательно)

есть-ли существенная разница с
select null on 0,Head(Filter(AddCalculatedMembers([Измерение].[Измерение Number].[Измерение Number].Members),InStr(1,[Измерение].[Измерение Number].currentmember.member_caption,'номер интересующего клиента')>0),10001)on 1from[cube]
или
select null on 0,Head(Filter([Измерение].[Измерение Number].[Измерение Number],InStr([Измерение].[Измерение Number].member_caption,'номер интересующего клиента')>0),10001)on 1from[cube]
или
select null on 0,Filter([Измерение].[Измерение Number].[Измерение Number],InStr([Измерение].[Измерение Number].member_caption,'номер интересующего клиента')>0)on 1from[cube]
если разницы никакой - то смотрим и решаем проблему с измерением поглядывая на ресурсы, в. т.ч. по методам оптимизации измерений на которые указывалось другими выше.
25 сен 18, 18:15    [21685814]     Ответить | Цитировать Сообщить модератору
 Re: SSAS + Excel поиск по атрибуту очень большого измерения  [new]
IlyamI
Member

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

к сожалению, время выполнения каждого из трех запросов в пределах погрешности с первоначальным (((((.
завтра буду смотреть по ресурсам.
25 сен 18, 18:44    [21685839]     Ответить | Цитировать Сообщить модератору
 Re: SSAS + Excel поиск по атрибуту очень большого измерения  [new]
ShIgor
Member

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

предположим, что количество уникальных значений у двух других атрибутов значительно (на порядки) меньше чем всего записей в таблице, тогда - делаем эти атрибуты отдельными измерениями со своими суррогатными ключами (предположим dimA и dimB). ключ X разбиваем на составляющие, например если числовой, то ZZZYYYXXX на ZZZ YYY и XXX, создаем измерение из 1000 членов dimD и тиражируем его в куб 3 раза (role playing), само первоначальное измерение используем как таблицу фактов, а саму фактовую таблу вяжем с измерениями А и Б через m2m. получаем:

tblFacttblDim50
dimAm2m-> tblDim50keyA
dimBm2m -> tblDim50keyB
dimD(ZZZ)keyZZZkeyZZZ
dimD(YYY)keyYYYkeyYYY
dimD(XXX)keyXXXkeyXXX


не удобно, но быыыыыыыыстро...
25 сен 18, 18:49    [21685845]     Ответить | Цитировать Сообщить модератору
 Re: SSAS + Excel поиск по атрибуту очень большого измерения  [new]
IlyamI
Member

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

К сожалению, каждая запись в таблице уникальна само по себе. И те два атрибута, по которым производится фильтр, тоже уникальны, повторяющихся значений нет
26 сен 18, 10:15    [21686342]     Ответить | Цитировать Сообщить модератору
 Re: SSAS + Excel поиск по атрибуту очень большого измерения  [new]
ShIgor
Member

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

а через вставку среза не пробовали?
26 сен 18, 11:08    [21686428]     Ответить | Цитировать Сообщить модератору
 Re: SSAS + Excel поиск по атрибуту очень большого измерения  [new]
IlyamI
Member

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

поясните, пожалуйста
26 сен 18, 11:49    [21686490]     Ответить | Цитировать Сообщить модератору
 Re: SSAS + Excel поиск по атрибуту очень большого измерения  [new]
ShIgor
Member

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

Excel, лента Работа со сводными таблицами, Анализ, элемент Вставить срез.
Или поиском по сети "Как вставить срезы в сводные таблицы Microsoft Excel"
26 сен 18, 13:07    [21686609]     Ответить | Цитировать Сообщить модератору
 Re: SSAS + Excel поиск по атрибуту очень большого измерения  [new]
IlyamI
Member

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

сначала я не понял, ЧТО именно Вы предлагаете. ))))))))))
Срезы в Excel умеем встраивать.
но.....

профайлер отловил запросы к кубу, где все миллионы записей бьются на группы по 1000 шт.
листать срез нереально
26 сен 18, 13:32    [21686664]     Ответить | Цитировать Сообщить модератору
Все форумы / OLAP и DWH Ответить