Hãy ngừng tin tưởng vào RAID 5 cho NAS tại nhà của bạn

Tác giả Skynet, T.Một 07, 2026, 09:00:09 CHIỀU

« Chủ đề trước - Chủ đề tiếp »

0 Thành viên và 1 Khách đang xem chủ đề.

Xác suất mất toàn bộ dữ liệu là thấp, nhưng không bao giờ bằng không.

Mặc dù NAS rất hữu ích, nhưng việc thiết lập nó cũng tốn rất nhiều chi phí—một thiết bị NAS tốt với dung lượng lưu trữ vài terabyte có thể có giá cao hơn cả chiếc PC của bạn. Vì vậy, bạn chắc chắn không muốn bất kỳ ổ đĩa nào bị hỏng và làm mất dữ liệu của mình.


Vì vậy, có lẽ bạn nên tránh sử dụng RAID 5 nếu bạn có ổ cứng dung lượng lớn. Tôi biết, đây là một tuyên bố táo bạo, nhưng hãy để tôi giải thích rõ hơn.

1. Tại sao RAID 5 lại là một ý tưởng tồi?

Vấn đề khi triển khai RAID 5 với các ổ cứng cơ học dung lượng cao hiện đại nằm ở tính tất yếu về mặt thống kê của các lỗi đọc không thể phục hồi (URE). Như bạn có thể biết, RAID 5 hoạt động trên cơ chế kiểm tra chẵn lẻ một ổ đĩa, nghĩa là mảng có thể hoạt động bình thường ngay cả khi chỉ một ổ đĩa bị hỏng. Và khi ổ đĩa đó bị hỏng, bộ điều khiển RAID phải khởi động quá trình xây dựng lại để khôi phục dữ liệu bị thiếu lên một ổ đĩa thay thế. Để làm được điều này, nó phải đọc thành công từng bit dữ liệu từ mọi ổ đĩa còn lại trong mảng.

Đây là lúc mà toán học trở nên bất lợi cho bạn. Các ổ cứng SATA tiêu chuẩn dành cho người tiêu dùng thường có tỷ lệ lỗi đọc không thành công (URE) nhỏ hơn 1 sector trên 10¹⁴ bit. Điều này nghe có vẻ đáng tin cậy trên lý thuyết, nhưng khối lượng dữ liệu khổng lồ trên các ổ đĩa hiện đại khiến giới hạn này rất dễ bị vượt quá.

Hãy xem xét một hệ thống NAS gia đình đơn giản với bốn ổ cứng 12TB được cấu hình RAID 5. Nếu một ổ cứng bị lỗi, bộ điều khiển phải đọc 36TB dữ liệu còn lại để khôi phục lại dữ liệu kiểm tra lỗi (parity). Chuyển đổi điều này sang bit, 36TB xấp xỉ 2,88 lần 10¹⁴ bit. Với tỷ lệ lỗi do nhà sản xuất quy định là 1 trên 10¹⁴, về mặt thống kê, bạn có khả năng gặp ít nhất một lỗi đọc trong quá trình khôi phục.

Trong một hệ thống lưu trữ hoạt động bình thường, lỗi đọc chỉ là một sự cố nhỏ; bộ điều khiển có thể dễ dàng đọc dữ liệu chẵn lẻ để sửa lỗi. Tuy nhiên, trong quá trình khôi phục, hệ thống đã ở trạng thái suy giảm và không còn khả năng dự phòng nào để tận dụng. Nếu bộ điều khiển gặp lỗi đọc không xác định (URE) khi cố gắng khôi phục dữ liệu cho ổ đĩa bị lỗi, nó sẽ thiếu thông tin cần thiết để giải phương trình chẵn lẻ. Điều này thường dẫn đến việc quá trình khôi phục dừng lại ngay lập tức, khiến toàn bộ hệ thống không thể đọc được, hoặc "làm thủng" hệ thống, dẫn đến hỏng dữ liệu âm thầm và nguy cơ sụp đổ hệ thống tập tin. Chính cơ chế được thiết kế để bảo vệ dữ liệu của bạn lại trở thành nguyên nhân gây mất dữ liệu hoàn toàn vì khả năng dự phòng không đủ cho khối lượng dữ liệu đang được xử lý.

Trên thực tế, ổ cứng có thể và thường đáng tin cậy hơn so với thông số kỹ thuật ghi trên nhãn, nhưng xét đến khoản đầu tư bạn đã bỏ ra cho phần cứng, có lẽ tốt hơn hết là không nên mạo hiểm.

2. Tôi nên thay thế nó bằng cái gì?

May mắn thay, đây là vấn đề bạn có thể khắc phục bằng cách sử dụng tính năng kiểm tra lỗi kép, thường thấy nhất trong RAID 6 hoặc, đối với những người sử dụng hệ thống tệp ZFS, RAID-Z2. Không giống như RAID 5, lưu trữ một khối kiểm tra lỗi duy nhất được phân bổ trên các ổ đĩa, RAID 6 tính toán và lưu trữ hai khối kiểm tra lỗi riêng biệt—thường được gọi là P và Q—được tạo ra bằng các thuật toán khác nhau, điển hình là mã hóa XOR và Reed-Solomon. Điều này cho phép mảng chịu được sự cố đồng thời của hai ổ đĩa hoàn chỉnh. Mặc dù trường hợp sử dụng chính là chịu được hai lỗi đĩa vật lý, giá trị thực sự của nó đối với người dùng gia đình là giảm thiểu rủi ro lỗi đọc trong quá trình khôi phục.


