Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Детализация до "номера накладной"
|
|||
|---|---|---|---|
|
#18+
Народ! Хочется обсудить одну проблему: Сотрудникам хочется , чтобы в отчетах OLAP присутствовал такой атрибут как номер накладной. Решение 1 : Вынести все такие отчеты в блок оперативной отчетности (OLAP будет использоваться только для задач анализа без такой детализации). Для данного решения придется приложить усилия для доказывания данного факта начальству (А что в OLAPе это нельзя ??? А почему? А нельзя ли подумать? :-((( ) Решение 2 : Сделать shared измерение "Номер накладной" по таблице фактов (в принципе можно построить иерархию или по датам и номерам накладных (Год-Квартал-Месяц-День-Номер накладной) или по контрагентам (Контрагент-Номер накладной) или просто использовать группировку). Такой вариант в принципе может работать, но с ростом количества фактов может привести к созданию очень большого измерения сопоставимого с размером таблицы фактов (конечно, поменьше - ведь накладная имеет несколько строк). Что может ухудшить скорость отклика. Вопрос: Кто как решает данную проблему? Может есть какие то другие пути решения? P.S. Пока накладных не так много, но ожидается довольно приличный объем данных (несколько десятков тысяч накладных в день) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.01.2005, 13:50 |
|
||
|
Детализация до "номера накладной"
|
|||
|---|---|---|---|
|
#18+
AlexPAVНарод! Хочется обсудить одну проблему: Сотрудникам хочется , чтобы в отчетах OLAP присутствовал такой атрибут как номер накладной. Решение 1 : Вынести все такие отчеты в блок оперативной отчетности (OLAP будет использоваться только для задач анализа без такой детализации). Для данного решения придется приложить усилия для доказывания данного факта начальству (А что в OLAPе это нельзя ??? А почему? А нельзя ли подумать? :-((( ) Решение 2 : Сделать shared измерение "Номер накладной" по таблице фактов (в принципе можно построить иерархию или по датам и номерам накладных (Год-Квартал-Месяц-День-Номер накладной) или по контрагентам (Контрагент-Номер накладной) или просто использовать группировку). Такой вариант в принципе может работать, но с ростом количества фактов может привести к созданию очень большого измерения сопоставимого с размером таблицы фактов (конечно, поменьше - ведь накладная имеет несколько строк). Что может ухудшить скорость отклика. Вопрос: Кто как решает данную проблему? Может есть какие то другие пути решения? P.S. Пока накладных не так много, но ожидается довольно приличный объем данных (несколько десятков тысяч накладных в день) Я делал по варианту 2. "Жить можно сносно" до размера измерения в пару лимонов. Затем начинается ..па. Про то, чтоб с Excel туда смотреть, можно забыть. Только custom MDX. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.01.2005, 14:15 |
|
||
|
Детализация до "номера накладной"
|
|||
|---|---|---|---|
|
#18+
Я тоже сделал иерархию по таблице фактов. Склад-Дата-НомерНакладной. Документов за год у меня примерно 200 тысяч, но эксель с таким измерением работает крайне неохотно, точнее охотно но медленно! Особенно если делать с этим измерением Crossjoun-ы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.01.2005, 14:58 |
|
||
|
Детализация до "номера накладной"
|
|||
|---|---|---|---|
|
#18+
ПашкаЯ тоже сделал иерархию по таблице фактов. Склад-Дата-НомерНакладной. Документов за год у меня примерно 200 тысяч, но эксель с таким измерением работает крайне неохотно, точнее охотно но медленно! Особенно если делать с этим измерением Crossjoun-ы. А Вы гляньте, что за MDX генерит Excel, тогда станет все понятно. А на больших измерениях, я только с NonEmptyCrossJoin работаю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.01.2005, 15:34 |
|
||
|
Детализация до "номера накладной"
|
|||
|---|---|---|---|
|
#18+
А какие отчеты выполняются не через OLAP? По моему отчет вида (разные вариации столбцов) : Столбцы "Дата""Номер накладной""Продукция""Грузоотправитель""Грузополучатель""Количество" Все таки больше относиться к оперативной отчетности. Грубо говоря, это - просто список столбцов с данными (может быть достаточно длинным). А если в отчете не 5 столбцов, а 10 и выбран большой период? Наверное, можно написать к данному отчету быстрый MDX, но вопрос ЗАЧЕМ? Если при достижении определенного количество членов измерения "Номер накладной" возникнут большие тормоза и все придется переделывать заново. А если накладных у меня будет 10 миллионов? Что делать? Может лучше тогда действительно такие отчеты делать на SQL (по базе OLAP или по OLTP базе)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.01.2005, 16:08 |
|
||
|
Детализация до "номера накладной"
|
|||
|---|---|---|---|
|
#18+
Попробуйте Microstrategy. С масштабируемостью проблем не будет, если сервер хранилища мощный. К тому же уровень "Накладная" сможете вставить в любое количество имеющихся у Вас измерений. Можно будет Год-Месяц-День-Накладная или Группа товаров-Товар-Накладная или ещё как-то. Миллионы накладных будут не страшны. А SQL будет генерироваться автоматически. С уважением, Константин Лисянский http://lissianski.narod.ru ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.01.2005, 20:55 |
|
||
|
Детализация до "номера накладной"
|
|||
|---|---|---|---|
|
#18+
Альтернативные решения: 1. В AS2K вынести номер накладной в DRILLTHROUGH колонку. Тогда она будет выдаваться как результат SQL query к fact table 2. В AS2005 определить номер накладной как fact dimension (у Кимбалла по моему это называется degenerate dimension) P.S. В отличие от backfire у меня нет нареканий к MDX который генерит Excel. Нарекания у меня к AS engine, который в версии AS2K не всегда может оптимально этот MDX обработать. В AS2005 query optimizer гораздо умнее... Моша ---------------------------------------------------- This posting is provided "AS IS" with no warranties, and confers no rights ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.01.2005, 22:24 |
|
||
|
Детализация до "номера накладной"
|
|||
|---|---|---|---|
|
#18+
Mosha 1. В AS2K вынести номер накладной в DRILLTHROUGH колонку. Тогда она будет выдаваться как результат SQL query к fact table Очень много задач, которые этим способом не решить, т.к. DRILLTHROUGH показывает всегда сырые данные из таблицы фактов, а вопросы ставятся к данным, аггрегированным до уровня счета. Mosha P.S. В отличие от backfire у меня нет нареканий к MDX который генерит Excel. Нарекания у меня к AS engine, который в версии AS2K не всегда может оптимально этот MDX обработать. В AS2005 query optimizer гораздо умнее... Здоровая самокритика это всегда похвально :-). Но Excel всего один из многих клиентов, работающих с MSAS. А MSAS один на сегодняшний день. А когда с оптимальным MDX добиваешься результа на порядок лучшего, чем Excel, то здоровая логика подсказывает, сто проблемы не у AS, а в Excel. Так что проще заменить Excel, чем ждать жутко оптимизированного движка Юкона. :-) Тем более если он придет в срок, то будет с багами. Это же не мои слова :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.01.2005, 02:44 |
|
||
|
|

start [/forum/topic.php?fid=49&msg=32859551&tid=1871902]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
88ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
| others: | 264ms |
| total: | 442ms |

| 0 / 0 |
