dbTalk Databases Forums  

Re: New to SQL OLAP

microsoft.public.sqlserver.olap microsoft.public.sqlserver.olap


Discuss Re: New to SQL OLAP in the microsoft.public.sqlserver.olap forum.



Reply
 
Thread Tools Display Modes
  #1  
Old   
Tom Chester
 
Posts: n/a

Default Re: New to SQL OLAP - 09-09-2003 , 02:39 PM






Fact tables exist to optimize reporting (in a general sense). The main
reasons are:

1) Since it's loaded in batch there are no transactions; reportA will tie to
reportB
2) Queries don't degrade the operational system
3) Schema optimized for querying
4) Often contains data from multiple data sources

You might want to read one of Ralph Kimball's books.

tom @ the domain below
www.tomchester.net


"Mike Morse" <mike.morse (AT) micromo (DOT) com> wrote

Quote:
I'm going through the OLAP tutorials here and some things
aren't making any sense as far as normalization. Why on
earth you would create a separate "sales fact table"
instead using the actual table that recorded the sale.
Then they are linking back to a time table by a
key!!!!???? This is definately not they way people design
for data storage.

Here's my situation:
I have a SalesOrder Master table which is parent to
SalesOrderItems which is parent to SalesOrderItemsRels
(releases). SORels contains how many items have been
relerease per each SalesOrderItem ordered.

The SalesOrder master is linked pack to customer and stuff
like that.

Could anyone give me a push in the right direction here?
Thanks

-mike



Reply With Quote
  #2  
Old   
Bill Cheng [MSFT]
 
Posts: n/a

Default RE: New to SQL OLAP - 09-10-2003 , 05:58 AM






Hi Mike,

I am afraid that I do not understand your detailed concerns here. Do you
mean that you think the design mentioned in your post is not good?
"I have a SalesOrder Master table which is parent to SalesOrderItems which
is parent to SalesOrderItemsRels (releases). SORels contains how many
items have been relerease per each SalesOrderItem ordered."

How would you design the data storage and think it is better? What separate
"sales fact table" do you need to create? In addition, you mentioned that
you take some OLAP tutorials. Could you post the detailed text and sample
in that OLAP tutorial which you do not think makes sense?


Bill Cheng
Microsoft Online Partner Support

Get Secure! - www.microsoft.com/security
This posting is provided "as is" with no warranties and confers no rights.
--------------------
Quote:
Content-Class: urn:content-classes:message
From: "Mike Morse" <mike.morse (AT) micromo (DOT) com
Sender: "Mike Morse" <mike.morse (AT) micromo (DOT) com
Subject: New to SQL OLAP
Date: Tue, 9 Sep 2003 12:15:20 -0700
Lines: 21
Message-ID: <0b0f01c37706$b6038920$a001280a (AT) phx (DOT) gbl
MIME-Version: 1.0
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
X-Newsreader: Microsoft CDO for Windows 2000
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4910.0300
Thread-Index: AcN3BrYDLjbSyuriQrm+SGuchE/Zfg==
Newsgroups: microsoft.public.sqlserver.olap
Path: cpmsftngxa06.phx.gbl
Xref: cpmsftngxa06.phx.gbl microsoft.public.sqlserver.olap:42618
NNTP-Posting-Host: TK2MSFTNGXA08 10.40.1.160
X-Tomcat-NG: microsoft.public.sqlserver.olap

I'm going through the OLAP tutorials here and some things
aren't making any sense as far as normalization. Why on
earth you would create a separate "sales fact table"
instead using the actual table that recorded the sale.
Then they are linking back to a time table by a
key!!!!???? This is definately not they way people design
for data storage.

Here's my situation:
I have a SalesOrder Master table which is parent to
SalesOrderItems which is parent to SalesOrderItemsRels
(releases). SORels contains how many items have been
relerease per each SalesOrderItem ordered.

The SalesOrder master is linked pack to customer and stuff
like that.

Could anyone give me a push in the right direction here?
Thanks

-mike



Reply With Quote
  #3  
Old   
MIke Morse
 
Posts: n/a

Default RE: New to SQL OLAP - 09-10-2003 , 07:56 AM



The design I mentioned is fine. What I don't agree with
is how the food mart samples has a "fact table" and the
logic that is behind it. This table is not how people
really store sales data with a join to a table containing
dates.

-mike

Quote:
-----Original Message-----
Hi Mike,

I am afraid that I do not understand your detailed
concerns here. Do you
mean that you think the design mentioned in your post is
not good?
"I have a SalesOrder Master table which is parent to
SalesOrderItems which
is parent to SalesOrderItemsRels (releases). SORels
contains how many
items have been relerease per each SalesOrderItem
ordered."

