Megosztás a következőn keresztül:


Az állandó memória megismerése és üzembe helyezése

Az állandó memória (vagy PMem) egy új típusú memóriatechnológia, amely energiaciklusokon keresztül megőrzi a tartalmát, és felső szintű tárolóként is használható, ezért hallhatja, hogy a felhasználók a PMem-et tárolóosztályú memóriaként vagy SCM-ként hivatkoznak rá. Ez a cikk az állandó memóriáról nyújt hátteret, és ismerteti, hogyan helyezheti üzembe azt az Azure Local és a Windows Server legfelső szintű tárolási szintjeként.

Mi az állandó memória?

Az állandó memória olyan nem felejtő adathordozók típusa, amelyek illeszkednek egy szabványos DIMM(memória)-tárolóhelyhez. Lassabb, mint a DRAM, de nagyobb átviteli sebességet biztosít, mint az SSD és az NVMe. A DRAM-hez képest az állandó memóriamodulok sokkal nagyobb kapacitásban érhetők el, és GB-onként olcsóbbak, de még mindig drágábbak, mint az NVMe. A memóriatartalmak akkor is megmaradnak, ha a rendszer áramellátása váratlan áramkimaradás, felhasználó által kezdeményezett leállítás vagy rendszerösszeomlás esetén leáll. Ez azt jelenti, hogy az állandó memóriamodulokat ultragyors, állandó tárolóként használhatja.

Az Azure Local és a Windows Server 2019 támogatja az állandó memória gyorsítótárként vagy kapacitásmeghajtóként való használatát. A díjszabási modell alapján azonban az állandó memória a legtöbb értéket gyorsítótárként vagy kis mennyiségű dedikált tárként biztosítja a memórialeképezési adatokhoz. A legtöbb esetben a rendszer automatikusan gyorsítótár-meghajtóként használja az állandó memóriameghajtókat, és bármi lassabbat használ kapacitásmeghajtóként. További információk a gyorsítótár- és kapacitásmeghajtók beállításának módjáról: lásd A tárolókészlet gyorsítótárának megértése és Kötetek megtervezése.

Állandó memóriafogalmak

Ez a szakasz azokat az alapfogalmakat ismerteti, amelyekkel az állandó memóriát Windows Server- és Azure Helyi környezetekben kell üzembe helyeznie az I/O-szűk keresztmetszetek csökkentése és a teljesítmény javítása érdekében.

Hozzáférési módszerek

Az állandó memória elérésének két módja van. Ezek a következők:

  • Letilthatja a hozzáférést, amely a tárolóhoz hasonlóan működik az alkalmazáskompatibilitás érdekében. Ebben a konfigurációban az adatok a szokásos módon haladnak át a fájlrendszeren és a tárolóveremeken. Ezt a konfigurációt az NTFS és a ReFS együttes használatával is használhatja, és a legtöbb használati esetben ajánlott.
  • közvetlen hozzáférés (DAX), amely memóriaként működik a legalacsonyabb késés érdekében. A DAX-ot csak NTFS-lel kombinálva használhatja. Ha nem megfelelően használja a DAX-ot, adatvesztést okozhat. Határozottan javasoljuk, hogy Blokkfordítási táblázat (BTT) használatával használja a DAX-ot, be van kapcsolva a szakadt írások kockázatának csökkentése érdekében. További információ: DAX-ismertetése és konfigurálása.

Warning

A DAX nem támogatott azure-beli helyi környezetekben. Az Azure Local csak a blokkelérést támogatja, a BTT be van kapcsolva.

Regions

A régió egy vagy több állandó memóriamodul készlete. A régiók gyakran egymással összefüggő csoportokként jönnek létre, amelyekben több állandó memóriamodul jelenik meg egyetlen logikai virtuális címtérként az átviteli sebesség növelése érdekében. A rendelkezésre álló sávszélesség növelése érdekében a szomszédos virtuális címek több állandó memóriamodulra is kiterjednek. A régiók általában a kiszolgálóplatform BIOS-jában hozhatók létre.