Khi bạn thay thế một ổ đĩa bị lỗi trong mảng RAID 6, hệ thống vẫn cần đọc tất cả dữ liệu còn lại để khôi phục thông tin bị thiếu, giống như trong RAID 5. Tuy nhiên, nếu bộ điều khiển gặp lỗi URE trên một trong các đĩa còn hoạt động trong quá trình xử lý chuyên sâu này, mảng sẽ không bị lỗi. Bởi vì có lớp dữ liệu chẵn lẻ thứ hai, bộ điều khiển có thể tính toán ra bit bị thiếu bất chấp lỗi đọc. Về cơ bản, lỗi URE trong quá trình khôi phục được coi là lỗi ổ đĩa thứ hai đối với khối dữ liệu cụ thể đó, điều mà RAID 6 được thiết kế để xử lý một cách nhẹ nhàng.

Để đạt được độ tin cậy cao hơn đáng kể, tất nhiên là phải đánh đổi dung lượng và hiệu suất ghi; bạn sẽ mất dung lượng lưu trữ tương đương với hai ổ đĩa thay vì một, và bộ điều khiển phải thực hiện các phép tính phức tạp hơn cho mỗi thao tác ghi. Tùy thuộc vào cấu hình cụ thể của bạn và dung lượng lưu trữ bạn muốn trong NAS, "chi phí" này là không đáng kể so với rủi ro mất toàn bộ dữ liệu trên toàn hệ thống. Việc chuyển sang sử dụng tính năng kiểm tra lỗi kép đảm bảo rằng xác suất thống kê của việc mất dữ liệu giảm từ mức có thể xảy ra xuống gần như không thể xảy ra, vì xác suất xảy ra hai lỗi URE (Unified Uncertainty Error) tại cùng một địa chỉ khối logic là cực kỳ nhỏ.

3. Khi nào thì RAID 5 vẫn là một lựa chọn tốt?

RAID 5 vẫn tốt trong một số trường hợp; nó vẫn là một lựa chọn khả thi trong những tình huống cụ thể mà xác suất thống kê xảy ra lỗi đọc không thể xóa (URE) được giảm thiểu bởi phần cứng cơ bản hoặc giá trị của dữ liệu. Ngoại lệ nổi bật nhất là việc sử dụng các mảng ổ cứng hoàn toàn bằng SSD. Các ổ SSD hiện đại dành cho doanh nghiệp và thậm chí cả người tiêu dùng thường có Tỷ lệ lỗi bit (BER) thấp hơn nhiều so với ổ cứng cơ học, thường nằm trong khoảng từ 10⁻¹⁶ đến 10⁻¹⁷. Điều này đáng tin cậy hơn nhiều so với những gì bạn nhận được trên một ổ cứng quay thông thường. Do đó, một mảng RAID 5 hoàn toàn bằng SSD có thể được xây dựng lại với xác suất gặp lỗi đọc gần như không đáng kể về mặt thống kê, khiến việc tiết kiệm dung lượng nhờ sử dụng một lớp kiểm tra chẵn lẻ duy nhất trở thành một quyết định hợp lý.

Hơn nữa, RAID 5 cũng là một lựa chọn tốt cho các mảng có tổng dung lượng rất thấp. Rủi ro URE tỷ lệ thuận với tổng số bit được đọc trong quá trình khôi phục. Nếu bạn đang tái sử dụng phần cứng cũ hơn, nhỏ hơn—ví dụ, một cụm ổ đĩa 2TB hoặc 4TB—thì tổng dung lượng dữ liệu cần thiết cho việc khôi phục có thể thấp hơn nhiều so với ngưỡng 10¹⁴. Trong các môi trường "dữ liệu nhỏ" này, xác suất khôi phục thành công vẫn đủ cao cho việc sử dụng không quan trọng.

Cuối cùng, RAID 5 phù hợp với dữ liệu yêu cầu tính khả dụng cao nhưng mức độ quan trọng thấp, miễn là có bản sao lưu tự động riêng biệt. Ví dụ, một máy chủ đa phương tiện cục bộ có thể chạy trên RAID 5 để tối đa hóa không gian lưu trữ. Nếu mảng bị lỗi trong quá trình khôi phục, dữ liệu sẽ không bị mất vĩnh viễn; nó chỉ không khả dụng trong thời gian ngắn cho đến khi có thể được khôi phục từ bản sao lưu đám mây hoặc bộ nhớ lưu trữ ngoại tuyến.

Nếu bạn không đáp ứng cả ba tiêu chí trên, có lẽ đã đến lúc bạn nên cân nhắc sử dụng RAID 6 làm giải pháp lưu trữ phù hợp hơn.