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

Откуда:
Сообщений: 6
Добрый день.
Столкнулся с проблемой, в кубе созданы меры из разных таблиц (количество проданных упаковок в таблице с продажами и количество штук в каждой упаковке в таблице со списком продуктов). При создании вычисляемой меры, не происходит корректного вычисления. Нужно - сумма(количество упаковок * количество штук в упаковке). Сейчас сумма(количество упаковок) *сумма(количество штук в упаковке).
Очень прошу помощи в решении проблемы.
28 мар 18, 16:39    [21293836]     Ответить | Цитировать Сообщить модератору
 Re: Вычисляемая мера  [new]
Andy_OLAP
Member

Откуда: я знаю, что Зенит - чемпион
Сообщений: 1950
emolenev
Добрый день.
Столкнулся с проблемой, в кубе созданы меры из разных таблиц (количество проданных упаковок в таблице с продажами и количество штук в каждой упаковке в таблице со списком продуктов). При создании вычисляемой меры, не происходит корректного вычисления. Нужно - сумма(количество упаковок * количество штук в упаковке). Сейчас сумма(количество упаковок) *сумма(количество штук в упаковке).
Очень прошу помощи в решении проблемы.

create dynamic set [ТолькоВыбранныеТовары] as existing [Измерение товаров].[Ключевой атрибут].[Ключевой атрибут];
create member [нужная_сумма_по_товарам] as
sum(existing [ТолькоВыбранныеТовары] -- таки так кошерно, потому что может быть multiselect выбор нескольких товаров
,
-- а вот тут количество упаковок для товара на количество штук в упаковке
количество упаковок * количество штук в упаковке
,null);

Формат отображения, название группы мер и так далее - по вкусу. Засунуть в calculations, конечно же.
28 мар 18, 19:20    [21294389]     Ответить | Цитировать Сообщить модератору
 Re: Вычисляемая мера  [new]
Дедушка
Member

Откуда: Город трёх революций
Сообщений: 5014
Готичный вариант:
считать на источнике, делать физической мерой.
28 мар 18, 20:27    [21294501]     Ответить | Цитировать Сообщить модератору
 Re: Вычисляемая мера  [new]
emolenev
Member

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

Я не специалист в данной области. Подскажи, это необходимо делать уже после подключения куба к Excel допустим?
28 мар 18, 20:30    [21294504]     Ответить | Цитировать Сообщить модератору
 Re: Вычисляемая мера  [new]
emolenev
Member

Откуда:
Сообщений: 6
Дедушка,

Такой вариант уже проработал. На сервере в таблице создал вычисляемое поле. Хочется грамотно сделать. Я начал изучать как создавать кубы. Это по факту мой первый куб. Нужно для работы, поэтому изучаю.
28 мар 18, 20:34    [21294508]     Ответить | Цитировать Сообщить модератору
 Re: Вычисляемая мера  [new]
Andy_OLAP
Member

Откуда: я знаю, что Зенит - чемпион
Сообщений: 1950
Дедушка
Готичный вариант:
считать на источнике, делать физической мерой.

Кстати, да. В каждой строке таблицы с продажами брать кол-во упаковок, умножать на количеству штук в упаковке для нужного товара и получать помимо "продажи уп" еще и "продажи шт" физической measure.
И тогда будет летать. Но. Это потребует пересчета группы мер.
А вариант с dynamic set и подсчетом - длинным, тяжелым, но точным - потребует только правки формул в calculations.

Не всегда есть возможность что-либо в кубе пересчитать - мало ли группа мер нарезана по секциям, архивные смотрят на участки большой таблицы, где сейчас строки с продажами в упаковках пересчитываются и их тупо нет. А пересчет пойдет после добавления новой меры сразу по всем секциям...
28 мар 18, 20:36    [21294510]     Ответить | Цитировать Сообщить модератору
 Re: Вычисляемая мера  [new]
Andy_OLAP
Member

Откуда: я знаю, что Зенит - чемпион
Сообщений: 1950
emolenev
Это по факту мой первый куб. Нужно для работы, поэтому изучаю.

emolenev
Я не специалист в данной области

Так если для работы - наймите себе в штат разработчика SSAS/OLAP. Он сделает Вам все нужные кубы, покажет, где, что и как менять. Далее будете в свободное от основной работы время таки развлекаться с переделками.

