In databases like MySQL or Oracle, how are indexes implemented? I think regular indexes are stored as B-trees, but couldn’t find anything about composite indexes that index on multiple columns. I’m looking for the names of the data structures used so I can research them.
More generally, where can I find more such information about database implementation details? I’m going to be taking a course on that much later in university, but I’m curious right now.
Composite indexes also use B-Trees, they just concatenate the indexed columns to determine the key. As a side node, Oracle also knows other index types, i.e. bitmap indexes. But that doesn’t depend on the number of columns indexed.