Sdílet prostřednictvím


Porovnání úložiště tabulek na disku s úložištěm tabulek optimalizovaným pro paměť

platí pro: SQL Server Azure SQL DatabaseAzure SQL Managed Instance

Kategorie Tabulka založená na disku Tabulka optimalizovaná pro paměť a odolnost
DDL Informace o metadatech jsou uloženy v systémových tabulkách v primární skupině souborů databáze a jsou přístupné prostřednictvím zobrazení katalogu. Informace o metadatech jsou uloženy v systémových tabulkách v primární skupině souborů databáze a jsou přístupné prostřednictvím zobrazení katalogu.
Struktura Řádky jsou uloženy na stránkách o velikosti 8 KB. Stránka ukládá pouze řádky ze stejné tabulky. Řádky se ukládají jako jednotlivé řádky. Neexistuje žádná struktura stránky. Dva po sobě jdoucí řádky v datovém souboru můžou patřit do různých tabulek optimalizovaných pro paměť.
Indexes Indexy jsou uloženy ve struktuře stránky podobné datovým řádkům. Pouze definice indexu je trvalá (ne řádky indexu). Indexy se udržují v paměti a vygenerují se při načtení tabulky optimalizované pro paměť do paměti při restartování databáze. Vzhledem k tomu, že řádky indexu nejsou trvalé, neprovádí se žádné protokolování změn indexu.
Operace DML Prvním krokem je najít stránku a pak ji načíst do fondu vyrovnávací paměti.

Vložit
SQL Server vloží řádek na stránku s ohledem na pořadí řádků podle clusterovaného indexu.

Delete
SQL Server vyhledá řádek, který se má odstranit na stránce, a označí ho jako odstraněný.

Update
SQL Server vyhledá řádek na stránce. Aktualizace se provádí na místě pro sloupce, které nejsou klíčové. Aktualizace klíčového sloupce se provádí operací odstranění a vložení.

Po dokončení operace DML se ovlivněné stránky zapíší na disk jako součást politiky fondu vyrovnávací paměti, kontrolního bodu nebo potvrzení transakce pro minimálně protokolované operace. Obě operace čtení a zápisu na stránkách vedou k zbytečným vstupně-výstupním operacím.
U tabulek optimalizovaných pro paměť, protože data se nacházejí v paměti, se operace DML provádějí přímo v paměti. Existuje vlákno na pozadí, které čte záznamy protokolu pro tabulky optimalizované pro paměť a uchovává je v datech a rozdílových souborech. Aktualizace vygeneruje novou verzi řádku. Aktualizace se ale zaprotokoluje jako odstranění následovaná vložením.
Fragmentace dat Manipulace s daty fragmentuje data, což vede k částečně vyplněným a logicky po sobě jdoucím stránkám, které nejsou na disku souvislé. To snižuje výkon přístupu k datům a vyžaduje defragmentaci dat. Data optimalizovaná pro paměť nejsou uložená na stránkách, takže nedochází k fragmentaci dat. Při aktualizaci a odstranění řádků je však potřeba zkompaktovat data a rozdílové soubory. To provádí vlákno sloučení na pozadí založené na zásadách sloučení.

Viz také

Vytváření a správa úložiště pro objekty Memory-Optimized