PmemDisks

Az állandó memória tárolóként való használatához meg kell határoznia legalább egy PmemDisket, amely egy virtuális merevlemez (VHD) a gazdagépen, amely pmemDiskként számbavételt ad egy virtuális gépen (VM) belül. A PmemDisk a nem felejtő memória egy összefüggően megcímzett tartománya, amelyre úgy gondolhat, mint egy merevlemez-partíció vagy a LUN. A rendelkezésre álló nyers kapacitás felosztásához több PmemDisks-et is létrehozhat Windows PowerShell-parancsmagok használatával. Minden állandó memóriamodul tartalmaz egy címketároló területet (LSA), amely tárolja a konfigurációs metaadatokat.

Fordítási tábla blokkolása

A szilárd állapotú meghajtóktól eltérően az állandó memóriamodulok nem védenek az áramkimaradás vagy rendszerkimaradás esetén fellépő "szakadt írások" ellen, így az adatok veszélybe kerülnek. A BTT azáltal csökkenti ezt a kockázatot, hogy atomi szektorfrissítési szemantikát biztosít az állandó memóriaeszközökhöz, lényegében lehetővé téve a blokkszerű szektorok írását, így az alkalmazások elkerülhetik a régi és az új adatok keveredését egy meghibásodási forgatókönyvben. Határozottan javasoljuk, hogy szinte minden esetben kapcsolja be a BTT-t. Mivel a BTT a PmemDisk tulajdonsága, a PmemDisk létrehozásakor be kell kapcsolni.

Blokkelérési módban a BTT használatát javasoljuk, mert minden adat blokkszemantikát használ. A BTT DAX módban is hasznos, mert a metaadat-műveletek továbbra is blokkszemantikát használnak, még akkor is, ha az alkalmazás adatműveletei nem. Még ha minden alkalmazásművelet dax szemantikával rendelkező memórialeképezett fájlokat használ, a metaadat-műveletek esetében is előfordulhatnak szakadt írások; ezért a BTT bekapcsolása még mindig értékes.

Támogatott hardver

Az alábbi táblázat az Azure Local és a Windows Server támogatott állandó memóriahardverét mutatja be. Az állandó memória teljes mértékben támogatott a Windows Server 2019-ben, beleértve a Közvetlen tárolóhelyeket is.

Állandó memóriatechnológia Windows Server 2016 Azure Local 2311.2 és újabb / Windows Server 2019 és újabb verziók
NVDIMM-N állandó módban Supported Supported
Intel Optane™ DC állandó memória App Direct módban Nem támogatott Supported
Intel Optane™ DC állandó memória memória módban Supported Supported

Az Intel Optane DC állandó memória támogatja a memória (változékony) és az App Direct (állandó) működési módokat is. Ha az állandó memóriamodulokat tárolóként szeretné használni, ami a kiszolgálói számítási feladatok elsődleges használati esete, az App Direct módot kell használnia. A memória mód lényegében lassabb RAM-ként használja az állandó memóriát, amely általában nem felel meg a kiszolgálói számítási feladatok teljesítménykövetelményeinek. A memória mód eltér a DAX-tól, amely egy állandó tárolókötet, amely memóriaszerű szemantikával érhető el.

A működési módot gyakran előre konfigurálja az eredeti eszköz gyártója.

Note

Ha olyan rendszert indít újra, amely több, Több PmemDisksre osztott Intel® Optane™ állandó memóriamodullal rendelkezik app Direct módban, előfordulhat, hogy elveszíti a hozzáférést a kapcsolódó logikai tárolólemezek egy részéhez vagy mindegyikéhez. Ez a probléma a Windows Server 2019 1903-nál régebbi verzióiban jelentkezik.

