¿Por qué se trata de una exploración de índice y no una búsqueda de índice?

Aquí está la consulta:

SELECT      top 100 a.LocationId, b.SearchQuery, b.SearchRank
FROM        dbo.Locations a
INNER JOIN  dbo.LocationCache b ON a.LocationId = b.LocationId
WHERE       a.CountryId = 2
AND         a.Type = 7

Índices de ubicación:

PK_Locations:

LocationId

IX_Locations_CountryId_Type:

CountryId, escriba

ndices @LocationCache:

PK_LocationCache:

LocationId

IX_LocationCache_LocationId_SearchQuery_SearchRank:

LocationId, SearchQuery, SearchRank

Plan de ejecución

Así que está haciendo unIndex Seek en ubicaciones, utilizando el índice de cobertura, genial.

Pero por qué está haciendo unIndex Scan en el índice de cobertura de LocationCache?

El índice de cobertura tiene LocationId, SearchQuery, SearchRank en el índice (no como "columnas incluidas").

Hover en el escaneo del índice:

Esta consulta debe ir en una vista indizada servida por un catálogo de SQL Server FTS, consumida por un complemento de autocompletado, por lo que debe estar 100% optimizada.

En el momento en que la consulta anterior tarda 3 segundos. Debería ser <0.

¿Algunas ideas