Robert L. Stewart
robert at webedb.com
Fri Sep 28 09:05:34 CDT 2007
Max, What you would normally have is an ETL (Extract-Transform-Load) process that would get the data from the transactional system and load it into the mart/warehouse. The data is usually transformed in some way. In the dimension tables, all of the associated tables to the main dimension are used to feed in the additional de-normalized data into the single dimension table. If you do not do this, it is called snowflaking. And, this causes poor performance from the mart/warehouse. Marts/warehouses are not designed for efficient data storage. They are designed for the most effective reporting possible. In some cases, summarizing years of data into a few thousand records. No data entry would ever be done to the mart/warehouse tables. They are always loaded via the ETL processes defined as part of the overall strategy the business wants to use for reporting. I am also glad that I was able to explain it so that you were able to get the concepts. It is usually difficult for "transactional" people to get the concepts of a true star schema design. And they almost always want to build snowflake schemas instead of true stars. Robert At 08:42 AM 9/28/2007, you wrote: >Date: Fri, 28 Sep 2007 13:41:35 +0100 >From: <max.wanadoo at gmail.com> >Subject: Re: [AccessD] Mucking around >To: "'Access Developers discussion and problem solving'" > <accessd at databaseadvisors.com> >Message-ID: <011c01c801cc$e8a717c0$8119fea9 at LTVM> >Content-Type: text/plain; charset="us-ascii" > > >Hi Robert, >Believe it or not, I can actually understand it the way you described it. >So, using your example, the sales would feed into the Fact Table and Reports >would be run on the Fact table and pull info from the Customer Table. Is >this correct? >Am I also correct in saying that this schema is highly inefficient in terms >of data storage but highly efficient in terms of speed of reports? > >Ta > >Max