powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Несколько дат в одной таблице фактов
18 сообщений из 18, страница 1 из 1
Несколько дат в одной таблице фактов
    #33315176
Pi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблица фактов о продажах содержит несколько дат - дата отгрузки, дата инвойсирования, дата проведения в Главную книгу.
Есть измерение TimeByDate.

При создании куба НЕ удается сделать так, чтобы было три разных оси времени - все измерения, которые я создаю (виртуальные и регулярные), привязываются к кубу не по измерению, а по таблице - то есть, если я связал одно измерение по GLDate, то любое другое подключаемое измерение связыватся именно по GLDate, не давая возможность выбора.

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

Заранее спасибо!
...
Рейтинг: 0 / 0
Несколько дат в одной таблице фактов
    #33315568
soulsurfer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А сделать несколько измерений:
Я делал у себя два измерения: "Даты отгрузки" и "Даты оплаты" (подразумевается "документа").
Можно сделать две таблички дат и по ним строить измерения.
Наверное не оптимально, но работает нормально
...
Рейтинг: 0 / 0
Несколько дат в одной таблице фактов
    #33315679
Dmitry Biryukov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
все связи можно пересоздать вручную...
или пугает именно это неудобство?
...
Рейтинг: 0 / 0
Несколько дат в одной таблице фактов
    #33315748
Pi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dmitry Biryukovвсе связи можно пересоздать вручную...
или пугает именно это неудобство?
Я бы рад, да еще не знаю как.
Вы имеете в виду через команды MDX?
...
Рейтинг: 0 / 0
Несколько дат в одной таблице фактов
    #33315755
Pi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SoulsurferМожно сделать две таблички дат и по ним строить измерения.

Стыдно такое будет показывать. Еслу уж припрет по срокам, то я скорее создам два-три куба и соединю их в виртуальный, - но тогда прийдется для measures придумывать разные имена.
...
Рейтинг: 0 / 0
Несколько дат в одной таблице фактов
    #33315774
Pi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SoulsurferМожно сделать две таблички дат и по ним строить измерения.

Стыдно такое будет показывать. Еслу уж припрет по срокам, то я скорее создам два-три куба и соединю их в виртуальный, - но тогда прийдется для measures придумывать разные имена.
...
Рейтинг: 0 / 0
Несколько дат в одной таблице фактов
    #33315858
Alex Fox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PiПри создании куба НЕ удается...не давая возможность выбораПардону прошу... А о каком продукте речь идёт?
В MS-е действительно многое можно перепряпрюпривязать... Просто мышкой...
...
Рейтинг: 0 / 0
Несколько дат в одной таблице фактов
    #33315939
Pi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alex Fox PiПри создании куба НЕ удается...не давая возможность выбораПардону прошу... А о каком продукте речь идёт?

Sorry ! Речь идет о MS SQL Analysis service 2000 EE SP4.

Когда я создал несколько dimensions по той же самой таблице, и внес эти dimensions в куб, то я вижу только одну таблицу - и связать могу только по одному полю. Сам куб строится, dimensions визуализируются, но привязка идет только по одному полю.
Пример - в аттачменте, видно, что иерархий много (они все - по одним и тем же таблицам), а связка - только одна.

P.S. Sorry за использование MS PowerPoint формата - jpeg получился больше.
...
Рейтинг: 0 / 0
Несколько дат в одной таблице фактов
    #33322769
JohNick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Одну и туже таблицу можно добавлять несколько раз давая ей различные алиасы в Analysis Manager.
...
Рейтинг: 0 / 0
Несколько дат в одной таблице фактов
    #33323082
Pi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JohNickОдну и туже таблицу можно добавлять несколько раз давая ей различные алиасы в Analysis Manager.
Great thank, JohNick! Это как раз то, что нужно!

Вопрос для меня решен.
...
Рейтинг: 0 / 0
Несколько дат в одной таблице фактов
    #33323906
Владимир Штепа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Уважаемый Pi, а зачем такая хитрая нормализация измерения времени. Зачем вы себе зря жизнь усложняеете. Всегда достаточно одной таблицы. У Вас же измерение времени "как у всех" по дневное, а не по секундное.
...
Рейтинг: 0 / 0
Несколько дат в одной таблице фактов
    #33324137
