In
http://www-1.ibm.com/partnerworld/pw...st_052504.html
the writer says (page 50, Multidimensional Clustering Advisor):
"
The MDC Advisor feature of the DB2 Design Advisor recommends MDC
clustering dimensions, including coarsification on base colums in
order to improve workload performance
->This includes potentially recommending generated colums that
define coarsification of dismensions.
"
I will not discuss the neede of coarsification on itself. But if for
global performance/throughput a MDC is better not to be maintained,
then the answer to coarsification is row-value constructor with index
exploitation, a SQL-92 approach.
Coarsification with generated columns:
- adds storage overhead
- is artificial
- is not detected by programming interfaces as a special
column that needs to be treated on a special manner
- programmers will use the generated column directly
The designers of SQL-92 defined the row-value constructor because
there is a need.
The writer of the presentation confirms it.
Conclusion: in DB2 UDB (LUW) the optimizer decides about a query
handling, DB2 UDB programmers need full row-value constructur
implementation in DB2 UDB to close the semantic gap between what they
need to express and what the optimizer can understand.
Bernard Dhooghe