How would you design the data storage and think it is
better? What separate
"sales fact table" do you need to create? In addition,
you mentioned that
you take some OLAP tutorials. Could you post the detailed
text and sample
in that OLAP tutorial which you do not think makes sense?


Bill Cheng
Microsoft Online Partner Support

Get Secure! - www.microsoft.com/security
This posting is provided "as is" with no warranties and
confers no rights.
--------------------
| Content-Class: urn:content-classes:message
| From: "Mike Morse" <mike.morse (AT) micromo (DOT) com
| Sender: "Mike Morse" <mike.morse (AT) micromo (DOT) com
| Subject: New to SQL OLAP
| Date: Tue, 9 Sep 2003 12:15:20 -0700
| Lines: 21
| Message-ID: <0b0f01c37706$b6038920$a001280a (AT) phx (DOT) gbl
| MIME-Version: 1.0
| Content-Type: text/plain;
| charset="iso-8859-1"
| Content-Transfer-Encoding: 7bit
| X-Newsreader: Microsoft CDO for Windows 2000
| X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4910.0300
| Thread-Index: AcN3BrYDLjbSyuriQrm+SGuchE/Zfg==
| Newsgroups: microsoft.public.sqlserver.olap
| Path: cpmsftngxa06.phx.gbl
| Xref: cpmsftngxa06.phx.gbl
microsoft.public.sqlserver.olap:42618
| NNTP-Posting-Host: TK2MSFTNGXA08 10.40.1.160
| X-Tomcat-NG: microsoft.public.sqlserver.olap
|
| I'm going through the OLAP tutorials here and some
things
| aren't making any sense as far as normalization. Why on
| earth you would create a separate "sales fact table"
| instead using the actual table that recorded the sale.
| Then they are linking back to a time table by a
| key!!!!???? This is definately not they way people
design
| for data storage.
|
| Here's my situation:
| I have a SalesOrder Master table which is parent to
| SalesOrderItems which is parent to SalesOrderItemsRels
| (releases). SORels contains how many items have been
| relerease per each SalesOrderItem ordered.
|
| The SalesOrder master is linked pack to customer and
stuff
| like that.
|
| Could anyone give me a push in the right direction here?
| Thanks
|
| -mike
|

.


Reply With Quote
  #4  
Old   
Tom Chester
 
Posts: n/a

Default Re: New to SQL OLAP - 09-10-2003 , 10:14 AM



If you need to store attributes for dates, you need a table, data warehouse
or not. You could use the date as the PK/FK rather than an integer.

tom @ the domain below
www.tomchester.net


"MIke Morse" <mike.morse (AT) micromo (DOT) com> wrote

Quote:
The design I mentioned is fine. What I don't agree with
is how the food mart samples has a "fact table" and the
logic that is behind it. This table is not how people
really store sales data with a join to a table containing
dates.

-mike

-----Original Message-----
Hi Mike,

I am afraid that I do not understand your detailed
concerns here. Do you
mean that you think the design mentioned in your post is
not good?
"I have a SalesOrder Master table which is parent to
SalesOrderItems which
is parent to SalesOrderItemsRels (releases). SORels
contains how many
items have been relerease per each SalesOrderItem
ordered."

How would you design the data storage and think it is
better? What separate
"sales fact table" do you need to create? In addition,
you mentioned that
you take some OLAP tutorials. Could you post the detailed
text and sample
in that OLAP tutorial which you do not think makes sense?


Bill Cheng
Microsoft Online Partner Support

Get Secure! - www.microsoft.com/security
This posting is provided "as is" with no warranties and
confers no rights.
--------------------
| Content-Class: urn:content-classes:message
| From: "Mike Morse" <mike.morse (AT) micromo (DOT) com
| Sender: "Mike Morse" <mike.morse (AT) micromo (DOT) com
| Subject: New to SQL OLAP
| Date: Tue, 9 Sep 2003 12:15:20 -0700
| Lines: 21
| Message-ID: <0b0f01c37706$b6038920$a001280a (AT) phx (DOT) gbl
| MIME-Version: 1.0
| Content-Type: text/plain;
| charset="iso-8859-1"
| Content-Transfer-Encoding: 7bit
| X-Newsreader: Microsoft CDO for Windows 2000
| X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4910.0300
| Thread-Index: AcN3BrYDLjbSyuriQrm+SGuchE/Zfg==
| Newsgroups: microsoft.public.sqlserver.olap
| Path: cpmsftngxa06.phx.gbl
| Xref: cpmsftngxa06.phx.gbl
microsoft.public.sqlserver.olap:42618
| NNTP-Posting-Host: TK2MSFTNGXA08 10.40.1.160
| X-Tomcat-NG: microsoft.public.sqlserver.olap
|
| I'm going through the OLAP tutorials here and some
things
| aren't making any sense as far as normalization. Why on
| earth you would create a separate "sales fact table"
| instead using the actual table that recorded the sale.
| Then they are linking back to a time table by a
| key!!!!???? This is definately not they way people
design
| for data storage.
|
| Here's my situation:
| I have a SalesOrder Master table which is parent to
| SalesOrderItems which is parent to SalesOrderItemsRels
| (releases). SORels contains how many items have been
| relerease per each SalesOrderItem ordered.
|
| The SalesOrder master is linked pack to customer and
stuff
| like that.
|
| Could anyone give me a push in the right direction here?
| Thanks
|
| -mike
|

