Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / как лучше построить таблицу фактов? / 17 сообщений из 17, страница 1 из 1
28.09.2005, 19:13
    #33294346
Mike Sikalo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как лучше построить таблицу фактов?
Добрый день,

в системе для каждого счета на каждый день исходя из разных критериев может быть расчитано некоторое количество (скажем, порядка 7) "разных" балансов, что-то вроде

Balance_A,
Balance_B,
Balance_C,
Balance_AB,
Balance_BC,
Balance_AC,
Balance_ABC

На практике некоторые балансы могут не использоваться, но меньше 1 и больше 7 никак не будет. Вопрос, как лучше построить таблицу фактов для такого случая:

1) Тупо

account_id
date_id
Balance_A
Balance_B
Balance_C
Balance_AB
Balance_BC
Balance_AC
Balance_ABC

2) Не тупо

account_id
date_id
balance_type_id
balance_amount

(соответственно, добавляется еще одно измерение balance_type)

Был бы очень признателен за совет и аргументацию за/против

Mike
...
Рейтинг: 0 / 0
28.09.2005, 23:37
    #33294553
Dmitry Biryukov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как лучше построить таблицу фактов?
выбираете между производительностью и объёмом хранимых данных? или хотите и рыбку съесть и ... всё остальное?
...
Рейтинг: 0 / 0
29.09.2005, 11:20
    #33295110
Mike Sikalo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как лучше построить таблицу фактов?
Dmitry Biryukovвыбираете между производительностью и объёмом хранимых данных? или хотите и рыбку съесть и ... всё остальное?

мне не очевидно, что в первом случае объемы данных существенно больше.. Количество строк гарантировано меньше, и, если в неиспользуемых полях хранить NULL - ...

А есть какие-то стандартные, описанные в литературе подходы?
...
Рейтинг: 0 / 0
29.09.2005, 11:42
    #33295211
Eldar
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как лучше построить таблицу фактов?
Mike SikaloДобрый день,

в системе для каждого счета на каждый день исходя из разных критериев может быть расчитано некоторое количество (скажем, порядка 7) "разных" балансов, что-то вроде

Balance_A,
Balance_B,
Balance_C,
Balance_AB,
Balance_BC,
Balance_AC,
Balance_ABC

На практике некоторые балансы могут не использоваться, но меньше 1 и больше 7 никак не будет. Вопрос, как лучше построить таблицу фактов для такого случая:

1) Тупо

account_id
date_id
Balance_A
Balance_B
Balance_C
Balance_AB
Balance_BC
Balance_AC
Balance_ABC

2) Не тупо

account_id
date_id
balance_type_id
balance_amount

(соответственно, добавляется еще одно измерение balance_type)

Был бы очень признателен за совет и аргументацию за/против

Mike


Mike Sikaloaccount_id
date_id
balance_type_id
balance_amount

лучше так,
но как я понимаю с этими показателями будут какие-то операции?
тут надо смотреть на то чем будут пользоваться
...
Рейтинг: 0 / 0
29.09.2005, 12:47
    #33295545
Birkhoff
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как лучше построить таблицу фактов?
А какой объем данных будет?
...
Рейтинг: 0 / 0
29.09.2005, 14:26
    #33295954
Mike Sikalo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как лучше построить таблицу фактов?
Eldar

Mike Sikalo
account_id
date_id
balance_type_id
balance_amount

лучше так,



Так а чем конкретно лучше, кроме того, что это выглядит более "нормализовано"?

Eldar
но как я понимаю с этими показателями будут какие-то операции?
тут надо смотреть на то чем будут пользоваться

Будут кубы строиться.. Ну там, макс./мин., средний за период по компаниям в разрезе банков и т.п. Стандартный набор, как по мне. Или какие операции вы имеете ввиду?
...
Рейтинг: 0 / 0
29.09.2005, 14:27
    #33295962
Mike Sikalo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как лучше построить таблицу фактов?
BirkhoffА какой объем данных будет?

миллионы строк. Балансы за каждый день для нескольких тысяч счетов в течение нескольких лет.
...
Рейтинг: 0 / 0
29.09.2005, 15:06
    #33296110
Eldar
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как лучше построить таблицу фактов?
Mike SikaloБудут кубы строиться.. Ну там, макс./мин., средний за период по компаниям в разрезе банков и т.п. Стандартный набор, как по мне. Или какие операции вы имеете ввиду?


