You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/database-engine/configure-windows/hybrid-buffer-pool.md
+3-3Lines changed: 3 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -22,9 +22,9 @@ Hybrid Buffer Pool enables buffer pool objects to reference data pages in databa
22
22
23
23
Persistent memory (PMEM) devices are byte-addressable and if a direct access (DAX) persistent-memory aware file system (such as XFS, EXT4, or NTFS) is used, files on the file system can be accessed using the usual file system APIs in the OS. Alternatively, it can perform what is known as load and store operations against memory maps of the files on the device. This allows PMEM aware applications such as SQL Server to access files on the device without traversing the traditional storage stack.
24
24
25
-
The hybrid buffer pool uses this ability to perform load and store operations against memory mapped files, to leverage the PMEM device as cache for the buffer pool as well as storing database files. This creates the unique situation where both a logical read and a physical read are essentially the same operation. Persistent memory devices are accessible via the memory bus just like regular volatile DRAM.
25
+
The hybrid buffer pool uses this ability to perform load and store operations against memory mapped files, to leverage the PMEM device as cache for the buffer pool and storing database files. This creates the unique situation where both a logical read and a physical read are essentially the same operation. Persistent memory devices are accessible via the memory bus just like regular volatile DRAM.
26
26
27
-
Only clean data pages are cached on the device for the Hybrid Buffer Pool. When a page is marked as dirty, it is copied to the DRAM buffer pool before eventually being written back to the PMEM device and marked as clean again. This will occur during regular checkpoint operations in a manner similar to that performed against a standard block device.
27
+
Only clean data pages are cached on the device for the hybrid buffer pool. When a page is marked as dirty, it is copied to the DRAM buffer pool before eventually being written back to the PMEM device and marked as clean again. This page maintenance will occur during regular checkpoint operations in a manner similar to that performed against a standard block device.
28
28
29
29
The hybrid buffer pool feature is available for both Windows and Linux. The PMEM device must be formatted with a filesystem that supports DAX (DirectAccess). XFS, EXT4, and NTFS file systems all have support for DAX. SQL Server will automatically detect if data files reside on an appropriately formatted PMEM device and perform memory mapping of database files upon startup, when a new database is attached, restored, or created.
30
30
@@ -62,7 +62,7 @@ The following example disables hybrid buffer pool at the instance level:
62
62
ALTER SERVER CONFIGURATION SET MEMORY_OPTIMIZED HYBRID_BUFFER_POOL = OFF;
63
63
```
64
64
65
-
By default, hybrid buffer pool is disabled at the instance level. In order for this change to take effect, the instance must be restarted. This ensures enough hash pages are allocated for the buffer pool, as PMEM capacity on the server now needs to be accounted for.
65
+
By default, hybrid buffer pool is disabled at the instance level. In order for this change to take effect, the instance must be restarted. The restart ensures enough hash pages are allocated for the buffer pool, as PMEM capacity on the server now needs to be accounted for.
66
66
67
67
The following example disables hybrid buffer pool for a specific database.
Copy file name to clipboardExpand all lines: docs/relational-databases/performance/configuring-storage-spaces-with-a-nvdimm-n-write-back-cache.md
+8-9Lines changed: 8 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -17,7 +17,7 @@ ms.author: wiassaf
17
17
To view a Channel 9 video using this technique, see [Using Non-volatile Memory (NVDIMM-N) as Block Storage in Windows Server 2016](https://channel9.msdn.com/Events/Build/2016/P466).
18
18
19
19
## Identifying the right disks
20
-
Setup of storage spaces in Windows Server 2016 and later, especially with advanced features, such as write-back caches is most easily achieved through PowerShell. The first step is to identify which disks should be part of the Storage Spaces pool that the virtual disk will be created from. NVDIMM-Ns have a media type and bus-type of SCM (storage class memory), which can be queried via the Get-PhysicalDisk PowerShell cmdlet.
20
+
Setup of storage spaces in Windows Server 2016 and later, especially with advanced features, such as write-back caches is most easily achieved through PowerShell. The first step is to identify which disks should be part of the Storage Spaces pool that the virtual disk will be created from. NVDIMM-Ns have a media type and bus-type of SCM (storage class memory), which can be queried via the Get-PhysicalDisk PowerShell cmdlet.
> With NVDIMM-N devices, you no longer need to specifically select the devices that can be write-back cache targets.
30
30
31
-
In order to build a mirrored virtual disk with mirrored write-back cache, at least 2 NVDIMM-Ns, and 2 other disks are needed. Assigning the desired physical disks to a variable before building the pool makes the process easier.
31
+
In order to build a mirrored virtual disk with mirrored write-back cache, at least two NVDIMM-Ns, and two other disks are needed. Assigning the desired physical disks to a variable before building the pool makes the process easier.
The screenshot shows the $pd variable and the 2 SSDs and 2 NVDIMM-Ns it is assigned to returned using the following PowerShell cmdlet.
37
+
The screenshot shows the $pd variable and the two SSDs and two NVDIMM-Ns it is assigned to returned using the following PowerShell cmdlet.
38
38
39
39
```powershell
40
40
$pd | Select FriendlyName, MediaType, BusType
@@ -52,7 +52,7 @@ New-StoragePool -StorageSubSystemFriendlyName "Windows Storage*" -FriendlyName N
52
52

53
53
54
54
## Creating the Virtual Disk and Volume
55
-
Now that a pool has been created, the next step is to carve out a virtual disk and format it. In this case only 1 virtual disk will be created and the New-Volume PowerShell cmdlet can be used to streamline this process:
55
+
Now that a pool has been created, the next step is to carve out a virtual disk and format it. In this case only one virtual disk will be created and the New-Volume PowerShell cmdlet can be used to streamline this process:

70
70
71
71
## See Also
72
-
[Windows Storage Spaces in Windows 10](https://windows.microsoft.com/windows-10/storage-spaces-windows-10)
73
-
[Windows Storage Spaces in Windows 2012 R2](/previous-versions/windows/it-pro/windows-server-2012-R2-and-2012/hh831739(v=ws.11))
[View or Change the Default Locations for Data and Log Files (SQL Server Management Studio)](../../database-engine/configure-windows/view-or-change-the-default-locations-for-data-and-log-files.md)
76
-
72
+
-[Windows Storage Spaces in Windows 10 and Windows 11](https://windows.microsoft.com/windows-10/storage-spaces-windows-10)
73
+
-[Windows Storage Spaces in Windows 2012 R2](/previous-versions/windows/it-pro/windows-server-2012-R2-and-2012/hh831739(v=ws.11))
-[View or Change the Default Locations for Data and Log Files (SQL Server Management Studio)](../../database-engine/configure-windows/view-or-change-the-default-locations-for-data-and-log-files.md)
0 commit comments