Is there a way to make Looker create clustered indexes, or indexes with included columns or even just composite indexes? Currently the indexes created by Looker are single column nonclustered indexes, and therfore largely useless for filtering due to the overhead of performing RowID lookups against the base heap table.
Due to the way that SQL Server works, the number of rows returned by the filter on the index would need to be about two thirds the total number of pages in the heap; this is typically a fraction of the table. In my example, I have an approximately 850k row derived table, and the specified indexes will only be used if they will filter to a level of around 3,500 rows.
Clustered indexes, or covering indexes, can allow a significant leverage of performance.