Nói tóm lại: nếu sử dụng thẻ RAID cấp thấp (không có bộ đệm), hãy ưu tiên và chuyển sang RAID phần mềm. Nếu sử dụng thẻ từ trung cấp đến cao cấp (với BBU hoặc NVRAM), thì phần cứng thường (nhưng không phải lúc nào cũng vậy! Xem bên dưới) là một lựa chọn tốt.
Câu trả lời dài: khi sức mạnh tính toán bị hạn chế, thẻ RAID phần cứng có lợi thế đáng kể để giảm tải tính toán tương đương / hội chứng cho các sơ đồ RAID liên quan đến chúng (RAID 3/4/5, RAID6, ecc).
Tuy nhiên, với hiệu suất CPU ngày càng tăng, lợi thế này về cơ bản đã biến mất: ngay cả CPU cổ máy tính xách tay của tôi (Core i5 M 520, Westmere thế hệ) có XOR thực hiện hơn 4 GB / s và hiệu suất RAID-6 hội chứng hơn 3 GB / s trên một lõi thực thi đơn .
Ưu điểm mà RAID phần cứng duy trì hiện nay là sự hiện diện của bộ đệm DRAM được bảo vệ mất điện, dưới dạng BBU hoặc NVRAM. Bộ đệm được bảo vệ này cung cấp độ trễ rất thấp cho truy cập ghi ngẫu nhiên (và đọc lần truy cập đó) và về cơ bản chuyển đổi ghi ngẫu nhiên thành ghi tuần tự. Một bộ điều khiển RAID không có bộ đệm như vậy là gần như vô dụng . Ngoài ra, một số bộ điều khiển RAID cấp thấp không chỉ không có bộ đệm mà còn vô hiệu hóa bộ nhớ cache DRAM riêng của đĩa, dẫn đến hiệu suất chậm hơn so với không có thẻ RAID. Một ví dụ là thẻ PERC H200 và H300 của DELL: nếu phần sụn mới hơn không thay đổi điều đó, chúng sẽ vô hiệu hóa hoàn toàn bộ đệm riêng của đĩa (và không thể bật lại trong khi các đĩa được kết nối với bộ điều khiển RAID). Tự mình làm và làmkhông, không bao giờ, không bao giờ mua bộ điều khiển như vậy. Mặc dù bộ điều khiển cao cấp hơn thường vô hiệu hóa bộ đệm riêng của đĩa, nhưng ít nhất chúng cũng có bộ đệm được bảo vệ riêng - làm cho bộ nhớ cache riêng của ổ cứng (chứ không phải của SSD!) Có phần dư thừa.
Đây không phải là kết thúc, mặc dù. Ngay cả các bộ điều khiển có khả năng (bộ điều khiển có bộ đệm BBU hoặc NVRAM) có thể cho kết quả không nhất quán khi sử dụng với SSD, về cơ bản vì SSD thực sự cần bộ đệm riêng nhanh để lập trình / xóa trang FLASH hiệu quả. Và trong khi một số bộ điều khiển (hầu hết?) Cho phép bạn kích hoạt lại bộ đệm riêng của đĩa (ví dụ: PERC H700 / 710 / 710P cho phép người dùng kích hoạt lại nó), nếu bộ đệm riêng đó không được bảo vệ ghi thì bạn có nguy cơ bị mất dữ liệu trong trường hợp mất điện. Hành vi chính xác thực sự phụ thuộc vào bộ điều khiển và phần sụn (ví dụ: trên DELL S6 / i với bộ nhớ cache 256 MB WB và bộ đệm của đĩa được kích hoạt , tôi không bị mất trong quá trình kiểm tra mất điện theo kế hoạch nhiều lần), không chắc chắn và lo ngại nhiều.
Mặt khác, RAID phần mềm nguồn mở là những con thú dễ điều khiển hơn nhiều - phần mềm của chúng không được bao bọc trong phần sụn độc quyền và có các mẫu và hành vi siêu dữ liệu được xác định rõ. RAID phần mềm đưa ra giả định (phải) rằng bộ đệm DRAM riêng tư của đĩa không được bảo vệ, nhưng đồng thời nó rất quan trọng đối với hiệu năng chấp nhận được - vì vậy họ thường không vô hiệu hóa nó, thay vào đó họ sử dụng các lệnh ATA FLUSH / FUA để chắc chắn rằng rất quan trọng dữ liệu đất đai lưu trữ ổn định. Vì chúng thường chạy từ các cổng SATA được gắn vào chipset SB, băng thông của chúng rất tốt và hỗ trợ trình điều khiển rất tuyệt vời.
Tuy nhiên, nếu được sử dụng với các ổ cứng cơ học, mẫu truy cập ghi ngẫu nhiên, đồng bộ hóa (ví dụ: cơ sở dữ liệu, máy ảo) sẽ bị ảnh hưởng rất nhiều so với bộ điều khiển RAID phần cứng với bộ đệm WB. Mặt khác, khi được sử dụng với SSD doanh nghiệp (nghĩa là: với bộ đệm ghi được bảo vệ bằng powerloss), RAID phần mềm thường vượt trội và cho kết quả thậm chí cao hơn những gì có thể đạt được với thẻ RAID phần cứng. Điều đó nói rằng bạn phải nhớ rằng SSD dành cho người tiêu dùng (đọc: với bộ đệm ghi không được bảo vệ), trong khi rất tốt trong việc đọc và viết không đồng bộ, cung cấp IOPS rất thấp trong khối lượng công việc ghi được đồng bộ hóa.
Cũng xem xét rằng RAID phần mềm không phải là tất cả được tạo ra bằng nhau. Phần mềm RAID RAID có tiếng xấu, hiệu năng khôn ngoan và thậm chí Storage Space dường như không quá khác biệt. Linux MD Raid đặc biệt nhanh và linh hoạt, nhưng ngăn xếp I / O của Linux bao gồm nhiều phần độc lập mà bạn cần phải hiểu kỹ để đạt được hiệu suất tối đa. RAID chẵn lẻ ZFS (ZRAID) cực kỳ tiên tiến nhưng, nếu không được cấu hình đúng, có thể cung cấp cho bạn các IOP rất kém; phản chiếu + sọc, mặt khác, thực hiện khá tốt. Dù sao, nó cần một thiết bị SLOG nhanh để xử lý ghi đồng bộ (ZIL).
Dòng dưới cùng:
- nếu khối lượng công việc của bạn không được đồng bộ hóa ghi ngẫu nhiên, bạn không cần thẻ RAID
- nếu bạn cần một card RAID, đừng không mua một bộ điều khiển RAID mà không WB bộ nhớ cache
- Nếu bạn có kế hoạch sử dụng phần mềm SSD thì RAID được ưu tiên nhưng hãy nhớ rằng để ghi ngẫu nhiên được đồng bộ hóa cao, bạn cần có SSD được bảo vệ bằng powerloss (ví dụ: Intel S4600, Samsung PM / SM863, v.v.). Đối với hiệu năng thuần túy, sự lựa chọn tốt nhất có lẽ là Linux MD Raid, nhưng hiện tại tôi thường sử dụng gương ZFS sọc. Nếu bạn không đủ khả năng để mất một nửa dung lượng do gương và bạn cần các tính năng nâng cao của ZFS, hãy đi với ZRAID nhưng suy nghĩ cẩn thận về thiết lập VDEVs của bạn.
- nếu bạn, ngay cả khi sử dụng SSD, thực sự cần thẻ RAID phần cứng, hãy sử dụng SSD có bộ nhớ bảo vệ chống ghi (Micron M500 / 550/600 có bảo vệ một phần - không thực sự đủ nhưng tốt hơn là không có gì - trong khi Intel DC và S series bị mất điện hoàn toàn bảo vệ và điều tương tự cũng có thể nói đối với SSD Samsung dành cho doanh nghiệp)
- nếu bạn cần RAID6 và bạn sẽ sử dụng các ổ cứng cơ học thông thường, hãy cân nhắc mua thẻ RAID nhanh với bộ đệm WB 512 MB (hoặc nhiều hơn). RAID6 có hình phạt hiệu năng ghi cao và bộ đệm WB có kích thước phù hợp ít nhất có thể cung cấp bộ lưu trữ trung gian nhanh để ghi đồng bộ nhỏ (ví dụ: tạp chí hệ thống tập tin).
- nếu bạn cần RAID6 với ổ cứng nhưng bạn không thể / không muốn mua thẻ RAID phần cứng, hãy suy nghĩ cẩn thận về thiết lập RAID phần mềm của bạn. Ví dụ, một giải pháp khả thi với Linux MD Raid là sử dụng hai mảng: một mảng RAID10 nhỏ để ghi nhật ký / nhật ký DB và mảng RAID6 cho lưu trữ thô (dưới dạng máy chủ tệp). Mặt khác, phần mềm RAID5 / 6 với SSD rất nhanh, do đó bạn có thể không cần thẻ RAID để thiết lập tất cả các ổ SSD.