powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / SSAS + Excel поиск по атрибуту очень большого измерения
15 сообщений из 15, страница 1 из 1
SSAS + Excel поиск по атрибуту очень большого измерения
    #39707821
IlyamI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго дня всем.

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

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

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

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

Индекс по столбцу атрибута маловероятен, так как админ БД не я.
...
Рейтинг: 0 / 0
SSAS + Excel поиск по атрибуту очень большого измерения
    #39707876
Фотография vikkiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IlyamI,

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

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

Универсальное решение: нарастить мощности железа раз в 10 (скорость дисков, производительность ядер CPU, обьём памяти)
...
Рейтинг: 0 / 0
SSAS + Excel поиск по атрибуту очень большого измерения
    #39707881
Voyager_lan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IlyamI,

Смотри Filtering PivotTable to a List для OLAP PivotTable Extensions
...
Рейтинг: 0 / 0
SSAS + Excel поиск по атрибуту очень большого измерения
    #39707886
Фотография Alex_496
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IlyamI,

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

А вот если в область фильтров сводной таблицы Excel бросить атрибут и по нему выставить фильтр грубой отсечки,
а в область строк - иерархию, то Drill Down работает нормально,
Некоторая задержка наблюдалась << 1 минуты на последнем детальном уровне, не уникальных Ивановых (уж больно их много в РФ), для других ФИО - без задержек
...
Рейтинг: 0 / 0
SSAS + Excel поиск по атрибуту очень большого измерения
    #39707888
Фотография Alex_496
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Voyager_lan,

"OLAP PivotTable Extensions" не помогал, проверял
...
Рейтинг: 0 / 0
SSAS + Excel поиск по атрибуту очень большого измерения
    #39707894
IlyamI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
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
...
Рейтинг: 0 / 0
SSAS + Excel поиск по атрибуту очень большого измерения
    #39707918
Фотография vikkiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IlyamI,

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

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

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

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

есть-ли существенная разница с
Код: sql
1.
select null on 0,Head(Filter(AddCalculatedMembers([Измерение].[Измерение Number].[Измерение Number].Members),InStr(1,[Измерение].[Измерение Number].currentmember.member_caption,'номер интересующего клиента')>0),10001)on 1from[cube]

или
Код: sql
1.
select null on 0,Head(Filter([Измерение].[Измерение Number].[Измерение Number],InStr([Измерение].[Измерение Number].member_caption,'номер интересующего клиента')>0),10001)on 1from[cube]

или
Код: sql
1.
select null on 0,Filter([Измерение].[Измерение Number].[Измерение Number],InStr([Измерение].[Измерение Number].member_caption,'номер интересующего клиента')>0)on 1from[cube]

если разницы никакой - то смотрим и решаем проблему с измерением поглядывая на ресурсы, в. т.ч. по методам оптимизации измерений на которые указывалось другими выше.
...
Рейтинг: 0 / 0
SSAS + Excel поиск по атрибуту очень большого измерения
    #39707930
IlyamI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vikkiv,

к сожалению, время выполнения каждого из трех запросов в пределах погрешности с первоначальным (((((.
завтра буду смотреть по ресурсам.
...
Рейтинг: 0 / 0
SSAS + Excel поиск по атрибуту очень большого измерения
    #39707933
ShIgor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IlyamI,

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

tblFacttblDim50dimAm2m-> tblDim50keyAdimBm2m -> tblDim50keyBdimD(ZZZ)keyZZZkeyZZZdimD(YYY)keyYYYkeyYYYdimD(XXX)keyXXXkeyXXX

не удобно, но быыыыыыыыстро...
...
Рейтинг: 0 / 0
SSAS + Excel поиск по атрибуту очень большого измерения
    #39708211
IlyamI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ShIgor,

К сожалению, каждая запись в таблице уникальна само по себе. И те два атрибута, по которым производится фильтр, тоже уникальны, повторяющихся значений нет
...
Рейтинг: 0 / 0
SSAS + Excel поиск по атрибуту очень большого измерения
    #39708275
ShIgor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IlyamI,

а через вставку среза не пробовали?
...
Рейтинг: 0 / 0
SSAS + Excel поиск по атрибуту очень большого измерения
    #39708319
IlyamI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ShIgor,

поясните, пожалуйста
...
Рейтинг: 0 / 0
SSAS + Excel поиск по атрибуту очень большого измерения
    #39708386
ShIgor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IlyamI,

Excel, лента Работа со сводными таблицами, Анализ, элемент Вставить срез.
Или поиском по сети "Как вставить срезы в сводные таблицы Microsoft Excel"
...
Рейтинг: 0 / 0
SSAS + Excel поиск по атрибуту очень большого измерения
    #39708412
IlyamI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ShIgor,

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

профайлер отловил запросы к кубу, где все миллионы записей бьются на группы по 1000 шт.
листать срез нереально
...
Рейтинг: 0 / 0
SSAS + Excel поиск по атрибуту очень большого измерения
    #39730580
Denis@nk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IlyamI,

Excel ищет используя фильтр и текстовую функцию.
Мы используем reportportal и в нем при поиске можно указать что поиск будет по точному совпадению, тогда формируется запрос без фильтра, сразу с нужным элементом:

with member [Measures].[Blank] as '(0)' select {[Measures].[Blank]} on columns, Ascendants([Dim].[Prop].&[12345]) on rows from [Cube]

Такого же эффекта можно добиться в екселе если "Создать набор с помощью MDX". Тогда поиск будет работать быстро.
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / SSAS + Excel поиск по атрибуту очень большого измерения
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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