What are Indexes in SQL SERVER

Microsoft SQL Server index helps in creating the structure of table that helps in speeds retrieval of the rows in the table.An index create a keys from one or more columns in the table. These keys are stored in a structure that allows SQL Server to find the row or rows created with the key values quickly and efficiently.If a table doest not containeated indexes,the data rows are not stored in any specific order.This structure is stored on heap.There a
re two types of SQL Server indexes:

(1)Clustered:-

Clustered indexes helps in sorting and storeing the data rows in the table take key values as base. Because the data rows are stored in sorted order on the clustered index key, clustered indexes more efficient for finding rows. There is only one clustered index per table. The data rows themselves form the lowest level of the clustered index. The only time the data rows in a table are stored in sorted order is when table contains a clustered index. If a table has no clustered index, its data rows are stored in a heap.

(2)Nonclustered:-

Nonclustered indexes having structure that is diffrent from the data rows . The lowest rows of a nonclustered index have the nonclustered index key values and each key value entry has pointers to the data rows containing the key value. The data rows are not stored in order based on the nonclustered key. The pointer from an index row in a nonclustered index to a data row is called a row locator. The structure of the row locator depends on whether the data pages are stored in a heap or are clustered. In heap,a row locator is a pointer that point to the row. For a table with a clustered index, the row locator is the clustered index key.