Що таке RAID0: швидкість і ризики для даних
Автор: Редакція Domeny.ForSale Опубліковано
Коротко: RAID0 об’єднує щонайменше два диски в один простір і розподіляє між ними дані, що може підвищити швидкість читання та запису. Однак він не забезпечує стійкості до відмов: втрата одного диска зазвичай означає втрату доступу до всього масиву. У Linux можна створити програмний RAID0 за допомогою mdadm, але такий масив найкраще використовувати для даних, які можна відтворити або які захищені окремою резервною копією.
Як RAID0 розподіляє дані між дисками
RAID — це спосіб об’єднати кілька дисків в одну логічну структуру, яку називають масивом. RAID0 використовує striping, тобто поділ даних на фрагменти, які по черзі записуються на різні диски. Він не створює додаткової копії чи інформації, яка дає змогу відновити відсутні фрагменти.
Наприклад, файл можна розділити так, що перший фрагмент потрапляє на диск A, другий — на диск B, третій — знову на A. Під час читання обидва пристрої можуть працювати паралельно. При цьому система бачить єдиний простір, у якому можна створити файлову систему й зберігати каталоги.
Два диски місткістю 1 TB номінально дають близько 2 TB простору без урахування службових витрат. Система може показувати інше число через спосіб перерахунку одиниць. Якщо місткість дисків різна, використання простору залежить від реалізації RAID0, тому найпростіше взяти диски з близькою місткістю та продуктивністю.
Якої швидкості можна очікувати
Під час читання та запису великих послідовних обсягів даних два подібні диски можуть забезпечувати продуктивність, близьку до суми їхніх окремих можливостей. Однак це не означає, що комп’ютер працюватиме вдвічі швидше. Запуск програм, робота з малими файлами й операції, що потребують короткого часу відгуку, можуть прискоритися значно менше.
Результат також обмежують контролер, інтерфейси, спільне з’єднання пристроїв з рештою комп’ютера, процесор і спосіб роботи застосунку. Два швидкі SSD не розкриють свого потенціалу повністю, якщо їхня сумарна швидкість передавання даних перевищує пропускну здатність спільного з’єднання. Масив також не усуває затримок окремого носія.
Перш ніж вибрати RAID0, виміряйте час виконання реального завдання: копіювання великого обсягу матеріалів, експорту відео чи обробки набору даних. Порівняйте його з часом роботи на одному диску. Якщо хочете оцінити саме носії, а не переважно RAM, обсяг даних у тесті має перевищувати доступний обсяг кешу.
Коли RAID0 доречний і що означає відмова диска
RAID0 може бути корисним як робочий простір для тимчасових файлів, локальних даних для обчислень або матеріалів, оригінали яких зберігаються на іншому носії. Наприклад, відеомонтажер зберігає оригінальні записи та проєкт в окремому захищеному місці, а масив використовує для проміжних файлів. Тоді відмова диска означає витрати часу на повторне створення даних, а не втрату єдиної копії роботи.
Це невдалий вибір для єдиного архіву фотографій, документів компанії чи даних сервісу, який має залишатися доступним. Кожен диск — необхідна частина масиву. Додавання носіїв збільшує кількість пристроїв, відмова яких може перервати його роботу.
Після пошкодження одного диска не можна просто замінити його й відновити дані з решти, як у масиві з надлишковістю, тобто додатковою інформацією для відновлення. На вцілілих носіях є лише частина фрагментів. Професійне відновлення іноді можливе, але залежить від характеру пошкодження й не дає гарантій.
Якщо важливіше зберегти працездатність у разі відмови диска, розгляньте RAID1, який записує дзеркальні копії даних. Окрема резервна копія все одно потрібна: жоден із цих масивів сам по собі не захищає від випадкового видалення файлів чи їх шифрування шкідливим програмним забезпеченням.
Як створити RAID0 у Linux за допомогою mdadm
mdadm — інструмент для керування програмними масивами в Linux. Наведений нижче приклад передбачає два порожні додаткові диски: /dev/sdb і /dev/sdc. Команди знищують дані на вказаних пристроях. Не виконуйте їх, не перевіривши назви дисків і не зберігши потрібні файли в безпечному місці.
Спочатку перевірте пристрої:
lsblk -o NAME,SIZE,MODEL,SERIAL,FSTYPE,MOUNTPOINTS
Порівняйте місткість, моделі та серійні номери. Переконайтеся, що вибрані диски не містять системи, активних розділів чи потрібних даних. Установіть пакет mdadm за допомогою менеджера пакетів свого дистрибутива; наприклад, у Debian та Ubuntu:
sudo apt install mdadm
Створіть масив, файлову систему й точку монтування:
sudo mdadm --create /dev/md0 --level=0 --raid-devices=2 /dev/sdb /dev/sdc
cat /proc/mdstat
sudo mkfs.ext4 /dev/md0
sudo mkdir -p /mnt/raid0
sudo mount /dev/md0 /mnt/raid0
Ці команди також передбачають, що /dev/md0 ще не використовується іншим масивом. Якщо інструмент попереджає про наявні дані чи сигнатури, зупиніться й з’ясуйте їхнє походження замість того, щоб автоматично підтверджувати операцію.
Що налаштувати після створення масиву
Одноразового монтування недостатньо для правильної роботи після перезавантаження. Перевірте налаштування виявлення масиву в mdadm; розташування конфігураційного файлу й потреба в оновленні initramfs залежать від дистрибутива. Звірте інструкції з його офіційною документацією.
Для постійного монтування через /etc/fstab використовуйте UUID файлової системи, який можна отримати командою sudo blkid /dev/md0, замість того, щоб покладатися на незмінність назви пристрою. Перевірте запис перед перезавантаженням і налаштуйте права доступу до каталогу відповідно до потреб користувача чи застосунку.
Перш ніж перенести туди робочі дані, з’ясуйте одне: звідки ви відновите їх у разі втрати масиву. Якщо відповідь — «нізвідки», спочатку підготуйте резервну копію або виберіть іншу схему організації дисків.
Дивіться також: Що таке VPN?
