B-tree as well as columnstore indexes are heavily used in conjunction with classical relational data. However, modern databases often handle bigger and more complicated data types. For some of them, SQL Server offers special indexes:
- XML indexes for XML data type: XML indexes are divided into the following:
- Primary XML index: It forms the internal structure of all nodes from XML column. These nodes are associated to a unique clustered index value in the same table.
- Secondary XML indexes: These are index structures sorting paths, values, or attributes of XML nodes stored in primary XML index. Secondary XML indexes are always built on top of the primary XML index.
- Spatial indexes for geometry and geography data types