Database Reference
In-Depth Information
Grouping
First of all, let's consider why we might want to group members on a large attribute
hierarchy. Some dimensions are not only very large—there are a lot of rows in the
dimension table—but they are also very flat, so they have very few attributes on
them that are related to each other and have very few natural hierarchies. We might
have a Customer dimension with millions of individual customers on it, and we
might also have City and Country attributes, but even then it might be the case that
for a large city, a user might drill down and see hundreds or thousands of customers.
In this situation, a user looking for an individual customer might have problems
finding the one they want if they need to search through a very long list; some client
tools might also be slow to respond if they have to display such a large number of
members in a dialog or dimension browser. Therefore, it makes sense to create extra
attributes on such dimensions to group members together to reduce the chance of
this happening.
Analysis Services can automatically create groups for you, using the
DiscretizationMethod and DiscretizationBucketCount properties on an attribute.
The DiscretizationMethod property allows you to choose how groups should be
created: the EqualAreas option will try to create groups with a roughly equal number
of members in them, the Clusters option will use a data mining algorithm to create
groups of similar members, and the Automatic option will try to work out which
of the preceding two options fits the data best; the DiscretizationBucketCount
property specifies the number of groups that should be created. Full details of how this
functionality works can be found at http://tinyurl.com/groupingatts and while
it does what it is supposed to do, it rarely makes sense to use it. The reason can be seen
from the following screenshot, which shows the result of using the EqualAreas option
to group a Weight attribute:
 
Search WWH ::




Custom Search