RAID là gì: các mức dự phòng dữ liệu từ RAID 0 đến RAID 6

RAID là gì: các mức dự phòng dữ liệu từ RAID 0 đến RAID 6

RAID (Redundant Array of Independent Disks) là kỹ thuật kết hợp nhiều ổ cứng vật lý thành một mảng logic để tăng hiệu năng, khả năng chịu lỗi hoặc cả hai. Khác với dùng một ổ đơn lẻ, RAID phân tán hoặc nhân đôi dữ liệu trên nhiều ổ, giúp hệ thống tiếp tục hoạt động khi một ổ bị hỏng. Tuy nhiên RAID không phải là giải pháp sao lưu — nó chỉ bảo vệ trước lỗi phần cứng, không ngăn chặn mất dữ liệu do lỗi phần mềm, virus, thao tác sai hoặc thảm họa thiên tai.

Các mức RAID phổ biến và số ổ tối thiểu

Mức Cơ chế Ổ tối thiểu Dung lượng thực dụng Chịu lỗi
RAID 0 Striping (chia khối) 2 Tổng tất cả ổ 0
RAID 1 Mirroring (nhân đôi) 2 Bằng ổ nhỏ nhất 1 ổ
RAID 5 Striping + parity phân tán 3 (N−1) × ổ nhỏ nhất 1 ổ
RAID 6 Striping + double parity phân tán 4 (N−2) × ổ nhỏ nhất 2 ổ
RAID 10 Stripe of mirrors 4 N/2 × ổ nhỏ nhất 1 ổ mỗi mirror

Ví dụ thực tế với 4 ổ cứng 4 TB:

  • RAID 5: (4−1) × 4 TB = 12 TB dùng được, 4 TB dành cho parity. Chịu 1 ổ hỏng.
  • RAID 10: (4/2) × 4 TB = 8 TB dùng được. Chịu 1 ổ hỏng trong mỗi cặp mirror.
  • RAID 0: 16 TB nhưng mất 1 ổ là mất hết dữ liệu.
Ba ổ cứng 5 TB trong cấu hình ZFS raidz1 với dữ liệu và parity phân bố trên các ổ

Write penalty và hiệu năng I/O

Khi ghi dữ liệu nhỏ ngẫu nhiên, các mức RAID chịu mức độ chi phí ghi (write penalty) khác nhau do phải cập nhật parity hoặc nhân đôi bản sao:

  • RAID 0: 1 ghi / 1 ghi — không overhead.
  • RAID 1: mỗi ghi làm 2 bản sao → write penalty 2.
  • RAID 5: đọc dữ liệu cũ, đọc parity cũ, ghi dữ liệu mới, ghi parity mới — 4 thao tác I/O → write penalty 4.
  • RAID 6: thêm đọc/ghi parity thứ hai → write penalty 6.
  • RAID 10: ghi lên 2 bản mirror song song → write penalty 2 (tương tự RAID 1).

Với I/O tuần tự lớn, read penalty của mọi mức gần như bằng 1; chỉ I/O ngẫu nhiên nhỏ mới thấy rõ chênh lệch. Do đó công việc ghi nhiều (database log, virtualization) thường chọn RAID 1/10 thay vì RAID 5/6.

Card điều khiển RAID phần cứng LSI MegaRAID SATA 300-8X tám cổng

Write hole, rebuild và rủi ro URE

Write hole là trạng thái parity không nhất quán với dữ liệu khi hệ thống sập giữa một lần ghi chưa xong. Nếu ổ hỏng sau đó, parity sai sẽ không thể phục hồi. Các giải pháp: write‑ahead logging (hardware RAID dùng cache NVRAM), write‑intent bitmap (mdadm), RAID-Z (ZFS làm mỗi khối một stripe riêng + copy‑on‑write), journal device (mdadm --write-journal).

Khi một ổ hỏng, rebuild cần đọc toàn bộ dữ liệu từ các ổ còn lại — quá trình có thể kéo dài giờ hoặc ngày tùy dung lượng. Trong cửa sổ này, một ổ thứ hai hỏng hoặc lỗi đọc không khôi phục (URE) sẽ làm mất mảng. Tỷ lệ URE của ổ doanh nghiệp thường < 1 bit / 1015, ổ desktop < 1 / 1014 (cả hai Wikipedia có ghi chú [disputed]). RAID 1/10 rủi ro URE thấp hơn nhờ không dùng parity; RAID 6 giảm rủi ro nhờ double parity nhưng ghi chậm hơn.