Ez a hozzáférés-vesztés azért fordul elő, mert egy állandó memóriamodul nincs betanítva, vagy más módon meghiúsul a rendszer indításakor. Ilyen esetben a rendszer bármely állandó memóriamoduljának PmemDisk-fájlja meghiúsul, beleértve azokat is, amelyek fizikailag nem képezhetők le a sikertelen modulra.

Az összes PmemDisks-hozzáférés visszaállításához cserélje le a sikertelen modult.

Ha egy modul meghibásodik a Windows Server 2019 1903-as vagy újabb verzióiban, akkor csak az érintett modulhoz fizikailag kapcsolódó PmemDiskekhez veszíti el a hozzáférést; másokat nem érint.

Állandó memória konfigurálása

Ha Intel Optane állandó memóriát használ, kövesse az itt leírt utasításokat. Ha egy másik gyártó állandó memóriamoduljait használja, tekintse meg a dokumentációjukat.

A BTT-t támogató PmemDisk létrehozásához használja a New-VHD parancsmagot:

New-VHD E:\pmemtest.vhdpmem -Fixed -SizeBytes 1GB -AddressAbstractionType BTT

A VHD-bővítménynek "vhdpmem"-nek kell lennie.

A Convert-VHD parancsmag használatával olyan VHD-t is konvertálhat, amely nem rendelkezik BTT-engedéllyel, olyanná, amely igen, vagy fordítva.

Convert-VHD .\pmemtest_nobtt.vhdpmem -AddressAbstractionType BTT -DestinationPath pmemtest_btt.vhdpmem

A konvertálás után az új VHD névtér GUID azonosítója megegyezik az eredetivel. Ez problémákhoz vezethet, különösen akkor, ha mindkettő ugyanahhoz a virtuális géphez van csatlakoztatva. Ha új névtér UUID-azonosítót szeretne létrehozni a konvertált VHD-hez, használja a Set-VHD parancsmagot:

Set-VHD -ResetDiskIdentifier .\pmemtest_btt.vhdpmem

Az interleaved-készletek ismertetése

Az interleaved készletek általában létrehozhatók a kiszolgálóplatform BIOS-jában, hogy több állandó memóriaeszköz egyetlen lemezként jelenjen meg a gazda operációs rendszer számára, növelve a lemez átviteli sebességét.

Note

A Windows Server 2016 nem támogatja az állandó memóriamodulok egymással összekapcsolt készletét.

Ne feledje, hogy egy állandó memóriamodul egy szabványos DIMM-(memória-) pontban található, amely közelebb helyezi az adatokat a processzorhoz. Ez a konfiguráció csökkenti a késést, és javítja a beolvasási teljesítményt. Az átviteli sebesség további növelése érdekében két vagy több állandó memóriamodul létrehoz egy n-way interleaved készletet az olvasási/írási műveletek csíkozásához. A leggyakoribb konfigurációk a kétirányú vagy a négyirányú összekapcsolás.

A Get-PmemDisk PowerShell-parancsmaggal áttekintheti az ilyen logikai lemezek konfigurációját az alábbiak szerint:

Get-PmemDisk

DiskNumber Size   HealthStatus AtomicityType CanBeRemoved PhysicalDeviceIds UnsafeShutdownCount
---------- ----   ------------ ------------- ------------ ----------------- -------------------
2          252 GB Healthy      None          True         {20, 120}         0
3          252 GB Healthy      None          True         {1020, 1120}      0

Láthatjuk, hogy a 2. logikai PMem-lemez az Id20 és id120 fizikai eszközöket, a 3. logikai PMem lemez pedig az Id1020 és az Id1120 fizikai eszközöket használja.

Ha további információt szeretne lekérni a logikai meghajtók által használt, egymással összekapcsolt készletről, futtassa a Get-PmemPhysicalDevice parancsmagot:

(Get-PmemDisk)[0] | Get-PmemPhysicalDevice

