Symptom
Anta att du använder Microsoft SQL Server 2014. Du kan stöta på följande två problem som ingår i Viktig information om SQL Server 2014:
Rapporten Saknade indexdetaljer innehåller felaktigt kolumner för minnesoptimerad tabell
Problem: Om SQL Server 2014 identifierar ett saknat index för en fråga i en minnesoptimerad tabell rapporteras ett saknat index i SHOWPLAN_XML, samt i saknade index-DMV:er, till exempel sys.dm_db_missing_index_details. I vissa fall innehåller de indexuppgifter som saknas kolumner. Eftersom alla kolumner implicit ingår i alla index i minnesoptimerade tabeller är det inte tillåtet att uttryckligen ange inkluderade kolumner med minnesoptimerade index.
Indexinformation som saknas utelämnar index som saknas om det finns ett hash-index men som inte är lämpligt för frågan
Problem: Om du har ett hashindex för kolumner i en minnesoptimerad tabell som refereras i en fråga, men indexet inte kan användas för frågan, rapporterar SQL Server 2014 inte alltid ett saknat index i SHOWPLAN_XML och i DMV-sys.dm_db_missing_index_details.
I synnerhet om en fråga innehåller likhetspredikat som involverar en delmängd av indexnyckelkolumnerna eller om den innehåller olikhetspredikat som involverar indexnyckelkolumnerna, kan HASH-indexet inte användas som det är, och ett annat index skulle krävas för att köra frågan effektivt.
Orsak
Problemen beror på att logiken som saknas i frågeoptimeraren inte skiljer mellan de traditionella icke-klustrade indexen i diskbaserade tabeller och de nya indextyperna för minnesoptimerade tabeller.
Lösning
Problemen åtgärdades först i följande kumulativa uppdatering av SQL Server.
Kumulativ uppdatering 1 för SQL Server 2014 /en-us/help/2931693
Om kumulativa uppdateringar för SQL Server
Varje ny kumulativ uppdatering för SQL Server innehåller alla snabbkorrigeringar och alla säkerhetskorrigeringar som ingick i den tidigare kumulativa uppdateringen. Kolla in de senaste kumulativa uppdateringarna för SQL Server:
Lösning
Använd följande lösningar för att kringgå de här problemen:
Lösning på problemet: Indexinformation saknas felaktigt Rapporten innehåller kolumner för minnesoptimerad tabell
Ange inte INCLUDE-satsen med index för minnesoptimerade tabeller.
Lösning på problemet: Indexinformation saknas utelämnar index som saknas om det finns ett hash-index men som inte är lämpligt för frågan
Om du använder hash-index granskar du frågorna och frågeplanerna för att avgöra om frågorna kan dra nytta av indexsökningsåtgärder på en delmängd av indexnyckeln eller indexsökningsåtgärder på olikhetspredikat. Om du behöver söka på en delmängd av indexnyckeln använder du antingen ett icke-grupperat index eller ett HASH-index på exakt de kolumner som du behöver söka efter. Om du behöver söka på ett olikhetspredikat använder du ett NONCLUSTERED index i stället för HASH.
Obs: Lösningarna kommer från Viktig information om SQL Server 2014
Status
Microsoft har bekräftat att detta är ett problem i de Microsoft-produkter som anges i avsnittet "Gäller".