.




Reply With Quote
  #5  
Old   
Mark Andrews
 
Posts: n/a

Default Re: New to SQL OLAP - 09-10-2003 , 05:39 PM



I have to agree with Tom. Look into Star schema modeling and the reasons
why you create a separate table for the time dimension and then use
integer keys in all your fact tables. You can put all kinds of data in the
time dimension table (calendar year, fiscal year, day of the week, holiday
flag etc...).

You design a data warehouse for querying and reporting and not for data
entry.

Mark
"MIke Morse" <mike.morse (AT) micromo (DOT) com> wrote

Quote:
The design I mentioned is fine. What I don't agree with
is how the food mart samples has a "fact table" and the
logic that is behind it. This table is not how people
really store sales data with a join to a table containing
dates.

-mike

-----Original Message-----
Hi Mike,

I am afraid that I do not understand your detailed
concerns here. Do you
mean that you think the design mentioned in your post is
not good?
"I have a SalesOrder Master table which is parent to
SalesOrderItems which
is parent to SalesOrderItemsRels (releases). SORels
contains how many
items have been relerease per each SalesOrderItem
ordered."

How would you design the data storage and think it is
better? What separate
"sales fact table" do you need to create? In addition,
you mentioned that
you take some OLAP tutorials. Could you post the detailed
text and sample
in that OLAP tutorial which you do not think makes sense?


Bill Cheng
Microsoft Online Partner Support

Get Secure! - www.microsoft.com/security
This posting is provided "as is" with no warranties and
confers no rights.
--------------------
| Content-Class: urn:content-classes:message
| From: "Mike Morse" <mike.morse (AT) micromo (DOT) com
| Sender: "Mike Morse" <mike.morse (AT) micromo (DOT) com
| Subject: New to SQL OLAP
| Date: Tue, 9 Sep 2003 12:15:20 -0700
| Lines: 21
| Message-ID: <0b0f01c37706$b6038920$a001280a (AT) phx (DOT) gbl
| MIME-Version: 1.0
| Content-Type: text/plain;
| charset="iso-8859-1"
| Content-Transfer-Encoding: 7bit
| X-Newsreader: Microsoft CDO for Windows 2000
| X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4910.0300
| Thread-Index: AcN3BrYDLjbSyuriQrm+SGuchE/Zfg==
| Newsgroups: microsoft.public.sqlserver.olap
| Path: cpmsftngxa06.phx.gbl
| Xref: cpmsftngxa06.phx.gbl
microsoft.public.sqlserver.olap:42618
| NNTP-Posting-Host: TK2MSFTNGXA08 10.40.1.160
| X-Tomcat-NG: microsoft.public.sqlserver.olap
|
| I'm going through the OLAP tutorials here and some
things
| aren't making any sense as far as normalization. Why on
| earth you would create a separate "sales fact table"
| instead using the actual table that recorded the sale.
| Then they are linking back to a time table by a
| key!!!!???? This is definately not they way people
design
| for data storage.
|
| Here's my situation:
| I have a SalesOrder Master table which is parent to
| SalesOrderItems which is parent to SalesOrderItemsRels
| (releases). SORels contains how many items have been
| relerease per each SalesOrderItem ordered.
|
| The SalesOrder master is linked pack to customer and
stuff
| like that.
|
| Could anyone give me a push in the right direction here?
| Thanks
|
| -mike
|

.




Reply With Quote
  #6  
Old   
Bill Cheng [MSFT]
 
Posts: n/a

Default RE: New to SQL OLAP - 09-10-2003 , 07:56 PM



Hi Mike,

You could place all time data in one separate table and build a time
dimension, so that it can be reused by several cubes in the OLAP database.

