|
Как сделать сравнение двух таблиц фактов?
|
|||
---|---|---|---|
#18+
Обе таблицы имеют размер где-то по 10-50 млн.строк и вид: ID dim Дата dim время dim сотрудник dim город dim ... dim ... FACT Сумма DIM ... DIM...150001.01.202110:00150011.01.202110:30 Различие только в столбце "факт" и последующих ключах-ссылках на измерения. "FACT сумма" представляет собой длительность в минутах. Сколько времени было потрачено в заданном промежутке времени. Первая таблица говорит о том, какую основную работу он производил, а вторая - какую дополнительную (совсем другого профиля)
Выходит, что должно это всё дело вести себя так, будто это одна совмещённая таблица. Напрашивается решение : сделать третью таблицу фактов FACT_Main_plus_Extra НО(!) первая таблица может быть запросто отфильтрована некоторым измерением "тип основной работы=1" - если пользователь хочет только его. В итоге картина сильно меняется - нужно получить то же самое, только из первой таблицы будет участвовать только часть строк. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.05.2021, 01:21 |
|
Как сделать сравнение двух таблиц фактов?
|
|||
---|---|---|---|
#18+
Пробовал сделать формулу, которая на ходу определяет, из какой таблицы нужно брать значение и суммирует в зависимости от фильтров, но работает это дитчайше долго. Поэтому вопрос в том, как правильно спроектировать реляционную сторону КХД. Само хранилище (не кубы) ... |
|||
:
Нравится:
Не нравится:
|
|||
13.05.2021, 01:27 |
|
Как сделать сравнение двух таблиц фактов?
|
|||
---|---|---|---|
#18+
Визуализирую вопрос и упрощу. Первый столбец - ключевой. Необходимо дать пользователю для построения отчёта некую "совмещённую" по ключу таблицу ... |
|||
:
Нравится:
Не нравится:
|
|||
13.05.2021, 01:52 |
|
|
start [/forum/topic.php?fid=49&fpage=4&tid=1857143]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
28ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
others: | 249ms |
total: | 369ms |
0 / 0 |