Попытка разработать схему Star, включающую типы аренды

Я разрабатываю хранилище данных о прокате фильмов

Я хочу, чтобы таблица фактов состояла из проката/возврата фильмов, но я запутался.

Фильмы можно вернуть в любой магазин, поэтому мне нужно это показать.

У меня есть следующие параметры: время, информация о клиенте, информация о фильме и магазин.

Я не вижу, где я мог бы показать, если это аренда или возврат, если это отдельные записи?

Каковы были бы мои варианты разработки схемы звезды для отображения этой информации? Я понятия не имею, куда ее поместить, и моя голова вот-вот взорвется.


person Chris James    schedule 18.04.2012    source источник
comment
Похоже, вы проектируете действующую базу данных, а не хранилище данных. Возможно, вам нужна еще одна таблица для поддержания текущего состояния каждого фильма.   -  person chance    schedule 18.04.2012
comment
У меня уже есть действующая база данных, но я пытаюсь преобразовать ее в хранилище данных со звездообразной схемой. Я никогда раньше не создавал хранилище данных, и все примеры хранилищ данных, которые я видел, похоже, не имеют чего-то вроде типов заказов или, в моем случае, возврата или проката фильмов, предполагая, что действия клиентов - это моя таблица фактов, спасибо за ответ. шанс.   -  person Chris James    schedule 18.04.2012
comment
Не совсем понятно, что вы подразумеваете под арендой и возвратом. Вы говорите о случаях, когда покупатель берет фильм напрокат, а затем возвращает его? Если это так, обычно используются измерения для даты и времени суток. Таким образом, таблица фактов будет называться FactMovieRental, у вас будут ключи измерений для начала и окончания периода аренды, а одним из возможных фрагментов будет RentalDurationInHours. Но я могу быть совершенно неправ здесь, потому что я, возможно, неправильно понял вопрос.   -  person Pondlife    schedule 24.04.2012


Ответы (1)


Начните с уровня транзакций и стройте оттуда...

FactMovieTransaction
    CustomerKey
    TransactionTypeKey
    StoreKey
    MovieKey
    DateKey
    TimeKey
    <fact 1>
    <fact 2>


DimCustomer
    CustomerKey
    CustomerID (ex. 0000123478)
    CustomerName (ex. Peter Anderson)

DimTransactionType
    TransactionTypeKey 
    TransactionType (ex. Return, Rental)

DimStore
    StoreKey
    StoreID (ex. 234, 212)
    StoreName (ex. BlockBuster#243, BlockBuster#212)

DimMovie
    MovieKey
    MovieName (ex. StarWars)
    MovieDescription
    Genere

DimDate
    DateKey
    Date (ex. 1/1/900 - 1/1/2999)

DimTime
    TimeKey
    Time (ex. 00:00 - 23:59)
person Bill Anton    schedule 08.05.2012