Pi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
backfireа зачем такая хитрая нормализация измерения времени

Ну, скажем так - от лени. В данном случае использовались существующие таблицы. Для них уже есть интерфейсы (из Scala), персоны саппорта, и прописанные регламенты. "Не множь сущности сверх необходимого" - это, кажется, Оккам?

Другое дело, что если сведение данных в одну таблицу повысит время отклика куба (мы пока пытаемся остаться в рамках Real-time OLAP) - то можно будет чего-то дописать.
...
Рейтинг: 0 / 0
Несколько дат в одной таблице фактов
    #33326283
Владимир Штепа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PiДругое дело, что если сведение данных в одну таблицу повысит время отклика куба (мы пока пытаемся остаться в рамках Real-time OLAP) - то можно будет чего-то дописать.

А можно подробнее про задачи возлагаеміе на real time OLAP? Правильно ли я понимаю, что у вас ROLAP кубы. Как вы достигаете real time на AS 2000? Используете ли аггрегации? А измерения тоже ROLAP?

Если у вас real time ROLAP, то многое зависит от используемого клиента и от схемі куба. Копайте в сторону исследования используеміх MDX запросов и планов SQL посілаемых AS на SQL
...
Рейтинг: 0 / 0
Несколько дат в одной таблице фактов
    #33329058
Pi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dear backfire,
извините за задержку с ответом - наспех отвечать не хотелось, а детально не было времени.

Вообще-то наша задача - это повысить реактивность и удобство отчетной системы. Возможно, что одной денормализации базы данных было бы достаточно, но - кубы будут еще лучше (пора учить пользователей).

Real-time возник по настоянию пользоваталей, которые хотят "запустить большого крокодайла" и тут же увидеть, чего "он" там в системе наменял. Другими словами - это типичный On-line Data Storage.

Пока я барахтаюсь на "пилоте" - это видно хотя бы из вопросов, которые я задаю.

Поскольку нам нужен real-time куб, то взяли ROLAP - он единственный у Microsft real-time. На AS 2000 real-time - это SQL Server EE + выставленная фича в кубе.

Измерения я специально не определял, они сами определились при первом процессинге куба.

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

Куб получается переусложненный потому, что наш Архитектор хочет получить drillthrough прямо в Excel, и, не зная, как это делать с кубом, мы запихнули ордера в иерархию покупателей -> получили 157 000 единиц на первом уровне иерархии (вместо 100-150, как можно было бы).

Сейчас "достроили" куб до того, что из таблицы фактов невозможно ничего удалить:
Код: plaintext
delete from tbOrderFact where  0 = 0  and CompanyId =  65  and OrderNo = '0000009406' 
SQL ServerServer: Msg 8623, Level 16, State 1, Line 1
Internal Query Processor Error: The query processor could not produce a query plan. Contact your primary support provider for more information.

Другими словами, пока нам надо пить за то, чтобы наши возможности догнали наши желания.
...
Рейтинг: 0 / 0
Несколько дат в одной таблице фактов
    #33329144
Dmitry Biryukov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
архитектора сменить не пробовали? :-)
или хотя бы пошлите его на тренинг по ХД/ОЛАП...
Время надо делать на обычной таблице с полями для каждого специфического и неспецифического уровня..
вам нужен анализ по ордерам или только drillthrough? если только drillthrough, то не надо пихать его в измерение. Если и анализ тоже, то сделайте измерение покупателей depends on ордера
для повышения реактивности сделайте одну партицию real-time ROLAP - сегодняшний день, остальные - MOLAP - более старые данные.
а с запросом на удаление обратитесь в бид1
имхо, надо удалить 0=0 (это от лени програмерской нормально составить скл-запрос что ли?) и создать индекс по двум полям. да и патчи последние поставить
...
Рейтинг: 0 / 0
Несколько дат в одной таблице фактов
    #33329513
Pi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dmitry Biryukov
Время надо делать на обычной таблице с полями для каждого специфического и неспецифического уровня..

