You are on page 1of 60

1

ORDER MANAGEMENT
Chapter 5
Agenda
Introduction to Order Management
Order Transactions
2
Order Transactions
Invoice Transactions
Accumulating Snapshot for the Order Fulfillment
Pipeline
Fact Table Comparison
Implementing
In the Real World In the Real World
Techniques
Summary
Introduction to Order Management
Order management comprised of a series of
business process
3
business process
A subset of the data warehouse bus matrix
Order Transactions
4
Order Transactions
Order Transactions
The natural granularity for an order transaction fact
table is one row for each line item on an order.
5
table is one row for each line item on an order.
Example of result schema
Order Transactions
Fact Normalization
Dimension Role-Playing
6
Dimension Role-Playing
Product Dimension Revisited
Customer Ship-To Dimension
Deal Dimension
Degenerate Dimension for Order Number
Junk Dimensions Junk Dimensions
Multiple Currencies
Header and Line Item Facts with Different Granularity
Fact Normalization
Fact Normalization : A single, generic fact amount,
along with a dimension that identifies the type of
7
along with a dimension that identifies the type of
fact
Use Fact Normalization when
Set of facts is sparsely populated for a given fact row.
No computations are made between facts.
We generally resist the urge to further normalize We generally resist the urge to further normalize
the fact table
Dimension Role-Playing
Role-Playing : occurs when a single dimension
simultaneously appears several times in the same
8
simultaneously appears several times in the same
fact table.
Date dimension is found in every fact table because
we are always looking at performance over time.
Dimension Role-Playing
Example of Role-playing
9
Time Time
Request
Date
Request
Date
Order
Date
Order
Date
Assembly
Date
Assembly
Date
Time
Dimension
Time
Dimension
Ship
Date
Ship
Date
Arrival
Date
Arrival
Date
Product Dimension Revisited
Product dimension describes the complete portfolio of
products sold by a company.
10
products sold by a company.
Characteristics of Product dimension
1. Numerous verbose descriptive columns.
2. One or more attribute hierarchies in addition to many
nonhierarchical attributes.
3. Add readable text strings to augment or replace numeric
codes in the operational product master. codes in the operational product master.
4. Quality assure all the text strings to ensure that there are
no misspellings, impossible values, or cosmetically
different versions of the same attribute.
5. Document the product attribute definitions, interpretations,
and origins in the data warehouses metadata.
Customer Ship-To Dimension
The customer ship-to dimension contains one row for
each discrete location to which we ship a product.
11
each discrete location to which we ship a product.
Common hierarchy is natural geographic,
customers organizational.
Country
Region
Bills number
Customer Name
Region
Province
Address
Customer Name
Customer Organization Name
Customer Corporate Parent
Name
Customer Ship-To Dimension
Factors must be taken into consideration:
1. The one-to-one or many-to-one relationship may turn
12
1. The one-to-one or many-to-one relationship may turn
out to be a many-to-many relationship.
2. If the relationship between sales rep and customer
ship-to varies over time then the combined dimension
is in reality some kind of fact table itself!
3. If the sales rep and customer ship-to dimensions 3. If the sales rep and customer ship-to dimensions
participate independently in other business process
fact tables, wed likely keep the dimensions separate.
Customer Ship-To Dimension
Example of Customer Ship-To Dimension
13
Deal Dimension
Deal dimension describes the incentives that have
been offered to the customer that theoretically
14
been offered to the customer that theoretically
affect the customers desire to purchase products.
Deal dimension describes
the full combination of terms
Allowance
Incentives Incentives
Deal Dimension
Deal Dimension Design
1. If the terms, allowances, and incentives are
15
1. If the terms, allowances, and incentives are
correlated, then package them into a single deal
dimension.
2. If the terms, allowances, and incentives are quite
uncorrelated, then split such a deal dimension into its
separate components.
3. In a very large fact table, the desire to reduce the 3. In a very large fact table, the desire to reduce the
number of keys in the fact table composite key would
favor keeping the deal dimension as a single
dimension.
Deal Dimension
Example of Deal Dimension
16
Degenerate Dimension
for Order Number
Degenerate dimensions typically are reserved for
operational transaction identifiers.
17
operational transaction identifiers.
Each line item row in the orders fact table includes
the order number as a degenerate dimension.
Useful of Degenerate Dimension for Order Number
allows us to group the separate line items on the order.
enables us to answer such questions as the average
number of line items on an order.
is used occasionally to link the data warehouse back to
the operational world.
Junk Dimension
Why have junk dimension
Leave flags and indicators unchanged in the fact table
18
Leave flags and indicators unchanged in the fact table
row
Make each flag, indicator into its own separate
dimension.
Strip out all the flags and indicators from the design.
A junk dimension is a convenient grouping of A junk dimension is a convenient grouping of
typically low-cardinality flags and indicators.
Junk Dimension
Sample rows of an order indicator junk dimension
19
Multiple Currencies
Multiple Currencies : Expressed in both local
currency and the standardized corporate currency.
20
currency and the standardized corporate currency.
The conversion rate table contains all combinations
of effective currency exchange rates going in both
directions.
Multiple Currencies
Track multiple currencies with a daily currency
exchange fact table.
21
exchange fact table.
Header and Line Item Facts with
Different Granularity
Shouldnt mix fact granularities (for example, order
and order line facts) within a single fact table.
22
and order line facts) within a single fact table.
Allocating header facts to the line item.
Invoice Transactions
23
Invoice Transactions
Invoice Transactions
Occurs when products are shipped from our facility
to the customer
24
to the customer
Each items corresponding to a product being
shipped
Various prices, discounts, and allowances are
associated with each line item
Invoice Transactions
25
Invoice Transactions
From invoice fact table we can see
All companys products
26
All companys products
All customers
All contract and deals
All off-invoice discounts and allowances
All revenue
All variable and fixed costs (manufacturing, delivering) All variable and fixed costs (manufacturing, delivering)
All money left over after delivery of product
Customer satisfaction metrics
The optimal place to start a DW
Accumulating Snapshot
27
for the Order Fulfillment Pipeline
Accumulating Snapshot
Accumulating Snapshot for
the Order Fulfillment Pipeline
Useful when we want to better understand how
quickly products move through pipeline
28
quickly products move through pipeline
Order Fulfillment Pipeline Diagram
Accumulating Snapshot for
the Order Fulfillment Pipeline
29
Accumulating Snapshot for
the Order Fulfillment Pipeline
30
Accumulating Snapshot for
the Order Fulfillment Pipeline
Typically have multiple dates representing major
milestones of the process
31
milestones of the process
Useful when the products moving through the
pipeline is uniquely identified
Electronics equipment with a serial number
Automobile with a vehicle ID number
Fits most naturally with short-lived processes Fits most naturally with short-lived processes
Lag calculations
Fact Table Comparison
32
Fact Table Comparison
Fact Table Comparison
33
Designing Real-Time Partitions
34
Designing Real-Time Partitions
Designing Real-Time Partitions
DW extend its existing historical time series
seamlessly to the current instant
35
seamlessly to the current instant
Separated physically and administratively from the
conventional static DW tables
Requirements
Contain all the activity occurred since the last update
Link as seamlessly as possible to the grain and content
Be so lightly indexed that incoming data can be
continuously dribbled in
Implementing
36
Implementing
Business Process
37
Order management process : :uvera rauvr
rra:n..a r u:aue|u.reaev rra:n..a r u:aue|u.reaev
ur eraevr
u:aue vr
.eeevr
Business Process (.a)
38
eu.av'rar
uvr.:erarvevra:n..a . .ooo sr:o : uvr.:erarvevra:n..a . .ooo sr:o :
.:ao-era.r ara:n ..au.roo uvr..:eu:au.r auo
v:ovr:o :
.vv.:.ee-er. vo co |e.:. ee-r.e .rvv .. a.:e
-eau'e
.nar: a :ne.:v.v.:. e.:e:.aev:euea..rvv .nar: a :ne.:v.v.:. e.:e:.aev:euea..rvv
':.e.:e:.aev:euevr.. e:rv
Fact Table
39
Invoice Fact
Order Fact Order Fact
Order Fulfillment Accumulating Fact
Order Line Item Fact
Parts Ordering Fact
Conversion Fact Conversion Fact
Cube
40
Invoice
Order Order
Order Line Item
Parts Ordering
In the Real World
41
In the Real World
DELL Data Warehouse
42
DELL Data Warehouse(DDW) is a global information
management system that stores data pulled directly
from Dells Regional Order Management and Service
management system that stores data pulled directly
from Dells Regional Order Management and Service
Systems.
Order Data is available for the US, Latin America, Canada,
Europe, Asia Pacific and Japan. Its upload daily with the
previous days activity.
of the order in the order lifecycle. The DW provides
information for all order statuses and order types to the
item level.
information for all order statuses and order types to the
item level.
Order Status indicates the position
Order Type indicates how revenue and cost associated with
the order will be treated for accounting purposes.
Dell Lifecycle of an Order
43
Every order at Dell goes through the following
stages shown below : stages shown below :
Techniques
44
Techniques
Join a
Join ea.r'e
|e':.a.r v SQL .a'e
45
|e':.a.r v SQL .a'e
r.ra:ar a Merge Join
tr
. a.ra:erea.r .:
: Join v.:rae:vr.:r
Join av Join av
.vv.e:e-ve'e.e
.:-r e.uv Join Key
.e:.arae :v e.uv.a.n.
Join a (. a)
46
Join a (. a)
47
.r v Script Generator e-u Time
Dimension env C#
.nau:|rvvr.e:e
v .revrv'
48
v .revrv'
v Time Dimension (e.:
'::ra:evv vv Fact
Table .:)
r.ra:a Script
Generator (.rr.ev Generator (.rr.ev
.eu.)
.r v Script Generator e-u Time
Dimension env C# (.a)
49
e-unv C# -rev
.r'u-vera..u.a.n. .rv dates .r'u-vera..u.a.n. .rv dates
e datesBuffer.AddRow() av
.vv-ver-.a.ru . .:vra: ee .-.e
.r v Script Generator e-u Time
Dimension env C# (.a)
50
.r v Script Generator e-u Time
Dimension env C# (.a)
51
DateTime StartDate = new DateTime(2009, 6, 1);
DateTime EndDate = DateTime.Now; DateTime EndDate = DateTime.Now;
DateTime RunningDate = StartDate;
while (RunningDate <= EndDate) {
DatesBuffer.AddRow();
DatesBuffer.TheDate = RunningDate;
DatesBuffer.DateOfMonth = RunningDate.Day;
DatesBuffer.Month = RunningDate.Month;
DatesBuffer.Quarter = RunningDate.Month / 4 + 1;
DatesBuffer.Year = RunningDate.Year; DatesBuffer.Year = RunningDate.Year;
RunningDate = RunningDate.AddDays(1);
}
eva
52
r|u.: SQL Server 2008 Report Builder 2.0
ev|-ee'e n..u'r. ra':|rran. ev|-ee'e n..u'r. ra':|rran.
-e.e'nev.e .re:eeneer .a:u:au
.uv.-an'e veve:.e ue Cube
eva (.a)
53
Summary
54
Summary
Summary
Context of the order management process
Dimension role-playing
55
Dimension role-playing
Multiple currencies
Common challenges in modeling orders data
Summary
Facts at different levels if granularity
Set of facts associated with invoice transactions
56
Set of facts associated with invoice transactions
Power of accumulating snapshot fact tables
Differences between the three fundamental types
of fact tables
Designing Real-Time Partitions Designing Real-Time Partitions
Members
+accac. ve;. .ev..er
+acca+. v.|. .uvvvr
57
+acca+. v.|. .uvvvr
+acca. v..v_v. .e.v
+ac+++ vnr. a:mveee
+ac++c. vnr n:
:uvrv
58
1. rvu- .e:.va-r.ra
2. u:r: aa.uu Business Process vra:e OLTP 2. u:r: aa.uu Business Process vra:e OLTP
3. u:r: aa.uu Dimension .e: Fact Table
4. ..:ra:e-vra:e OLTP
5. evra: e OLTP
6. e Dimension Table
7. e Fact Table
e Cube 8. e Cube
9. -ra:eravr.ra
10. r Slide Presentation
.u-vr
59
rvu- .e:.va-r.ra
u:r: aa.uu Business Process vra:e OLTP u:r: aa.uu Business Process vra:e OLTP
u:r: aa.uu Dimension .e: Fact Table
..:ra:e-vra:e OLTP
e Dimension
Table
|-ee Fact Table
e Fact Table
e Dimension
e Dimension
Table
|-ee Dimension
|-ee Dimension
Table
|-ee Dimension
Table
-ra:eravr
.ra
.|. ..v_v. nr. nr ;.
|-ee Fact Table
e Cube
e Dimension
Table
|-ee Dimension
Table
|-ee Fact Table
r Slide
Presentation
.ra
r Slide
Presentation
Questions and Answers
60
Questions and Answers

You might also like