Q

The relationship between dimensions

My question is about relationships between dimensions. Let's say we have the following dimensions: customer, campaign and order. The campaign is a source of traffic, like referrer URL. When the customer signs up for the site, we register his referreral campaign id. Customer purchase is associated with some campaign as well. The campaign dimension has about 50 attributes. I don't want to roll campaign dimension with customer. Is a foreign key from the campaign to customer dimension a good idea?

Seems like you have pressed the campaign dimension into "multi-duty". On the one hand, During sign up, you are

tracking the referral (what was the influence that attracted the customer and/or got the customer to register). On the other hand, you are tracking whether promotional campaigns were taken advantage of by the customer when an order was placed/purchase was made.

When a customer signs up, does the "referral campaign" also get associated to any orders placed? Seems like the referral is an attribute of the customer registration event. Can a customer register more than one time? If so, maybe you need an event fact? If not, perhaps the referral should be an attribute about the customer. If you are managing campaigns for different intended reasons (generating registrations vs. generating sales), perhaps you have two different campaign dimensions? If that is not reasonable for your business, I am not seeing anything particularly "bad" about carrying a foreign key from customer to campaign.

Hope this helps you in your design.

For More Information


This was first published in February 2004

Dig deeper on Oracle database design and architecture

Pro+

Features

Enjoy the benefits of Pro+ membership, learn more and join.

Have a question for an expert?

Please add a title for your question

Get answers from a TechTarget expert on whatever's puzzling you.

You will be able to add details on the next page.

0 comments

Oldest 

Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to:

SearchDataManagement

SearchBusinessAnalytics

SearchSAP

SearchSQLServer

TheServerSide

SearchDataCenter

SearchContentManagement

SearchFinancialApplications

Close