Groups data objects in a top-down fashion.
Initially all data objects are in one cluster.
We then subdivide the cluster into smaller and smaller clusters, until each object forms cluster on its own or satisfies certain termination conditions, such as a desired number of clusters is obtained.