when data is unordered we use dense indexing to point to every record in the file. when data is ordered we point to every block containing records of the data file.in sparse we dont point to every data record because there is no need since the data is ordered. so in now primary indexing based on candidate key->ordered->sparse,clustered index->based on key or non key but similar type of attribute clusters or group and ordered->sparse..but secondary index->based on unordered data->dense.