dbaspot
Tags Register FAQ Calendar Search Today's Posts Mark Forums Read

Design for star schema - sqlserver-datawarehouse

This is a discussion on Design for star schema - sqlserver-datawarehouse ; Dear newsgroup readers, I am working on suggesting a data warehouse design for an insurance company. The business logic is that there are Customers and each Customer has a Captive. Also, each Captive has a Cession. On the technical side, ...


Home > Database Forum > Data Warehousing > sqlserver-datawarehouse > Design for star schema

Reply

 

LinkBack Thread Tools Display Modes
  #1  
Old 10-05-2007, 02:30 AM
Database Bot
 
Join Date: Sep 2009
Posts: 1,236,254
Database Administrator is on a distinguished road
Default Design for star schema

Dear newsgroup readers,

I am working on suggesting a data warehouse design for an insurance
company. The business logic is that there are Customers and each
Customer has a Captive. Also, each Captive has a Cession.


On the technical side, there is at present an OLTP database for the
Front End which is highly normalized. For reporting purposes, it will
be not very efficient reporting off this database, and that is why I
would like to implement a star schema in a separate reporting
database
(MSSQL 2005).


The OLTP database looks like this:


tblCustomer
---------------
CustomerID (PK)
CustomerName
....


tblCaptive
---------------
CaptiveID (PK)
Name
CustomerID (FK1)
....


tblCession
-------------
CessionID
CaptiveID (FK1)


For my star schema design, I would like to have Cession as the fact
table, and Captive and Customer as dimension tables, as follows:


factCession
--------------
CessionID (PK)
CustomerID (FK1)
CaptiveID (FK2)
AmountCommision
.....


dimCaptive
-------------
CaptiveID (PK)
Name
.....


dimCustomer
----------------
CustomerID (PK)
Name
.....


Is this design a good choice when one considers the relationship
between Customer, Captive and Cession? I.e. each Customer has one or
more Captives and each Captive has one or more Cessions. Please have
a
look and let me know where there could be improvements.


I expect that the end-user will want to report on the measures from
Cessions and view it by Customer. There is also the possibility that
they should be able to drill-down from the Customer level to the
Captive level for viewing Cessions.


Thanks in advance.

Reply With Quote
  #2  
Old 10-05-2007, 05:24 AM
Database Bot
 
Join Date: Sep 2009
Posts: 1,236,254
Database Administrator is on a distinguished road
Default Re: Design for star schema

On Oct 5, 8:30 am, Jean wrote:
> Dear newsgroup readers,
>
> I am working on suggesting a data warehouse design for an insurance
> company. The business logic is that there are Customers and each
> Customer has a Captive. Also, each Captive has a Cession.
>
> On the technical side, there is at present an OLTP database for the
> Front End which is highly normalized. For reporting purposes, it will
> be not very efficient reporting off this database, and that is why I
> would like to implement a star schema in a separate reporting
> database
> (MSSQL 2005).
>
> The OLTP database looks like this:
>
> tblCustomer
> ---------------
> CustomerID (PK)
> CustomerName
> ...
>
> tblCaptive
> ---------------
> CaptiveID (PK)
> Name
> CustomerID (FK1)
> ...
>
> tblCession
> -------------
> CessionID
> CaptiveID (FK1)
>
> For my star schema design, I would like to have Cession as the fact
> table, and Captive and Customer as dimension tables, as follows:
>
> factCession
> --------------
> CessionID (PK)
> CustomerID (FK1)
> CaptiveID (FK2)
> AmountCommision
> ....
>
> dimCaptive
> -------------
> CaptiveID (PK)
> Name
> ....
>
> dimCustomer
> ----------------
> CustomerID (PK)
> Name
> ....
>
> Is this design a good choice when one considers the relationship
> between Customer, Captive and Cession? I.e. each Customer has one or
> more Captives and each Captive has one or more Cessions. Please have
> a
> look and let me know where there could be improvements.
>
> I expect that the end-user will want to report on the measures from
> Cessions and view it by Customer. There is also the possibility that
> they should be able to drill-down from the Customer level to the
> Captive level for viewing Cessions.
>
> Thanks in advance.


You design is right if Cession is the fact table. However, if your
users would like to analyze all related cessions for a cession group
(or a Captive) considering all possible relationships through
Customer, you might want to take a look at more complex models (see my
many-to-many paper here: http://www.sqlbi.eu/manytomany.aspx).
Nevertheless, I'd suggest you to make a simple star schema in V1 (what
you're doing now) and only if customer asks more, then you might
consider more complex design (it implies performance issue... so do
that with care).

Marco Russo
http://www.sqlbi.eu
http://sqlblog.com/blogs/marco_russo

Reply With Quote
Reply

Thread Tools
Display Modes



All times are GMT -4. The time now is 12:46 PM.