Delen via


Opslag maken en beheren voor objecten die zijn geoptimaliseerd voor geheugen

Van toepassing op:SQL ServerAzure SQL DatabaseAzure SQL Managed Instance

De In-Memory OLTP-engine is geïntegreerd in SQL Server, waarmee u zowel tabellen die zijn geoptimaliseerd voor geheugen als (traditionele) schijftabellen in dezelfde database hebt. De opslagstructuur voor tabellen die zijn geoptimaliseerd voor geheugen verschilt echter van tabellen op basis van schijven.

Opslag voor een tabel op basis van schijven heeft de volgende belangrijke kenmerken:

  • Toegewezen aan een bestandsgroep en de bestandsgroep bevat een of meer bestanden.

  • Elk bestand is onderverdeeld in gebieden van acht pagina's en elke pagina is 8 kilobytes (8.192 bytes) in grootte.

  • Een omvang kan worden gedeeld tussen meerdere tabellen, maar er is een een-op-een-toewijzing tussen een toegewezen pagina en de tabel of index. Met andere woorden, een pagina kan geen rijen bevatten uit twee of meer tabellen of indexen.

  • De gegevens worden indien nodig verplaatst naar het geheugen (de buffergroep) en de gewijzigde of zojuist gemaakte pagina's worden asynchroon geschreven naar de schijf die voornamelijk willekeurige IO genereert.

Opslag voor tabellen die zijn geoptimaliseerd voor geheugen heeft de volgende belangrijke kenmerken:

  • Alle tabellen die zijn geoptimaliseerd voor geheugen, worden toegewezen aan een gegevensbestandsgroep die is geoptimaliseerd voor geheugen. Deze bestandsgroep maakt gebruik van syntaxis en semantiek die vergelijkbaar zijn met Filestream.

  • Er zijn geen pagina's en de gegevens blijven behouden als een rij.

  • Alle wijzigingen in tabellen die zijn geoptimaliseerd voor geheugen worden opgeslagen door ze toe te voegen aan actieve bestanden. Zowel lezen als schrijven naar bestanden is sequentieel.

  • Een update wordt geïmplementeerd als een verwijderbewerking, gevolgd door een invoegbewerking. De verwijderde rijen worden niet onmiddellijk uit de opslag verwijderd. De verwijderde rijen worden door een achtergrondproces, genaamd MERGE, verwijderd op basis van een beleid zoals beschreven in Duurzaamheid voor Memory-Optimized Tabellen.

  • In tegenstelling tot tabellen op basis van schijven, wordt opslag voor tabellen die zijn geoptimaliseerd voor geheugen niet gecomprimeerd. Wanneer u een gecomprimeerde (ROW of PAGE) schijftabel migreert naar een tabel die is geoptimaliseerd voor geheugen, moet u rekening houden met de groottewijziging.

  • Een tabel die is geoptimaliseerd voor geheugen kan duurzaam zijn of niet-duurzaam zijn. U hoeft alleen opslag te configureren voor tabellen die zijn geoptimaliseerd voor duurzaam geheugen.

In deze sectie worden controlepuntbestandsparen en andere aspecten beschreven van hoe gegevens in tabellen die zijn geoptimaliseerd voor geheugen, worden opgeslagen.

Artikelen in deze sectie: