Mengonfigurasi memori persisten (PMEM) untuk SQL Server di Windows
Artikel ini menjelaskan cara mengonfigurasi memori persisten (PMEM) untuk SQL Server 2016 (13.x) ke atas pada Windows.
Gambaran Umum
SQL Server 2019 (15.x) memiliki beberapa fitur database dalam memori yang mengandalkan memori persisten. Dokumen ini mencakup langkah-langkah yang diperlukan untuk mengonfigurasi memori persisten untuk SQL Server di Windows.
Catatan
Istilah pencerahan diperkenalkan untuk menyampaikan konsep bekerja dengan sistem file yang sadar memori persisten. Ekstensi akses langsung (DAX) ke sistem file NTFS menyediakan kemampuan untuk memetakan file memori dari ruang kernel ke ruang pengguna. Ketika file dipetakan ke ruang pengguna, aplikasi dapat mengeluarkan instruksi pemuatan/penyimpanan langsung ke file yang dipetakan memori, melewati tumpukan I/O kernel sepenuhnya. Ini dianggap sebagai metode akses file "tercerahkan". Pada Windows Server 2022, fungsionalitas pencerahan ini tersedia di platform Windows dan Linux.
Mengonfigurasi perangkat
Membuat namespace untuk perangkat PMEM
Di Windows, gunakan ipmctl
utilitas untuk mengonfigurasi disk PMEM (disebut sebagai namespace di Linux). Anda dapat menemukan instruksi khusus IntelĀ® Optaneā¢ di sini. Detail tentang perangkat keras PMEM yang didukung pada versi Windows yang berbeda berada di Memahami dan menyebarkan memori persisten. Disk PMEM harus diselingi di seluruh NVDIMM PMEM dan dapat menyediakan berbagai jenis akses ruang pengguna ke wilayah memori pada perangkat. Untuk informasi selengkapnya tentang set yang saling terkait di Windows, lihat Memahami dan menyebarkan memori persisten.
Disk PMEM
Menggunakan PowerShell untuk memeriksa disk PMEM
#Get information about all physical disks
Get-PhysicalDisk
#Review logical configuration of PMEM disks
Get-PmemDisk
#Get information about PMEM devices
Get-PmemPhysicalDevice
#Get information about unused PMEM regions
Get-PmemUnusedRegion
BTT dan DAX
Secara default, New-PmemDisk
akan menggunakan mode yang diinginkan FSDax
. Atomitas diatur ke default daripada None
BlockTranslationTable
. Dari perspektif dukungan, BTT harus diaktifkan untuk log transaksi, untuk meniru semantik mode sektor yang diperlukan. Meskipun penggunaan BTT dengan NTFS umumnya direkomendasikan, BTT tidak disarankan saat menggunakan halaman besar, seperti yang diperlukan untuk DAX.
Get-PmemUnusedRegion | New-PmemDisk -Atomicity None
Memformat volume NTFS
#Initialize PMEM Disk(s)
Get-PmemDisk | Initialize-Disk -PartitionStyle GPT
#Create New Partition(s) and Format the Volume(s) with DAX Mode
Get-PmemDisk[0] | `
New-Partition `
-UseMaximumSize `
-AssignDriveLetter `
-Offset 2097152 `
-Alignment 2097152 | `
Format-Volume `
-FileSystem NTFS `
-IsDAX:$True `
-AllocationUnitSize 2097152
Perataan dan offset file
Periksa offset partisi
Get-Partition | Select-Object DiskNumber, DriveLetter, IsDAX, Offset, Size, PartitionNumber | fl
Periksa perataan file file tertentu menggunakan fsutil
. Ukuran file kami harus berupa modulo 2 MB.
fsutil dax queryFileAlignment A:\AdventureWorks2022_A.mdf
Mengganti PMEM
Provisi ulang disk PMEM
Setiap kali modul PMEM diganti, modul perlu disediakan ulang.
Catatan
Menghapus disk PMEM akan mengakibatkan hilangnya data pada disk tersebut.
# Remove all PMEM disks
Get-PmemDisk | Remove-PmemDisk -Confirm:$false
Menghapus modul PMEM
Untuk menghapus data secara permanen dari modul PMEM, gunakan Initialize-PmemPhysicalDevice
cmdlet PowerShell.
# Reinitialize all PMEM disks
Get-PmemPhysicalDevice | Initialize-PmemPhysicalDevice -Confirm:$false
Lihat juga
Untuk cmdlet lain untuk memanipulasi PMEM, lihat PersistentMemory dalam dokumentasi referensi PowerShell.