RAM диск - це віртуальний диск, створений у вільній області оперативної пам'яті, який сприймається операційною системою як окремий фізичний диск. За рахунок, того, що RAM диск зберігається в швидкої оперативної пам'яті, всі операції читання / запису з такого диска виконуються майже миттєво, навіть швидше, ніж при використанні SSD накопичувача (у найпродуктивніших SSD швидкість передачі даних зараз становить близько 560МБ / с, в той час як у пам'яті DDR4 - 12000-25000МБ / с).
Використання RAM диска доцільно в системах з надлишком оперативної пам'яті. На такому RAM диску можна розміщувати кеш і тимчасові файли додатків / системи, тимчасові бази SQL, тим самим можна домогтися істотного збільшення продуктивності додатків.
В операційній системі Windows відсутні вбудовані засоби створення RAM-дисків, тому в цих цілях доводиться використовувати сторонні програми (AMD RAMDisk, ImDisk, PassMark OSFMount, StarWind RAM Disk і т.д.).
Однак в Windows Server ви можете створити RAM диск і без використання сторонніх програм. Для цього можна скористатися драйвером iSCSI.
В першу чергу на сервері потрібно встановити компонент iSCSI Target Server (Входить до складу ролі File and Storage Services).
Якщо у вас включений файервол Windows, Вам потрібно включити трафік для служби iSCSI Service.
Щоб дозволити трафік на loopback інтерфейс для iSCSI, потрібно в гілці реєстру HKLM \ Software \ Microsoft \ iSCSI Target змінити значення DWORD параметра AllowLoopBack на 1. Можна змінити ключ реєстру з PowerShell однією командою:
Set-ItemProperty -Path 'HKLM: \ SOFTWARE \ Microsoft \ iSCSI Target' -Name AllowLoopBack -Value 1
Тепер відкрийте консоль PowerShell і створіть віртуальний RAM диск розміром 5 Гб командою:
New-IscsiVirtualDisk -Path "ramdisk: testRAM.vhdx" -Size 5GB
Тепер потрібно створити iSCSI таргет:
New-IscsiServerTarget -TargetName targetRAMDisk -InitiatorIds @ ( "IPAddress: 10.1.1.200")
Підключимо RAM диск в створений iSCSI таргет
Add-IscsiVirtualDiskTargetMapping -TargetName targetRAMDisk -DevicePath "ramdisk: testRAM.vhdx"
Тепер потрібно запустити консоль iSCSI Initiator через Server Manager
На вкладці Targets вкажіть IP адресу вашого сервера, натисніть Quick Connect і підключіть ваш iSCSI таргет.
Тепер відкрийте консоль управління дисками і перевірте, що у вас з'явився новий диск розміром 5 Гб. Це і є той самий RAM диск. Ініціалізуйте, розмітьте і відформатуйте даний диск. Призначте йому букву диска.
Тепер ви можете перенести необхідні файли на RAM диск і переналаштувати ПО на використання даного диска.
Після перезавантаження сервера RAM диск видаляється (разом з усім вмістом) і його потрібно пересоздавать заново.
У деяких сторонніх програмах для створення RAM дисків є можливість збереження даних RAM диска в файл на жорсткому диску. Після перезавантаження системи дані витягуються і поміщаються на RAM диск.