<P> Clustering alters the data block into a certain distinct order to match the index, resulting in the row data being stored in order . Therefore, only one clustered index can be created on a given database table . Clustered indices can greatly increase overall speed of retrieval, but usually only where the data is accessed sequentially in the same or reverse order of the clustered index, or when a range of items is selected . </P> <P> Since the physical records are in this sort order on disk, the next row item in the sequence is immediately before or after the last one, and so fewer data block reads are required . The primary feature of a clustered index is therefore the ordering of the physical data rows in accordance with the index blocks that point to them . Some databases separate the data and index blocks into separate files, others put two completely different data blocks within the same physical file (s). </P> <P> When multiple databases and multiple tables are joined, it's referred to as a cluster (not to be confused with clustered index described above). The records for the tables sharing the value of a cluster key shall be stored together in the same or nearby data blocks . This may improve the joins of these tables on the cluster key, since the matching records are stored together and less I / O is required to locate them . The cluster configuration defines the data layout in the tables that are parts of the cluster . A cluster can be keyed with a B - Tree index or a hash table . The data block where the table record is stored is defined by the value of the cluster key . </P> <P> The order that the index definition defines the columns in is important . It is possible to retrieve a set of row identifiers using only the first indexed column . However, it is not possible or efficient (on most databases) to retrieve the set of row identifiers using only the second or greater indexed column . </P>

Define an index. explain the role of indexes in a relational database