Зачем пытаться освоить то, что нужно прямо здесь и сейчас?
28 мар 18, 20:45    [21294515]     Ответить | Цитировать Сообщить модератору
 Re: Вычисляемая мера  [new]
emolenev
Member

Откуда:
Сообщений: 6
Andy_OLAP
Дедушка
Готичный вариант:
считать на источнике, делать физической мерой.

Кстати, да. В каждой строке таблицы с продажами брать кол-во упаковок, умножать на количеству штук в упаковке для нужного товара и получать помимо "продажи уп" еще и "продажи шт" физической measure.
И тогда будет летать. Но. Это потребует пересчета группы мер.
А вариант с dynamic set и подсчетом - длинным, тяжелым, но точным - потребует только правки формул в calculations.

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


Подскажите, это же делать в таблице на sql сервере сделать? Таким образом будет быстрее чем меру создавать? Или я не правильно понял?
28 мар 18, 20:46    [21294517]     Ответить | Цитировать Сообщить модератору
 Re: Вычисляемая мера  [new]
emolenev
Member

Откуда:
Сообщений: 6
Andy_OLAP
emolenev
Это по факту мой первый куб. Нужно для работы, поэтому изучаю.

emolenev
Я не специалист в данной области

Так если для работы - наймите себе в штат разработчика SSAS/OLAP. Он сделает Вам все нужные кубы, покажет, где, что и как менять. Далее будете в свободное от основной работы время таки развлекаться с переделками.

Зачем пытаться освоить то, что нужно прямо здесь и сейчас?

Это не нужно прямо здесь и сейчас. Сейчас хватает ресурсов для анализа без куба.
28 мар 18, 20:48    [21294521]     Ответить | Цитировать Сообщить модератору
 Re: Вычисляемая мера  [new]
Andy_OLAP
Member

Откуда: я знаю, что Зенит - чемпион
Сообщений: 1950
emolenev
Andy_OLAP
пропущено...

Кстати, да. В каждой строке таблицы с продажами брать кол-во упаковок, умножать на количеству штук в упаковке для нужного товара и получать помимо "продажи уп" еще и "продажи шт" физической measure.
И тогда будет летать. Но. Это потребует пересчета группы мер.
А вариант с dynamic set и подсчетом - длинным, тяжелым, но точным - потребует только правки формул в calculations.

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


Подскажите, это же делать в таблице на sql сервере сделать? Таким образом будет быстрее чем меру создавать? Или я не правильно понял?

В целом это выглядит примерно так.

create view [dbo].[кошерная_view_для_группы_мер_со_строками_продаж_в_OLAP_кубы] as
select
t1.[кол-во упаковок] as [продажи уп]
,t1.[ключ_даты_int] as [date_int]
,t1.[ключ измерения товаров]
,t1.[кол-во упаковок] * isnull(t2.[шт в упаковке],0) as [продажи шт] -- если не указано, то считаем, что штук и нет вовсе
from [dbo].[большая_таблица_со_строками_продаж_которую_зачем-то_напрямую_подставили_в_OLAP] t1
left hash join [dbo].[справочная таблица с количество штук в упаковке] t2
-- выкручиваем руки сразу движку MSSQL
-- hash join вместо join, потому что потом Вы view нарежете на месяцы или года и столкнетесь с merge join для очередного куска
on t1.[ключ измерения товаров] = t2.[ключ измерения товаров]
28 мар 18, 20:56    [21294529]     Ответить | Цитировать Сообщить модератору
 Re: Вычисляемая мера  [new]
Andy_OLAP
Member

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

Если кто-то внутри DSV для OLAP базы затянет таблицы вместо view поверх таблиц или связки таблиц только с нужными столбцами, если кто-то скажет select * from table1 вместо select [поле1],[поле2],[поле3]*[поле4] as [special_surprise] from table1 - можете поступить с ним крайне негуманно, впрочем оставаясь в правовом поле в рамках Женевской конвенции.
28 мар 18, 20:58    [21294532]     Ответить | Цитировать Сообщить модератору
 Re: Вычисляемая мера  [new]
emolenev
Member

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

Спасибо. Представление уже создано, это был как запасной вариант. А при затягивании представления в куб не потребуется ключевое поле?
28 мар 18, 21:22    [21294565]     Ответить | Цитировать Сообщить модератору
Все форумы / OLAP и DWH Ответить