Dear Dmitry,
если перевод времени из иерархии таблиц в одну облегчит проблему - обязательно это сделаем! Но Вы уверены, что это именно решит проблему, а не повысит реакцию?
Dmitry Biryukov
вам нужен анализ по ордерам или только drillthrough? если только drillthrough, то не надо пихать его в измерение
По ордерам нужен именно drillthrough, они "засунуты" в измерение от нежелания Архитектора заниматься интерфейсом. Более того, номер ордера в drillthrough - это не все, что хотелось бы, хотелось еще ряд полей.
Dmitry Biryukov
для повышения реактивности сделайте одну партицию real-time ROLAP - сегодняшний день, остальные - MOLAP - более старые данные.
а с запросом на удаление обратитесь в бид1

Вот это пытаюсь протолкнуть с самого начала.
Dmitry Biryukov
имхо, надо удалить 0=0 (это от лени програмерской нормально составить скл-запрос что ли?) и создать индекс по двум полям. да и патчи последние поставить

А вот что касается 0=0 и прочее, то тут причина вряд ли в этом. Без real-time куба все работает без проблем, при построении куба по мере его роста нарастают проблемы.
На сервере MS SQL 2000 EE стоит SP4.
...
Рейтинг: 0 / 0
Несколько дат в одной таблице фактов
    #33329789
Dmitry Biryukov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pi Dmitry Biryukov
Время надо делать на обычной таблице с полями для каждого специфического и неспецифического уровня..

Dear Dmitry,
если перевод времени из иерархии таблиц в одну облегчит проблему - обязательно это сделаем! Но Вы уверены, что это именно решит проблему, а не повысит реакцию?Одну из проблем (год начинается летом, месяц начинается в субботу, и т.д) решит, и реакцию не повысит. Pi
Dmitry Biryukov
вам нужен анализ по ордерам или только drillthrough? если только drillthrough, то не надо пихать его в измерение
По ордерам нужен именно drillthrough, они "засунуты" в измерение от нежелания Архитектора заниматься интерфейсом. Более того, номер ордера в drillthrough - это не все, что хотелось бы, хотелось еще ряд полей.
Ну и в чём проблема? удалите это измерение и добавьте в drillthrough столько полей, сколько нужно.
Pi Dmitry Biryukov
для повышения реактивности сделайте одну партицию real-time ROLAP - сегодняшний день, остальные - MOLAP - более старые данные.
а с запросом на удаление обратитесь в бид1

Вот это пытаюсь протолкнуть с самого начала. И как успехи? Pi
Dmitry Biryukov
имхо, надо удалить 0=0 (это от лени програмерской нормально составить скл-запрос что ли?) и создать индекс по двум полям. да и патчи последние поставить

А вот что касается 0=0 и прочее, то тут причина вряд ли в этом. Без real-time куба все работает без проблем, при построении куба по мере его роста нарастают проблемы.
На сервере MS SQL 2000 EE стоит SP4. похоже, что проблема в блокировках. У Вас я так понял и OLTP и OLAP работают на одной и той же таблице? это не есть гуд...

[offtop]я так понял, все ваши проблемы от того, что архитектор упрощает себе жизнь. попробуйте всё же немного изменить архитектуру вашего решения[/offtop]
...
Рейтинг: 0 / 0
Несколько дат в одной таблице фактов
    #33331766
Владимир Штепа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Уважаемый Pi,

1. 157 тыс элемнтов в измерении это еще цветочки. У меня измерение Order имеет миилион и выше (в измерении только один уровень, если не считать автогруппировки, но автогруппировка сделана для клиента невидимым)

2. Зачем вам real time Olap на весь куб. Этого достаточно на партицию сегодняшнего дня (недели), все остальные надо класть в обычный MOLAP.
(кстати, у меня раздел "за сегодня" нормальный MOLAP, но процессится через каждые 15 минут)

3. Без хранилища, прямиком на оперативной системе вы далеко не уедете.

4. Лично мое мнение - drillthrough не есть гут. От него только головная боль. Если у вас свой клиент и MDX вы рисуете сами, то кто вам мешает сгенерить под это дело SQL и тянуть те данные и так как вам надо.
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Несколько дат в одной таблице фактов
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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