In the same figure
we depict the h-surrogate value for the leaf-value ???storeC.??? Note that an h-surrogate
conveys all the hierarchical semantics (i.e., the genealogy) of a specific value.
Moreover it is indeed an alternate key, since it determines all hierarchical attributes,
which in turn functionally determine all feature attributes. Note also that leaf-values
under the same parent have a common h-surrogate prefix. For example the prefix
???0.1??? in Figure 2(b) is the same for the two stores in ???AreaB??? and the prefix ???0.??? is
common to all stores in ???RegionA.??? We use the notation hsk:L to refer to the prefix
of the h-surrogate that corresponds to the level L of the hierarchy.
Figure 2. (a) The schema of the data warehouse enhanced with h-surrogates; (b)
each value of a hierarchical attribute is assigned an order-code, which preserves
hierarchical proximity.
Note: An h-surrogate is essentially a path of order-codes in the hierarchy tree.
Customer_ d (FK)
Product_ d (FK)
Store_id (FK)
Day (FK)
______________
Cust_hsk (FK)
Prod_hsk (FK)
Loc_hsk (FK)
Date_hsk (FK)
______________
sales
SALES_FACT
Customer_ d
Profession
Name
Address
______________
Cust_hsk
CUSTOMER
Day
Month
Year
______________
Date_hsk
DATE
Item_ d
Class
Category
Brand
______________
Prod_hsk
PRODUCT
Store_id
Area
Region
Populat on
______________
Loc_hsk
LOCATION
(a) (b)
RegionA
(0)
AreaA
(0)
AreaB
( )
storeA
(0)
storeB
( )
storeC
( )
storeD
( )
hsk(storeC)= 0.
Pages:
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283