Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Одна vs несколько таблиц для измерений / 8 сообщений из 8, страница 1 из 1
15.04.2003, 10:39
    #32140621
GrimReaper777
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Одна vs несколько таблиц для измерений
Возникла сабжевая альтернатива при проектировании базы данных для OLAP
Например, при анализе продаж измерение Продукт имеет по крайней мере две иерерхии: по торговым маркам и по категориям продукта. В MS AS можно для этого создать одну таблицу измерения и на её основе создать 2 измерения (иерархии), а можно создать 2 таблицы измерений, продублировав ключ в таблице фактов, то есть имеем следующие два варианта:

Вариант 1
DimProduct( ID, Brand, Model, Category, SubCategory)
FactSales(ID, ID_Product, ... , MeasureValue)

Вариант 2
DimBrand( ID, Brand, Model)
DimCategory(ID, Category, SubCategory)
FactSales(ID, ID_Brand, ID_Category ... , MeasureValue)

Каковы критерии выбора между ними?
...
Рейтинг: 0 / 0
15.04.2003, 14:45
    #32141109
DmitryS
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Одна vs несколько таблиц для измерений
Я бы рассматривал такие альтернативы:
1. Таблицы Продукт, Категория, Брэнд.
Получаем снежинистый вариант. Наверное, уменьшим размеры хранилища в случае изменяемых измерений. Скорее всего, проще будет организовать закачку - в оперативных БД нормализация - норма:-) Потеряем в скорости процессинга. Насколько сильно - зависит от размножения продуктов и их количества.
2. Всё в одной таблице, но ссылка опять же через продукт - не прямые связи на брэнд и категорию. Работать будет быстрее, но побольше геморроя. Идеально, если измерение не изменяемое (продукт не переезжает между брэндами и категориями). Впрочем, и для изменяемого тоже неплохо - трудно к этому перейти психологически, в первую очередь:-)
...
Рейтинг: 0 / 0
17.04.2003, 15:25
    #32143260
GrimReaper777
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Одна vs несколько таблиц для измерений
А чем плох вариант с прямыми связями фактов с брэндом и категорией?
...
Рейтинг: 0 / 0
17.04.2003, 15:56
    #32143328
DmitryS
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Одна vs несколько таблиц для измерений
Сходу и ответишь:-) Продукт теряете, по крайней мере...
...
Рейтинг: 0 / 0
17.04.2003, 16:04
    #32143347
Jurii
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Одна vs несколько таблиц для измерений
А чем плох вариант с прямыми связями фактов с брэндом и категорией?

На мой взгляд, довольно неестественно запихивать в таблицу фактов коды характеристик объекта (товара). Это во-первых приведет к резкому росту размера ХД (особенно если признаков/классификаторов не 2 - а больше), а во-вторых - если Вы захотите изменить классификацию (отнести товар к другой категории), то придется делать длинную транзакцию по апдейту большого числа записей таблицы фактов - это ненужная загрузка сервера РСУБД.

Так что я бы порекомендовал использовать структуру СНЕЖИНКА, когда в таблице фактов есть идентификатор товара (ссылка на справочник товаров), а справочник, в свою очередь, ссылается на справочники брэндов и категорий. Ну или на худой конец - сделать звезду, поместив значения брэндов и категорий в справочник товаров (такую избыточность еще можно пережить).
...
Рейтинг: 0 / 0
18.04.2003, 12:16
    #32143815
GrimReaper777
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Одна vs несколько таблиц для измерений
Спасибо, вроде прояснилось
Ещё один небольшой вопрос на ту же тему
Брэнды и Категории это два разных измерения или 2 иерархии одного измерения Продукты?
То есть чтобы всё было логически прозрачным, хочется в терминах MS AS создать измерения Products.ByBrands, Products.ByCategory
Но! Клиенты типа ProClarity (насколько я успел его изучить) не позволяют работать одновременно с двумя иерархиями одного измерения, то есть расположить одно по столбцам, а второе по колонкам. Как быть?
...
Рейтинг: 0 / 0
18.04.2003, 12:17
    #32143818
GrimReaper777
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Одна vs несколько таблиц для измерений
по столбцам и строкам вернее
...
Рейтинг: 0 / 0
18.04.2003, 14:40
    #32144065
Дядя Федор
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Одна vs несколько таблиц для измерений
Создай два измерения, а не две иерархии. Только точку из названия убери :)
...
Рейтинг: 0 / 0
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Одна vs несколько таблиц для измерений / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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