A key characteristic of a fact table is that it contains numerical data
(facts) that can be summarized to provide information about the history of
the operation of the organization. Each fact table also includes a
multipart index that contains as foreign keys the primary keys of related
dimension tables, which contain the attributes of the fact records. Fact
tables should not contain descriptive information or any data other than
the numerical measurement fields and the index fields that relate the facts
to corresponding entries in the dimension tables.

Generally we do not base OLAP cube directly on raw data entered. We will
first map it to the format we desire. Certainly we could also place time
directly in the fact table. You may compare the performance and management
easiness between these two approaches.


Bill Cheng
Microsoft Online Partner Support

Get Secure! - www.microsoft.com/security
This posting is provided "as is" with no warranties and confers no rights.
--------------------
Quote:
Content-Class: urn:content-classes:message
From: "MIke Morse" <mike.morse (AT) micromo (DOT) com
Sender: "MIke Morse" <mike.morse (AT) micromo (DOT) com
References: <0b0f01c37706$b6038920$a001280a (AT) phx (DOT) gbl
Od$Ftp4dDHA.2108 (AT) cpmsftngxa06 (DOT) phx.gbl
Subject: RE: New to SQL OLAP
Date: Wed, 10 Sep 2003 05:56:53 -0700
Lines: 87
Message-ID: <04f001c3779b$01f3d8a0$a001280a (AT) phx (DOT) gbl
MIME-Version: 1.0
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
X-Newsreader: Microsoft CDO for Windows 2000
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4910.0300
Thread-Index: AcN3mwHxSAyRFeNySTi4cpTWcJdKrA==
Newsgroups: microsoft.public.sqlserver.olap
Path: cpmsftngxa06.phx.gbl
Xref: cpmsftngxa06.phx.gbl microsoft.public.sqlserver.olap:42649
NNTP-Posting-Host: TK2MSFTNGXA08 10.40.1.160
X-Tomcat-NG: microsoft.public.sqlserver.olap

The design I mentioned is fine. What I don't agree with
is how the food mart samples has a "fact table" and the
logic that is behind it. This table is not how people
really store sales data with a join to a table containing
dates.

-mike

-----Original Message-----
Hi Mike,

I am afraid that I do not understand your detailed
concerns here. Do you
mean that you think the design mentioned in your post is
not good?
"I have a SalesOrder Master table which is parent to
SalesOrderItems which
is parent to SalesOrderItemsRels (releases). SORels
contains how many
items have been relerease per each SalesOrderItem
ordered."

How would you design the data storage and think it is
better? What separate
"sales fact table" do you need to create? In addition,
you mentioned that
you take some OLAP tutorials. Could you post the detailed
text and sample
in that OLAP tutorial which you do not think makes sense?


Bill Cheng
Microsoft Online Partner Support

Get Secure! - www.microsoft.com/security
This posting is provided "as is" with no warranties and
confers no rights.
--------------------
| Content-Class: urn:content-classes:message
| From: "Mike Morse" <mike.morse (AT) micromo (DOT) com
| Sender: "Mike Morse" <mike.morse (AT) micromo (DOT) com
| Subject: New to SQL OLAP
| Date: Tue, 9 Sep 2003 12:15:20 -0700
| Lines: 21
| Message-ID: <0b0f01c37706$b6038920$a001280a (AT) phx (DOT) gbl
| MIME-Version: 1.0
| Content-Type: text/plain;
| charset="iso-8859-1"
| Content-Transfer-Encoding: 7bit
| X-Newsreader: Microsoft CDO for Windows 2000
| X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4910.0300
| Thread-Index: AcN3BrYDLjbSyuriQrm+SGuchE/Zfg==
| Newsgroups: microsoft.public.sqlserver.olap
| Path: cpmsftngxa06.phx.gbl
| Xref: cpmsftngxa06.phx.gbl
microsoft.public.sqlserver.olap:42618
| NNTP-Posting-Host: TK2MSFTNGXA08 10.40.1.160
| X-Tomcat-NG: microsoft.public.sqlserver.olap
|
| I'm going through the OLAP tutorials here and some
things
| aren't making any sense as far as normalization. Why on
| earth you would create a separate "sales fact table"
| instead using the actual table that recorded the sale.
| Then they are linking back to a time table by a
| key!!!!???? This is definately not they way people
design
| for data storage.
|
| Here's my situation:
| I have a SalesOrder Master table which is parent to
| SalesOrderItems which is parent to SalesOrderItemsRels
| (releases). SORels contains how many items have been
| relerease per each SalesOrderItem ordered.
|
| The SalesOrder master is linked pack to customer and
stuff
| like that.
|
| Could anyone give me a push in the right direction here?
| Thanks
|
| -mike
|

.




Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.3
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.