Ngoài ra, các ổ cùng lô, cùng tuổi thường hỏng đồng thời (correlated failure). Nghiên cứu ~100.000 ổ nhiều hãng cho thấy xác suất 2 ổ cùng cụm hỏng trong 1 giờ cao 4 lần dự báo phân bố mũ, trong 10 giờ cao 2 lần.

Máy chủ HP ProLiant DL580 G7 dùng khay ổ cứng hot-swap

RAID phần cứng và RAID phần mềm

RAID phần cứng do một card chuyên dụng điều khiển, có bộ xử lý và cache riêng nên không tốn CPU máy chủ. Tuy nhiên nhiều card RAID tích hợp trên bo mạng (Intel RST, AMD RAID, ASMedia) thực chất là “FakeRAID”: logic RAID chạy trong BIOS/UEFI và hiệu suất phụ thuộc CPU, cần driver dmraid để nhận diện. RAID phần mềm do hệ điều hành đảm nhiệm qua mdadm trên Linux, hỗ trợ các mức linear, RAID 0/1/4/5/6/10 và multipath, với tuỳ chọn journal và bitmap để giảm rủi ro khi rebuild. mdadm yêu cầu chunk size là lũy của 2 và tối thiểu 4 KB cho RAID 4/5/6/10.

Hệ thống tệp cũng cung cấp RAID ở mức khác: ZFS dùng raidz (raidz1 tương đương RAID 5, raidz2 tương đương RAID 6, raidz3 tương đương RAID 7) và có cơ chế resilver khi thay thế ổ; btrfs dùng profile phân bổ single, dup, raid0, raid1, raid10, raid5, raid6 áp dụng riêng cho dữ liệu và metadata. RAID 1 của btrfs yêu cầu đúng 2 bản sao và không cho phép giảm xuống dưới hai thiết bị.

Thống kê từ Backblaze cho quý 2/2026: 354.415 ổ với 1.498 lỗi trên 31.553.350 ngày-ổ, AFR 1,73%; cả năm 2025 là 1,36%. Backblaze cũng khuyến nghị sao lưu dữ liệu thường xuyên và theo dõi chỉ số SMART — vì lỗi phần mềm và rủi ro toàn hệ thống không nằm trong phạm vi RAID.

Nguồn tham khảo

Tôi là một lập trình viên IOS. Code chính là IOS nhưng thỉnnh thoảng vẫn đá sang Android hoặc web. Mặc dù không quá thông thạo nhưng tôi sẽ chia sẻ những kiến thức mà mình đã tìm hiểu, áp dụng qua.

Bài viết liên quan

WebAuthn là gì: chuẩn xác thực công khai thay thế mật khẩu

WebAuthn là gì: chuẩn xác thực công khai thay thế mật khẩu WebAuthn là chuẩn W3C và FIDO cho việc xác thực bằng public key thay vì mật khẩu, được…

Xem thêm

RISC-V là gì: kiến trúc bộ xử lý mã nguồn mở miễn phí royalties

RISC-V là gì: kiến trúc bộ xử lý mã nguồn mở miễn phí royalties RISC-V (đọc là “risk-five”) là một bộ nguyên tắc kiến trúc bộ xử lý (instruction set…

Xem thêm
Sơ đồ kiến trúc phần mềm SATA Express cho thấy hai đường AHCI và NVM Express chạy song song trên bus PCI Express

NVMe là gì: giao thức SSD tốc độ cao, thay thế SATA và AHCI

NVMe là giao thức giao tiếp giữa hệ điều hành và ổ cứng thể rắn, viết tắt của Non-Volatile Memory Express. Nó được thiết kế riêng cho NAND flash nên…

Xem thêm
0 0 đánh giá
Article Rating
Theo dõi
Thông báo của
guest
0 Comments
Cũ nhất
Mới nhất Được bỏ phiếu nhiều nhất