Skip to content

Latest commit

 

History

History
48 lines (32 loc) · 2.7 KB

File metadata and controls

48 lines (32 loc) · 2.7 KB
title Scalability
description Learn about enhancements to scalability to on-disk storage for memory-optimized tables in SQL Server, such as using multiple threads to persist tables.
author MikeRayMSFT
ms.author mikeray
ms.reviewer randolphwest
ms.date 10/20/2025
ms.service sql
ms.subservice in-memory-oltp
ms.topic concept-article
monikerRange =azuresqldb-current || >=sql-server-2016 || >=sql-server-linux-2017 || =azuresqldb-mi-current

Scalability

[!INCLUDE SQL Server Azure SQL Database Azure SQL Managed Instance]

[!INCLUDE sssql16-md] contains scalability enhancements to the on-disk storage for memory-optimized tables.

Multiple threads to persist memory-optimized tables

[!INCLUDE ssSQL14] had a single offline checkpoint thread that scanned the transaction log for changes to memory-optimized tables and persisted them in checkpoint files (such as data and delta files). In machines with a larger number of cores, the single offline checkpoint thread could fall behind.

In [!INCLUDE sssql16-md] and later versions, there are multiple concurrent threads responsible to persist changes to memory-optimized tables.

Multi-threaded recovery

In the previous release of [!INCLUDE ssNoVersion], the log apply portion of the recovery operation was single threaded. In [!INCLUDE sssql16-md] and later versions, the log apply is multithreaded.

MERGE operation

The MERGE operation is now multithreaded.

Dynamic management views

The DMVs sys.dm_db_xtp_checkpoint_stats and sys.dm_db_xtp_checkpoint_files have been changed significantly.

Storage management

The In-memory OLTP engine continues to use memory-optimized filegroup based on FILESTREAM, but the individual files in the filegroup are decoupled from FILESTREAM. These files are fully managed (such as for create, drop, and garbage collection) by the In-Memory OLTP engine.

Note

DBCC SHRINKFILE isn't supported.

Related content