а что несет понятие "разные балансы"?
плановые данные или что?
...
Рейтинг: 0 / 0
29.09.2005, 15:15
    #33296149
Eldar
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как лучше построить таблицу фактов?
Mike Sikaloмиллионы строк. Балансы за каждый день для нескольких тысяч счетов в течение нескольких лет.

а есть ли смысл от миллионов,
будут ли они востребованы?


н-р, у меня есть кубик в котором из ежемесячного прироста (800-900тыс записей) аггрегируются и хранятся всего 20 тыс.
...
Рейтинг: 0 / 0
29.09.2005, 15:29
    #33296198
Mike Sikalo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как лучше построить таблицу фактов?
Eldar Mike SikaloБудут кубы строиться.. Ну там, макс./мин., средний за период по компаниям в разрезе банков и т.п. Стандартный набор, как по мне. Или какие операции вы имеете ввиду?


а что несет понятие "разные балансы"?
плановые данные или что?

прогнозы исходя из различных предположений
...
Рейтинг: 0 / 0
29.09.2005, 15:31
    #33296204
Mike Sikalo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как лучше построить таблицу фактов?
Eldar Mike Sikaloмиллионы строк. Балансы за каждый день для нескольких тысяч счетов в течение нескольких лет.

а есть ли смысл от миллионов,
будут ли они востребованы?


н-р, у меня есть кубик в котором из ежемесячного прироста (800-900тыс записей) аггрегируются и хранятся всего 20 тыс.

конкретные заказчики смогут конфигурировать, что конкретно им нужно, но исходя из сегодняшней картины - будут "миллионы"
...
Рейтинг: 0 / 0
29.09.2005, 15:44
    #33296246
Владимир Штепа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как лучше построить таблицу фактов?
Я бы выбрал вариант 2. С точки зрения структуры это более логично. На варианте 1 вы сэкономите немного места если действительно все балансы используются, но проиграете на стройности решения, и как следствие удорожание разработки и сопровождения.
...
Рейтинг: 0 / 0
29.09.2005, 18:26
    #33296820
Mike Sikalo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как лучше построить таблицу фактов?
backfireЯ бы выбрал вариант 2. С точки зрения структуры это более логично. На варианте 1 вы сэкономите немного места если действительно все балансы используются, но проиграете на стройности решения, и как следствие удорожание разработки и сопровождения.

хм.. а что насчет производительности обоих вариантов?
...
Рейтинг: 0 / 0
29.09.2005, 18:55
    #33296884
Birkhoff
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как лучше построить таблицу фактов?
А я бы первый тупой вариант выбрал.
Если вам нужно например среднее посчитать между балансами за день
или просто вычислить что то между ними, как вы это во втором варианте сделаете?
Или вопрос в том как лучше сделать таблицу, которую в OLAP кубик грузить?
А все вычисления над кубом?
...
Рейтинг: 0 / 0
29.09.2005, 19:51
    #33296986
Jurii
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как лучше построить таблицу фактов?
2 Birkhoff:

А я бы первый тупой вариант выбрал.
Если вам нужно например среднее посчитать между балансами за день


А я бы выбрал второй вариант, он выглядит изящнее. А при проектировании OLAP-куба делал бы источник данных в виде виртуальной вьюшки, превращая узкую таблицу в широкую виртуальную вьюшку.
Однако, многое зависит от того, какой OLAP-сервер используется - не везде есть поддержка виртуальных вьюшек. То есть если используется MS AS - то удобнее использовать первый вариант (так как количество полей не увеличивается со временем, первый вариант тоже прокатит).
...
Рейтинг: 0 / 0
29.09.2005, 20:55
    #33297077
Birkhoff
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как лучше построить таблицу фактов?
Я бы даже сказал, что виртуальные вьюшки существуют только в одном продукте. Но зато в самом лучшем. :)
...
Рейтинг: 0 / 0
30.09.2005, 11:09
    #33297863
rsoudakov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как лучше построить таблицу фактов?
Первый вариант даст выигрыш, если Вам нужно строить отчеты по сравнению различных балансов и если количество балансов обычно будет больше одного-двух. Если же таких - сравнительных отчетов нет или мало и количество балансов будет как правило 1-2, то второй вариант предпочтительнее и гибче.
...
Рейтинг: 0 / 0
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / как лучше построить таблицу фактов? / 17 сообщений из 17, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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