DeviceId DeviceType           HealthStatus OperationalStatus PhysicalLocation FirmwareRevision Persistent memory size Volatile memory size
-------- ----------           ------------ ----------------- ---------------- ---------------- ---------------------- --------------------
20       Intel INVDIMM device Healthy      {Ok}              CPU1_DIMM_C1     102005310        126 GB                 0 GB
120      Intel INVDIMM device Healthy      {Ok}              CPU1_DIMM_F1     102005310        126 GB                 0 GB

Az interleaved-készletek konfigurálása

Az interleaved készlet konfigurálásához futtassa a Get-PmemUnusedRegion parancsmagot az összes olyan állandó memóriarégió áttekintéséhez, amelyek nincsenek hozzárendelve a rendszer logikai állandó memórialemezéhez:

Get-PmemUnusedRegion

RegionId TotalSizeInBytes DeviceId
-------- ---------------- --------
       1     270582939648 {20, 120}
       3     270582939648 {1020, 1120}

A rendszer összes PMem-eszközinformációjának megtekintéséhez, beleértve az eszköz típusát, helyét, állapotát és működési állapotát stb., futtassa a Get-PmemPhysicalDevice parancsmagot:

Get-PmemPhysicalDevice

DeviceId DeviceType           HealthStatus OperationalStatus PhysicalLocation FirmwareRevision Persistent memory size Volatile
                                                                                                                      memory size
-------- ----------           ------------ ----------------- ---------------- ---------------- ---------------------- --------------
1020     Intel INVDIMM device Healthy      {Ok}              CPU2_DIMM_C1     102005310        126 GB                 0 GB
1120     Intel INVDIMM device Healthy      {Ok}              CPU2_DIMM_F1     102005310        126 GB                 0 GB
120      Intel INVDIMM device Healthy      {Ok}              CPU1_DIMM_F1     102005310        126 GB                 0 GB
20       Intel INVDIMM device Healthy      {Ok}              CPU1_DIMM_C1     102005310        126 GB                 0 GB

Mivel van egy nem használt PMem-régiónk, új állandó memórialemezeket hozhatunk létre. A nem használt régióval több állandó memórialemezt is létrehozhatunk az alábbi parancsmagok futtatásával:

Get-PmemUnusedRegion | New-PmemDisk
Creating new persistent memory disk. This may take a few moments.

A művelet befejezése után a következő parancs futtatásával láthatjuk az eredményeket:

Get-PmemDisk

DiskNumber Size   HealthStatus AtomicityType CanBeRemoved PhysicalDeviceIds UnsafeShutdownCount
---------- ----   ------------ ------------- ------------ ----------------- -------------------
2          252 GB Healthy      None          True         {20, 120}         0
3          252 GB Healthy      None          True         {1020, 1120}      0

Érdemes megjegyezni, hogy Get-PhysicalDisk | Where MediaType -eq SCM helyett futtathatjuk Get-PmemDisk, hogy ugyanazokat az eredményeket kapjuk. Az újonnan létrehozott állandó memórialemez egy az egyhez megfelel a PowerShellben és a Windows Felügyeleti Központban megjelenő meghajtókkal.

Állandó memória cseréje

Ha egy sikertelen modult kell lecserélnie, újra kell létrehoznia a PMem-lemezt (tekintse meg a korábban ismertetett lépéseket).

A hibaelhárítás során előfordulhat, hogy használni kell Remove-PmemDisk. Ez a parancsmag eltávolít egy adott állandó memórialemezt. Az összes jelenlegi állandó memórialemezt eltávolíthatjuk a következő parancsmagok futtatásával:

Get-PmemDisk | Remove-PmemDisk

cmdlet Remove-PmemDisk at command pipeline position 1
Supply values for the following parameters:
DiskNumber: 2

