Star schema design, metrics dimension or not.
Hello Guys,
I just heard from one of my colleagues that its wise to
have an "KPI" or "metrics" dimension in my DWH star schema (later used in OBIEE).
Now, we have quite a lot of data 100 000 rows per day (botton leve, non-aggregated, the aggregations are obviously far less then that, lets say 200 rows per day) and
we have build pre-aggregated data marts for each of the 5 very static reports (OBIEE Publisher).
The table structure is very simple
e.g.
Date,County,NumberofCars,RevenuePerCar, ExpensesPerCar, BreakEvenPerCar, CarType
One could exclude the metrics "NumberofCars","RevenuePerCar", "ExpensesPerCar", "BreakEvenPerCar"
and put them into a metrics dimension.
MetricID Metric
1 NumberofCars
2 RevenuePerCar
3 ExpensesPerCar
4 BreakEvenPerCar
and hence the fact table design would be simpler.
Date,County,MetricID,Metric, CarType
Disadvanatages: A join is required
We would have to redesign our tables
tables are not aggregated anymore for specific metric types
if we notice performance is bad, we would need to go back to the old design
Advantages : Should new metrics appear, we dont have to change the design of the tables
its probably best practice
Note: date, country and cartype are already dimensions. we are just missing one to differentiate the metrics/KPI's
So I struggle a bit, what should I do? Redesign, or stick to the way I have done it, having
performance optimization in mind.
Thanks
"Usually the date is stored in sales table or product table.
ut here why they created separate Dimension table for date(Dim_date)? "
You should provide the link.
A good place to start with the basic concepts is :
http://www.ralphkimball.com/
Pick up some of his books and start going through them.
My recommendation would be
The Data Warehouse Toolkit, 2nd Edition: The Complete Guide to Dimensional Modeling
John Wiley & Sons, 2002 (436 pages
Good Luck.,
Similar Messages
-
Help to design Star Schema facts and dimensions
Hi
I have the following summarized table that I need to convert to the star schema.
I am totally confused how to create the dimensions. Any help to start with this will be highly appreciated.
I am in an urgent need of it.
Month
AccountId
Cust_id
City
State
Zip
Zip4
AccountMonthsOnBooks
APR
APY
AccountType
OriginationChannel
RewardType
BankProductType
BranchId
CycleEndDate
CycleStartDate
DaysInCycle
DaysInStatement
DirectDepositLastUseDate
FlagElectronicBilling
FlagOverdrawnThisMonth
FlagOverdrawnThisCycle
FlagPaidOverdraft
NumberofTimesOverdraft
OnlineBankingEnrolledIndicator
OnlineBankingLastUseDate
WebLoginCount
OpenDate
OverdraftAmount
OverdraftCount
OverdraftLastDate
OverdraftProtectionIndicator
OverDraftProtectionSourceType
PaidOverdraftAmount
PaidOverdraftCount
PopulationClassIndicator
ProductId
RewardAccruedAmount
RewardBalance
RewardCurrency
RewardRedeemedAmount
RewardsDateEnrolled
RewardsExpirationAmount
RewardTypeBank
RiskScore
RiskScorePlugged
StatementEndDate
StatementStartDate
SubProductId
BalanceADBAmount
BalanceADBNonSweepNonZBAAmount
CycleBeginningBalance
CycleEndingBalance
MonthBeginningBalance
MonthEndingBalance
StatementBeginningBalance
StatementEndingBalance
NonSystemCreditTotalAmount
NonSystemCreditTotalCount
NonSystemDebitTotalAmount
NonSystemDebitTotalCount
ACHCreditTotalAmount
ACHCreditTotalCount
ACHDebitTotalAmount
ACHDebitTotalCount
ACHPPDBillPayCreditAmount
ACHPPDBillPayCreditCount
ACHPPDBillPayDebitAmount
ACHPPDBillPayDebitCount
ACHPPDPayrollDirectDepositCreditAmount
ACHPPDPayrollDirectDepositCreditCount
ACHPPDPayrollDirectDepositDebitAmount
ACHPPDPayrollDirectDepositDebitCount
ATMCreditAmount
ATMCreditCount
ATMDebitAmount
ATMDebitCount
ATMOffUsCashDepositAmount
ATMOffUsCashDepositCount
ATMOffUsCashWithdrawalAmount
ATMOffUsCashWithdrawalCount
ATMOffUsCheckDepositAmount
ATMOffUsCheckDepositCount
ATMOffUsTransferCreditAmount
ATMOffUsTransferCreditCount
ATMOffUsTransferDebitAmount
ATMOffUsTransferDebitCount
ATMOnUsCashDepositAmount
ATMOnUsCashDepositCount
ATMOnUsCashWithdrawalAmount
ATMOnUsCashWithdrawalCount
ATMOnUsCheckDepositAmount
ATMOnUsCheckDepositCount
ATMOnUsTransferCreditAmount
ATMOnUsTransferCreditCount
ATMOnUsTransferDebitAmount
ATMOnUsTransferDebitCount
BranchCheckDepositAmount
BranchCheckDepositCount
BranchCheckWithdrawalAmount
BranchCheckWithdrawalCount
BranchCreditTotalAmount
BranchCreditTotalCount
BranchDepositAmount
BranchDepositCount
BranchDebitTotalAmount
BranchDebitTotalCount
BranchMiscellaneousCreditAmount
BranchMiscellaneousCreditCount
BranchMiscellaneousDebitAmount
BranchMiscellaneousDebitCount
BranchWithdrawalAmount
BranchWithdrawalCount
BranchTransferCreditAmount
BranchTransferCreditCount
BranchTransferDebitAmount
BranchTransferDebitCount
ChargeOffDebitAmount
ChargeOffDebitCount
CheckCausingOverdraftCreditAmount
CheckCausingOverdraftCreditCount
CheckCausingOverdraftDebitAmount
CheckCausingOverdraftDebitCount
CheckCreditTotalAmount
CheckCreditTotalCount
CheckDebitTotalAmount
CheckDebitTotalCount
CheckReturnedCreditAmount
CheckReturnedCreditCount
CheckReturnedDebitAmount
CheckReturnedDebitCount
CheckStopPaymentCreditAmount
CheckStopPaymentCreditCount
CheckStopPaymentDebitAmount
CheckStopPaymentDebitCount
CreditTotalAmount
CreditTotalCount
DebitTotalAmount
DebitTotalCount
FeeACHBillPayAmount
FeeACHBillPayCount
FeeAnnualAmortizedAmount
FeeAnnualAmount
FeeAnnualCount
FeeATMOffUsAmount
FeeATMOffUsBalanceInquiryAmount
FeeATMOffUsBalanceInquiryCount
FeeATMOffUsCount
FeeATMOffUsTransferAmount
FeeATMOffUsTransferCount
FeeATMOnUsCheckInquiryAmount
FeeATMOnUsCheckInquiryCount
FeeDormantAmount
FeeDormantCount
FeeEarlyWithdrawalAmount
FeeEarlyWithdrawalCount
FeeForeignTransactionAmount
FeeForeignTransactionCount
FeeMonthlyAmount
FeeMonthlyCount
FeeNSFAmount
FeeNSFCount
FeeODPTransferAmount
FeeODPTransferCount
FeeOtherAmount
FeeOtherCount
FeeOverdraftAmount
FeeExtendedOverdraftAmount
FeeOverdraftCount
FeeExtendedOverdraftCount
FeePOSPINPurchaseAmount
FeePOSPINPurchaseCount
FeeReturnedCheckAmount
FeeReturnedCheckCount
FeeStopPaymentAmount
FeeStopPaymentCount
FeeTotalAmount
FeeTotalATMCreditAmount
FeeTotalATMCreditCount
FeeTotalATMDebitAmount
FeeTotalATMDebitCount
FeeTotalNonPenaltyAmount
FeeTotalNonPenaltyCount
FeeTotalPenaltyAmount
FeeTotalPenaltyCount
FeeWaiverACHBillPayAmount
FeeWaiverAnnualAmount
FeeWaiverATMOffUsAmount
FeeWaiverATMOffUsBalanceInquiryAmount
FeeWaiverDormantAmount
FeeWaiverForeignTransactionAmount
FeeWaiverMonthlyAmount
FeeWaiverNSFAmount
FeeWaiverODPTransferAmount
FeeWaiverOtherAmount
FeeWaiverOverdraftAmount
FeeWaiverExtendedOverdraftAmount
FeeWaiverStopPaymentAmount
FeeWaiverTotalAmount
FeeWaiverTotalNonPenaltyAmount
FeeWaiverTotalPenaltyAmount
FeeWaiverWireTransferAmount
FeeWireTransferAmount
FeeWireTransferCount
FraudTransactionAmount
FraudTransactionCount
InterestPaymentCreditAmount
InterestPaymentDebitAmount
InternetTransferCreditAmount
InternetTransferCreditCount
InternetTransferDebitAmount
InternetTransferDebitCount
ODPTransferCreditAmount
ODPTransferCreditCount
ODPTransferDebitAmount
ODPTransferDebitCount
OtherCreditAmount
OtherCreditCount
OtherCreditReversalAmount
OtherDebitAmount
OtherDebitCount
OtherDebitReversalAmount
OtherTransferCreditAmount
OtherTransferCreditCount
OtherTransferDebitAmount
OtherTransferDebitCount
PhoneTransferCreditAmount
PhoneTransferCreditCount
PhoneTransferDebitAmount
PhoneTransferDebitCount
POSSIGForeignCreditAmount
POSSIGForeignCreditCount
POSSIGForeignDebitAmount
POSSIGForeignDebitCount
POSPINCreditTotalAmount
POSPINCreditTotalCount
POSPINDebitTotalAmount
POSPINDebitTotalCount
POSSIGCreditTotalAmount
POSSIGCreditTotalCount
POSSIGDebitTotalAmount
POSSIGDebitTotalCount
ReversalFeeACHBillPayAmount
ReversalFeeEarlyWithdrawalAmount
ReversalFeeForeignTransactionAmount
ReversalFeeMonthlyAmount
ReversalFeeNSFAmount
ReversalFeeODPTransferAmount
ReversalFeeOtherAmount
ReversalFeeOverdraftAmount
ReversalFeeExtendedOverdraftAmount
ReversalFeePOSPINPurchaseAmount
ReversalFeeReturnedCheckAmount
ReversalFeeStopPaymentAmount
ReversalFeeTotalAmount
ReversalFeeTotalNonPenaltyAmount
ReversalFeeTotalPenaltyAmount
ReversalFeeWireTransferAmount
SubstituteCheckDepositAmount
SubstituteCheckDepositCount
SubstituteCheckWithdrawalAmount
SubstituteCheckWithdrawalCount
SystemCreditTotalAmount
SystemCreditTotalCount
SystemDebitTotalAmount
SystemDebitTotalCount
TargetSweepCreditAmount
TargetSweepCreditCount
TargetSweepDebitAmount
TargetSweepDebitCount
WaiverFeeReturnedCheckCount
WireTransferFedCreditAmount
WireTransferFedCreditCount
WireTransferFedDebitAmount
WireTransferFedDebitCount
WireTransferInternalCreditAmount
WireTransferInternalCreditCount
WireTransferInternalDebitAmount
WireTransferInternalDebitCount
WireTransferInternationalCreditAmount
WireTransferInternationalCreditCount
WireTransferInternationalDebitAmount
WireTransferInternationalDebitCount
ZBACreditAmount
ZBACreditCount
ZBADebitAmount
ZBADebitCount
AllocatedEquityAmount
CapitalCharge
ContraExpenseCreditLossRecoveryAmount
ContraExpenseFraudRecoveryAmount
EquityCreditAmount
ExpenseCorporateTaxAmount
ExpenseCreditLossWriteOffAmount
ExpenseDepositInsuranceAmount
ExpenseFraudWriteOffAmount
ExpenseMarketingAmount
ExpenseNetworkFeesAmount
ExpenseOperatingAmount
ExpenseOriginationAmortizedAmount
ExpenseOtherAmount
ExpenseTotalAmount
RevenueInterchangeTotalAmount
RevenuePINInterchangeAmount
RevenueSIGInterchangeAmount
RevenueInterestAmount
RevenueOtherAmount
RevenueNetIncomeAmount
RevenuePreTaxIncomeAmount
RevenueTotalAmount
StatusCode
ClosedCode
ClosedDateuser13407709 wrote:
I have the following summarized table that I need to convert to the star schema.
I am totally confused how to create the dimensions. Any help to start with this will be highly appreciated. The first step should be to tell whoever gave you this task that you have no idea what you are doing and set their expectations accordingly.
I am in an urgent need of it.Then it would no longer be urgent and you would have the time to read and learn this.
http://download.oracle.com/docs/cd/E11882_01/server.112/e16579/toc.htm -
Using two facts of two different star schemas and conformed dimensions
Hi,
I've been working as developer and database designer for years and I'm new to Business Objects. Some people says you can not use two facts of two different star schemas in the same query because of conformed dimensions and loop problems in BO.
For example I have a CUSTOMER_SALE_fACT table containing customer_id and date_id as FK, and some other business metrics about sales. And there is another fact table CUSTOMER_CAMPAIGN_FACT which also contains customer_id and date_id as FK, and some other business metrics about customer campaigns. SO I have two stars like below:
DIM_TIME -- SALE_FACT -- DIM_CUSTOMER
DIM_TIME -- CAMPAIGN_FACT -- DIM_CUSTOMER
Business metrics are loaded into fact tables and facts can be used together along conformed dimensions . This is one of the fundamentals of the dimensional modeling. Is it really impossible to use SALE_FACT and CAMPAIGN_FACT together? If the answer is No, what is the solution?
Saying "you cannot do that because of loops" is very interesting.
Thank you..When you join two facts together with a common dimension you have created what is called a "chasm trap" which leads to invalid results because of the way SQL is processed. The query rows are first retrieved and then aggregated. Since sales fact and campaign fact have no direct relationship, the rows coming from either side can end up as a product join.
Suppose a customer has 3 sales fact rows and 2 campaign fact rows. The result set will have six rows before any aggregation is performed. That would mean that sales measures are doubled and campaign measures are tripled.
You can report on them together, using multiple SQL passes, but you can't query them together. Does that distinction make sense? -
Hi,
I know that in classical star schema the dimension tables sits within the info cube and so we cannot use this dimension table in any other cube we need to have separate dimension table for that cube thought it might be having same data. I also know to over come this redundancy extended star schema came into picture where we have SID table and we keep the dimension table out of the cube and reuse the dimension tables across many cubes.
Now what i don't understand is that instead of having Separate SID tables for linking the dimension and fact tables why cant we make the DIMENSION table generic and keep them out of the infocube so that we can same the same dimension table for many infocube in this case we wont need SID tables.
suppose i have one info cube which has dimension vendor material and customer and its keyfigure is quantity and price and i have a separate infocube which has dimesnion material customer and location and its key figure is something else ......so here in why cant i keep the dimensions out of the infocube and use the dimension material customer for both infocube.Your dimension tables are filled based on your transaction data - which is why dimension table design is very important you decide to group related data for the incoming transaction data into your dimension tables .
The dimension tables have SIDs which in turn point to master data = in the classic star schema - the dimension tables are outside the cube but the dim tables have the master data within them whhich is overcome using the extended star schema.
The reason why dimension tables can be reused is that the dim IDs and SIDs in the simension table correspond to the transaction data in the cube - and unless the dim IDs in both your cubes match you cannot reuse the dim tables - which means that you have exactly the same data in both the cubes - which means you need not have two cubes with the same data.
Example :
Cube 1 : Fact Table
Dim1ID | DIM2ID | KF1
1|01|100
2|02|200
Dimension Table : Dim 1 ( Assumin that there are 2 characteristics in this dimension ) - here the DIM1ID is Key
Dim1ID | SID1 | SID2
1|20|25
2|30|35
Dimension Table Dim 2 - Here the Dim2ID field is key
Dim2ID| SID1 | SID2| SID3
01| 30| 45
02|45|40
Here the Dim IDs for the cube Fact table are generated at the time of load and this is generated from the NRIV Table ( read material on Number Ranges ) - this meanns that you cannot control DIM ID generation across cubes which means that you cannot reuse Dimension Tables -
Hi,
What are the factors or the things that we should consider while designing star schema ?
Thanks
VaishaliVaishali,
The major things to be considered while designing start could be ..
1. Proper maintenance of Master data which will be shared across all the infocubes.
2. Deciding upon dimensions. Which characteristics should be assigned to which dimension? Try to reduce the number of dimensions.
3. Design deimensions based upon the characteristic relation 1:M...
4. If the char has more no of values for eg, document number which come in huge volumes to BW that can be designed as Line item dimension instead of assigning it to a dimension.....
Hope this helps you..... -
Download Dimensional Modeling Book (Star Schema Design Book)
Hello Friends,
You can download an IBM Book on Dimensional Modeling from the following
link:
http://www.redbooks.ibm.com/abstracts/sg247138.html?Open
This is an excellent IBM Redbook on Data warehouse design and
Dimensional Modeling design.
Great to read,
DaveDear Krish,
Please try this link and let me know if you can open.If not I will email you the Book:
http://www.redbooks.ibm.com/abstracts/sg247138.html?Open
My Email is [email protected]
Thanks
Dave -
Download IBM Book on Star Schema Design (Dimensional Modeling)
Hello Friends,
You can download an IBM Book on Dimensional Modeling from the following link:
http://www.redbooks.ibm.com/redbooks.nsf/e9abd4a2a3406a7f852569de005c909f/e235dc46161249d38525703e00036135?OpenDocument
The Book is very well explained.Dear Krish,
Please try this link and let me know if you can open.If not I will email you the Book:
http://www.redbooks.ibm.com/abstracts/sg247138.html?Open
My Email is [email protected]
Thanks
Dave -
Hi!
I`m trying to build a dw with patient data. I`m mostly interested in the patients` visits table, which will be used for a facts table and the patient table.
The patient table contains among others the following data:
patient (id, sex, marital_status, nationality, profession, zip).
My question is what should I do with the "patient" table. There seem to be three options:
1. Use it to build a one level dimension and just use the above fields as simple dimension attributes.
2. Create separate hierarchies for each attribute in the patient dimension
(e.g. patient -> sex, patient -> nationality, patient -> zip -> city e.t.c.)
3. Create separate dimensions for each attribute (e.g. a professions dimensions which will be joined with the patient visits facts table) and no patient dimension.
What would you do?
Thank you...I guess my answer would be based on how you intend to physically implement. If you are deploying this relationally, then I would definitely have a single patient dimension table. Perhaps build a hierarchy for patient -> zip -> city, but I'd keep gender and nationality as simple "attributes" of the dimension.
If you're going to deploy this through an OLAP cube, its a bit more complex, because the standard Oracle OLAP functionality makes it impossible to do sums over attributes unless they are part of the hierarchy. In that case, I guess I'd deploy multiple dimensions (geneder, nationality, one a generic patient one that includes the hierarchy patient -> zip -> city).
If you attempt to do your option #2, you'll be in trouble if you need to show queries that cross the hierarchies, i.e. "Male American patients who live in zip code 12345".
Hope this helps,
Scott
p.s. you could also deploy this relationally, and then put an AW on top of the relational model. -
How you we design and create a star schema in Oracle BI?
We can use Informatica to generate ETL. But how do we design the star-schema?? Is there a design tool like Oracle Designer??
What is the purpose of the DAC??Hi,
You can handle the star schema design in the BMM layer. No separate tool for that.
Refer-
http://gerardnico.com/wiki/data_modeling/star_schema
DAC-
Data Warehouse Application Console (DAC) works together with Informatica to acomplish the ETL for pre-packaged BI application.
- DAC publish the changes from OLTP
- Informatica extracts the changes from the change log published by DAC as well as from the base table
- Informatica load the data to the stage tables and the target tables in the data warehouse
- DAC manage the performance by dropping indexes, truncating stage tables, rebuilding the indexes, and analyzing the tables during the process
If you do not use DAC, you have to write your own custom change capture process and need to redesign from scratch an ETL method that allow the restart of the ETL process from point of failure at record level. The biggest saving is that DAC can survive during the upgrade , while your custom processes cannot.
Refer-
http://obieetraining11.blogspot.in/2012/06/how-to-use-dac-source-system-parameter.html
Hope this helped/ answered.
Regards
MuRam
Edited by: MuRam on Jun 25, 2012 2:37 AM -
Hi
Right now I'm trying to implement SAP HR Infotypes into SAP BW. I try to combine 10 infotypes (all Personal Administration) into one infocube. The confusing one is that when I see my dimension, there something strange (please see below)
Dimension 1 (from PA0016)
ZDATEFROM16
ZDATETO16
ZXXX (60 character, don't have master date attribute or text)
ZYYY (30 character, don't have master date attribute or text)
ZAAA(3 character, only master data text)
Dimension 2 (from PA0023)
ZDATEFROM23
ZDATETO23
ZCCC (60 character, don't have master date attribute or text)
ZBBB (30 character, don't have master date attribute or text)
ZDDD (20 character, don't have master date attribute or text)
If i see my dimension, it seems strange because most of them don't have master data (text,attr,hierarchy).
Is this violate the extended star schema design? Thank you.
Regards,
SatriaYou can use characteristics such as ZXXX without master data (text, attr, hier) in extended star schema. It is not a violation. This means in business, for this characteristic you really don't need its text, attribute or hierarchy.
When perform data modeling for you HR cube, please do consider the design, can some characteristic be attribute of another one? Will you use hierarchy such organization level for some characteristic? characteristic with text, attribute or hierachy can provide more flexibility in reporting. -
Hi ALL,
Fact table --- Dimension table -
Sid Table -- master data values.
Fact table:
Contains Key Figures and Dimensional id's
Dimension table:
Contains Dim Id & SID
SID table:
SID and Master object ID ( eg: Customer ID)
Master Data Table:
contains Customer Attributes , Texts , Hierarchies for that Customer ID.
THis is the Extended Star Schema design.
MY DOUBT:
1)In Dimension table itself if we place that Customer ID(No SID table next) what will happen?
Fact table --> Dimension table --> Master data Table
2)Instead of that SID table we can directly place that CustomerID in Dimension table , so we can reduce one layer inbetween Dimendion table and Master data table.Is it correct or not?
Any one can clarify my doubt.
Regards,
Arun.M.DSID means 'surrogate ID'. That is an system created id as you know. Main purpose is fastening the search.
Mostly, there exists a rule for Customer or Material ID's.
Like it should be CHAR 10 or CHAR 16.
This kind of alpha-numeric fields are harder to search when compared to integers. Moreover, your customer id can be 10 digits but, this does not mean you will have 1000000000 customers. This is the main reason that, an internal ID is produced. If you have 10000 customers, your SID will be at most 10000.
However, if your customer ID's are starting from 1 and growing up like integers, then your argument would be true. ( but still no way to skip SID creation and direct usage of characteristic ID in fact table)
Also, as mentioned by other friends, there exist the Line Item dimension property if you have only one characteristic in one dimension. That simply does skip the DIM ID creation step, and puts your SID into the Fact table. ( Since you have only one char in the dimension, no combination is possible)
Hope this helps.
Derya -
Star Schema and Oracle 11gR2 ?
Star Schema and Oracle 11gR2 ?
I know the star schema (ROLAP) and implemented couple of them. Apart from general design principle of dimension, FACT, surrogate key etc, what are the specific items needed in Oracle 11gR2?
Some one talked about over 10 conditions/pre-requisits for Star Schema (ROLAP) implementations in Oracle 11gR2. I did some search, but I did not get any hits.
Do we design Star schema (ROLAP) differently in Oracle 11gR2?
Any pointer welcome.
Thanks in helping.Hi,
from my experience there are no specific requirements for the star schema design when using owb 11.2.
When using the OWB ETL Option (extra license required), one may use the owb dimensions and cubes.
These make mapping development easier, since support for SCD2 is built into the dimension operators. Loading the cube is simplified because the lookup of the surrogate key from the dimension is built into the cube operator.
These owb objects will deploy specific dimension and fact tables. If you already have existing ones, you must modify them manually.
I implemented several projects without these advanced features. Baiscally I did the same in OWB what I would have done using hand-coded SQL and PL/SQL. And it worked just fine.
If you find those 10 conditions, please post them here. I'm curious to learn about them!
Regards,
Carsten. -
Star schema without a fact table?
Hi,
I'm preparing my warehouse for using with Discoverer and my question is about the star schema.
- Is a star schema directly associated with data warehouse?
- Can I talk about a star schema if a) I do not have a fact table (no summarized values) and b) if I do not have a dimension of time?
The problem is, I'm thinking of usine Discoverer but should I use it if it's not connected to a data warehouse?
As I told, I'd like to modelized my data "like" a star schema but my "center table" will contain only the foreign key of my dimensions; no time dimensions, no aggregate data in the center table (fact table).
Is there another word for the model I'd like to do?
Thank in advance.Hi,
Is a star schema directly associated with data warehouse?Not really, a star schema is just one where there is one large fact table joined to many smaller dimension tables using key fields. You usually see this in data warehouses.
Can I talk about a star schema if a) I do not have a fact table (no summarized values) and b) if I do not have a dimension of time?A star schema must have a fact table but it doesn't need contain summarised values or a time dimension.
You can use Discoverer with any Oracle database, it doesn't have to be a data warehouse.
Rod West -
No query rewriting in a star schema
Gentlemen,
I am facing a problem with query rewriting in a simple data warehouse star schema. I want to take advantage of the built-in roll up along dimensions of a star schema. Therefore, I created several DIMENSIONs and made sure that all foreign key/primary key relationships between fact and dimension tables are set up correctly. In addition, as many table attributes as possible are assigned the NOT NULL constraint, especially the ones that are used by the CHILD Of and ATTRIBUTE relationships.
I defined materialized views on the fact table and a couple of dimension tables to report on aggregated data. All the MVIEWs are enabled for query rewriting and I have the initialization parameter set correctly (QUERY_REWRITE_INTEGRITY is set to TRUSTED).
From my tests I learned that a query is rewritten correctly only of the corresponding MVIEW contains the fact table and one dimension table. This is true for every dimension I created. However, as soon as the MVIEW joins more than one dimension table to the fact table the rewriting mechanism fails. It appears that the roll-up (aggregation along the hierarchy) is only possible for one of the dimensions. If the original query suggests rolling-up more than one dimension (e.g., "summarize the key figures by year and product category" but the underlying dimension is based on month and product), the MVIEW is no longer rewritten at all.
Do you know this effect from your work experience? Is this a bug or have I made a mistake or forgotten to switch on a special feature?
Here are some technical data of our data warehouse: we are running an Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 on a Windows Server 2003, the size of the database is about 10 GB (excluding indexes), the star schema contains ten dimension tables each one with a simple or parallel hierarchies (e.g. a product dimension). The fact table and the MVIEWS are partitioned by month.
Any help is very welcome.
Regards,
JohnHi,
you may ask with DBMS_MVIEW why your query does not get rewritten:
Maybe you have to create a util table first with
SQL> @?/rdbms/admin/utlxrw.sql
Then you ask:
SQL> begin
DBMS_MVIEW.EXPLAIN_REWRITE('<your query without ; at the end>');
end;
The reason why it is not rewritten:
SQL> select message from rewrite_table order by sequence;
Kind regards
Uwe -
1. It's a prerequisite to use a star schema to build a EUL or I can/ must used a Relational Schema?
2. The OLAP Option of Discoverer Plus work with an EUL or with a star schema
3. Which components requiere the OLAP option that don't require the Relational Option (i.e. AW) ?
4 I can generate a star schema as: a) a simple relational model where the FK key is a common domain for the fact and dimension table (i.e. Dept. Number) and having a table for each dimension (I don't speaking about time dimensions, but fields like barnch, dept., etc,). b) a star schema where the dimensions are grouped in tables depending on its significance (i.e. Producto, Channels, Time, etc). In this case I'll use a auto-generated sequential number as key for each table record, wich is referenced in the fact table. The question is, which is, in general, the best strategy 1.a ot 1.b. It depends of the size of the database?
5. There is two bussines areas wich need the same information, but one of them, will used always a summarized version whit 60000 records (the other one will process more than 1000000 each time). No doubts in using two distincts set of tables to generate two distincts EULs or Star Schemas, in order to gain in performance?This is a more suitable question for the Business Intelligence (EBS).
In the mean time, you may want to check the BI OBE: http://www.oracle.com/technology/obe/obe_bi/bi.html , as well as http://www.oracle.com/technology/products/bi/index.html, http://www.oracle.com/technology/documentation/bi_doc.html
~ Madrid.
Maybe you are looking for
-
so I bought a new Iphone and I've had Itunes on my computer for years but the email i used when setting up my original account no longers exists. So I have no way of acessing it. When I bought my phone i put in my current email and I verified it. I c
-
Red desktop on second monitor problem
Hi,im having a strange issue with a cinema hd display set up as a second monitor on an imac, its showing the desktop fine but its all red coloured. If i connect a 17" hanns g monitor using the dvi its fine but if i connect an lg monitor that shows up
-
Hi, My client buys steel in Kgs and Numbers, but wants to sell the same in numbers only. How to do this procedure?
-
Scheduled GridControl jobs get not executed
Hello, I have a really strange behaviour lately with the GridControl jobs: We have several GridControl jobs which are scheduled (e.g. from monday til friday at 05:00 am). In usual, they get executed at the scheduled time. But some of them don't get e
-
Nape + "-useLegacyAOT no" doesn't work?
I got this error when try to compile: Error occurred while packaging the application: 0 compile-abc 0x00960428 PrintStackTrace(void*) + 40 1 compile-abc 0x009608a1 SignalHandler(int) + 449 2 libsystem_platform.dylib 0x9a9