Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Den här sidan beskriver de indexkonfigurationsalternativ som är specifika för SQL Server-providern.
Klustring
Grupperade index sorterar och lagrar dataraderna i tabellen eller vyn baserat på deras nyckelvärden. Att skapa rätt klustrade index för tabellen kan avsevärt förbättra hastigheten för dina frågeställningar, eftersom informationen redan ordnas i optimal ordning. Det kan bara finnas ett grupperat index per tabell, eftersom själva dataraderna bara kan lagras i en ordning. Mer information finns i SQL Server-dokumentationen om klustrade och icke-klustrade index.
Som standardinställning stöds den primära nyckelkolumnen i en tabell implicit av ett klustrat index och alla andra index är icke-klustrade.
Du kan konfigurera ett index eller en nyckel som ska grupperas på följande sätt:
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<Blog>().HasIndex(b => b.PublishedOn).IsClustered();
}
Anmärkning
SQL Server stöder endast ett klustrat index per tabell och den primära nyckeln är som standard klustrad. Om du vill ha ett klustrat index på en kolumn som inte är en nyckel, måste du uttryckligen göra din nyckel icke-klustrat.
Fyllningsfaktor
Alternativet indexfyllningsfaktor tillhandahålls för finjustering av lagring och prestanda för indexdata. Mer information finns i SQL Server-dokumentationen om fyllningsfaktor.
Du kan konfigurera ett indexs fyllningsfaktor på följande sätt:
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<Blog>().HasIndex(b => b.PublishedOn).HasFillFactor(10);
}
Skapa online
Alternativet ONLINE ger samtidig användaråtkomst till den underliggande tabellen eller klustrade indexdata och eventuella associerade icke-grupperade index när index skapas, så att användarna kan fortsätta att uppdatera och köra frågor mot underliggande data. När du utför åtgärder för datadefinitionsspråk (DDL) offline, till exempel skapa eller återskapa ett grupperat index; dessa åtgärder har exklusiva lås på underliggande data och associerade index. Mer information finns i SQL Server-dokumentationen om alternativet ONLINE-index.
Du kan konfigurera ett index med onlinealternativet på följande sätt:
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<Blog>().HasIndex(b => b.PublishedOn).IsCreatedOnline();
}