This will remove the persistent memory disk(s) from the system and will result in data loss.
Remove the persistent memory disk(s)?
[Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend  [?] Help (default is "Y"): Y
Removing the persistent memory disk. This may take a few moments.

Important

Az állandó memórialemez eltávolítása adatvesztést okoz a lemezen.

Lehet, hogy szüksége lesz egy másik parancsmagra, például a Initialize-PmemPhysicalDevice. Ez a parancsmag inicializálja a fizikai állandó memóriaeszközök címketároló területeit, és törölheti a sérült címketárolási információkat az eszközökön.

Get-PmemPhysicalDevice | Initialize-PmemPhysicalDevice

This will initialize the label storage area on the physical persistent memory device(s) and will result in data loss.
Initializes the physical persistent memory device(s)?
[Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend  [?] Help (default is "Y"): A
Initializing the physical persistent memory device. This may take a few moments.
Initializing the physical persistent memory device. This may take a few moments.
Initializing the physical persistent memory device. This may take a few moments.
Initializing the physical persistent memory device. This may take a few moments.

Important

Initialize-PmemPhysicalDevice adatvesztést okoz az állandó memóriában. Csak végső megoldásként használja az állandó memóriával kapcsolatos problémák megoldásához.

Állandó memória működés közben a Microsoft Ignite 2018-ban

Az állandó memória előnyeinek megtekintéséhez tekintse meg a Microsoft Ignite 2018 videóját .

Minden olyan tárolórendszer, amely hibatűrést biztosít, szükségszerűen elosztott írási másolatokat készít. Az ilyen műveleteknek át kell haladnia a hálózaton, és fel kell erősítenie a háttérbeli írási forgalmat. Emiatt az abszolút legnagyobb IOPS-teljesítménytesztszámokat általában csak olvasások mérésével érik el, különösen akkor, ha a tárolórendszer józan optimalizálásokkal rendelkezik a helyi másolatból való olvasáshoz, amikor csak lehetséges. A Közvetlen tárolóhelyek erre van optimalizálva.

Amikor kizárólag olvasási műveletek segítségével mérték, a fürt 13 798 674 IOPS-t szállított.

Ha alaposan megnézi a videót, észre fogja venni, hogy ami még inkább megdöbbentő, az a késés. Még több mint 13,7 M IOPS esetén is a Windows fájlrendszere folyamatosan kevesebb mint 40 μs késést jelent! (Ez a mikroszekundumok szimbóluma, a másodperc egymilliomod része.) Ez a sebesség nagyságrenddel gyorsabb, mint amit a tipikus minden flash szállítók büszkén hirdetnek ma.

A Windows Server 2019-ben a Storage Spaces Direct és az Intel® Optane™ DC állandó memória együtt áttörő teljesítményt nyújtottak. Ez a több mint 13,7 M IOPS-teljesítményteszt kiszámítható és rendkívül alacsony késéssel párosul, több mint duplája a korábbi iparágvezető 6,7 M IOPS-teljesítménytesztnek. Mi több, ezúttal csak 12 kiszolgálócsomópontra volt szükségünk – 25 százalékkal kevesebbre, mint korábban.

A teszthardver egy 12 kiszolgálós fürt volt, amely háromirányú tükrözést és elválasztó ReFS-köteteket használt. 12 x Intel® S2600WFT, 384 GiB memória, 2 x 28 magos "CascadeLake", 1,5 TB Intel® Optane™ DC állandó memória gyorsítótárként, 32 TB NVMe (4 x 8 TB Intel® DC P4510) kapacitásként, 2 x Mellanox ConnectX-4 25 Gbps.

Az alábbi táblázat a teljes teljesítményszámokat mutatja.

Benchmark Performance
4K 100% véletlenszerű olvasás 13,8 millió IOPS
4K 90/10% véletlenszerű olvasás/írás 9,45 millió IOPS
2 MB szekvenciális olvasás 549 GB/s átviteli sebesség

Következő lépések

A kapcsolódó információkért lásd még: