Để dữ liệu của bạn được
an toàn hơn khi chạy trên hệ thống server máy chủ thì cách phổ biến là bằng
cách ghép các ổ cứng lại với nhau để backup dự phòng dữ liệu.
Một cách định nghĩa cơ
bản thì RAID (nhóm các chữ đầu của các từ tiếng Anh sau: RedundantArrays of
Independent Disks) là hình thức ghép nhiều ổ cứng vật lý thành một hệ ổ cứng có
chức năng gia tăng tốc độ đọc/ghi dữ liệu hoặc nhằm tăng thêm sự an toàn của dữ
liệu chứa trên hệ thống đĩa hoặc kết hợp cả hai yếu tố trên.
LỊCH
SỬ
Lần đầu tiên RAID được
phát triển năm 1987 tại trường Đại học California ở Berkeley với những đặc điểm
chỉ ghép các phần đĩa cứng nhỏ hơn thông qua phần mềm để tạo ra một hệ thống
đĩa dung lượng lớn hơn thay thế cho các ổ cứng dung lượng lớn giá đắt thời bấy
giờ.
Mặc dù hiện nay không tồn
tại nữa, nhưng Hội đồng tư vấn phát triển RAID (RAID Advisory Board: Viết tắt
là RAB) đã ra thành lập tháng 7 năm 1992 để định hướng, lập ra các tiêu chuẩn,
định dạng cho RAID. RAB đã phân ra các loại cấp độ RAID (tôi dịch từ từ:
level), các tiêu chuẩn phần cứng sử dụng RAID. RAB đã phân ra 7 loại cấp độ
RAID từ cấp độ 0 đến cấp độ 6. Cấp độ ở đây không được hiểu rằng cứ cấp độ cao
là cao cấp hoặc là “đời sau”, mà chúng chỉ phân biệt rằng giữa loại RAID này và
loại RAID khác, (nhưng lại được sử dụng để giải thích giữa các loại với nhau).
CÁC
LOẠI RAID CHUẨN
Theo RAB thì RAID được
chia thành 7 cấp độ (level), mỗi cấp độ có các tính năng riêng, hầu hết chúng
được xây dựng từ hai cấp độ cơ bản là RAID 0 và RAID 1.
RAID
0
RAID 0 là cấp độ cơ bản:
Các dữ liệu cần chứa trên hệ thống RAID 0 được phân tách thành hai phần để chứa
trên tối thiểu hai ổ cứng khác nhau.
Một cách đơn giản nhất,
ta có thể hiểu theo ví dụ sau: Có hai ổ cứng: Ổ 0 và ổ 1 (trong tin học thường
đánh số thứ tự bắt đầu từ số 0 – điều này hơi khác thường đối với tư duy của bạn,
nhưng nếu như bạn muốn hiểu về nó thì hãy chấp nhận như vậy), với dữ liệu mang
nội dung A (có thể phân tách thành hai phần dữ liệu bằng nhau là A1 và A2) sẽ
được ghi lại ở cùng trên hai đĩa: Đĩa 0 ký tự dữ liệu A1 và đĩa 1 chứa dữ liệu
A2. Khi đọc dữ liệu A này thì đồng thời cả hai ổ cứng đều hoạt động, cùng lấy
ra dữ liệu A1 và A2 trên mỗi ổ cứng. Hệ điều hành sẽ tiếp nhận được nguyên vẹn
nội dung dữ liệu A như nó được ghi vào.
Qua ví dụ trên có thể
nhận thấy rằng tốc độ đọc và ghi dữ liệu của hệ thống RAID 0 được tăng lên gấp
đôi (cùng một thời điểm cùng đọc và cùng ghi trên cả hai ổ cứng vật lý khác
nhau). Do đó RAID 0 rất phù hợp với các hệ thống máy chủ, các máy tính của game
thủ khó tính hoặc các máy tính phục vụ việc đọc/ghi dữ liệu với băng thông cao.
Ở máy chủ, ta biết rằng việc truy cập dữ liệu để phục vụ người truy xuất được
tiến hành hầu như đồng thời (ví dụ bạn đang truy cập vào máy chủ chứa các nôi
dung của blog này, thấy rằng trong một thời điểm thì không chỉ có bạn, mà còn
có rất nhiều người khác cùng tham gia truy cập, như vậy nếu như máy chủ chỉ có
một ổ cứng thì việc truy cập sẽ rất chậm)
Cũng trong ví dụ trên,
nếu như xảy ra hư hỏng một trong hai ổ cứng thì sẽ ra sao ?. Câu trả lời là dữ
liệu sẽ mất hết, bởi dữ liệu cùng được tách ra ghi ở hai đĩa không theo dạng
hoàn chỉnh. Trong ví dụ trên, nếu như chỉ còn một chữ A1 (hoặc A2) thì hệ thống
không thệ nhận biết chính xách đầy đủ dữ liệu được ghi vào là A. Vậy đặc điểm của
RAID 0 sẽ là làm tăng băng thông đọc/ghi dữ liệu, nhưng cũng làm tăng khả năng
rủi ro của dữ liệu khi hư hỏng ổ cứng.
RAID
1
RAID 1 cũng là một cấp
độ cơ bản. Từ các nguyên lý của RAID 0 và RAID 1 có thể giải thích về các cấp độ
RAID khác.
RAID 1 là sự kết hợp của
ít nhất hai ổ cứng trong đó dữ liệu được ghi đồng thời trên cả hai ổ cứng đó. Lặp
lại ví dụ trên: Nếu dữ liệu có nội dung A được phân tách thành A1, A2 thì RAID
1 sẽ ghi nội dung A được ghi tại đồng thời cả hai ổ cứng 0 và ổ cứng 1 (xem
hình RAID 1).
Mục đích của RAID 1 là
tạo ra sự lưu trữ dữ liệu an toàn. Nó không tạo ra sự tăng tốc độ đọc và ghi dữ
liệu (tốc độ đọc/ghi tương đương với chỉ sử dụng duy nhất một ổ cứng). RAID 1
thường sử dụng trong các máy chủ lưu trữ các thông tin quan trọng. Nếu có sự hư
hỏng ổ cứng xảy ra, người quản trị hệ thống có thể dễ dàng thay thế ổ đĩa hư hỏng
đó mà không làm dừng hệ thống. RAID 1 thường được kết hợp với việc gắn nóng các
ổ cứng (cũng giống như việc gắn và thay thế nóng các thiết bị tại các máy chủ
nói chung).
RAID
2
RAID 2 thì ít được sử dụng
trong thực tế, cũng có ít tài liệu nói về nó do đó tôi chưa tìm hiểu kỹ được.
Trên trang AC&NC Raid có giải thích về RAID 2 bằng hình như sau:
Như vậy RAID 2 gồm hai
cụm ổ đĩa, cụm thứ nhất chứa các dữ liệu được phân tách giống như là RAID 0, cụm
thứ hai chứa các mã ECC dành cho sửa chữa lỗi ở cụm thứ nhất. Sự hoạt động của
các ổ đĩa ở RAID 2 là đồng thời để đảm bảo rằng các dữ liệu được đọc đúng,
chính do vậy chúng không hiệu quả bằng một số loại RAID khác nên ít được sử dụng.
RAID
3
RAID 3 là sự cải tiến của
RAID 0 nhưng có thêm (ít nhất) một ổ cứng chứa thông tin có thể khôi phục lại dữ
liệu đã hư hỏng của các ổ cứng RAID 0. Giả sử dữ liệu A được phân tách thành 3
phần A1, A2, A3 (Xem hình minh hoạ RAID 3), khi đó dữ liệu được chia thành 3 phần
chứa trên các ổ cứng 0, 1, 2 (giống như RAID 0). Phần ổ cứng thứ 3 chứa dữ liệu
của tất cả để khôi phục dữ liệu có thể sẽ mất ở ổ cứng 0, 1, 2. Giả sử ổ cứng 1
hư hỏng, hệ thống vẫn hoạt động bình thường cho đến khi thay thế ổ cứng này.
Sau khi gắn nóng ổ cứng mới, dữ liệu lại được khôi phục trở về ổ đĩa 1 như trước
khi nó bị hư hỏng.
Yêu cầu tối thiểu của
RAID 3 là có ít nhất 3 ổ cứng.
RAID
4
RAID 4 tương tự như
RAID 3 nhưng ở một mức độ các khối dữ liệu lớn hơn chứ không phải đến từng
byte. Chúng cũng yêu cầu tối thiểu 3 đĩa cứng (ít nhất hai đĩa dành cho chứa dữ
liệu và ít nhất 1 đĩa dùng cho lưu trữ dữ liệu tổng thể)
RAID
5
RAID 5 thực hiện chia đều
dữ liệu trên các ổ đĩa giống như RAID 0 nhưng với một cơ chế phức tạp hơn. Theo
anh Hoàng Linh thì giải thích như sau (xem ở nguồn tham khảo, tôi trích nguyên
văn ra đây): “Đây có lẽ là dạng RAID mạnh mẽ nhất cho người dùng văn phòng và
gia đình với 3 hoặc 5 đĩa cứng riêng biệt. Dữ liệu và bản sao lưu được chia lên
tất cả các ổ cứng. Nguyên tắc này khá rối rắm. Chúng ta quay trở lại ví dụ về 8
đoạn dữ liệu (1-8) và giờ đây là 3 ổ đĩa cứng. Đoạn dữ liệu số 1 và số 2 sẽ được
ghi vào ổ đĩa 1 và 2 riêng rẽ, đoạn sao lưu của chúng được ghi vào ổ cứng 3. Đoạn
số 3 và 4 được ghi vào ổ 1 và 3 với đoạn sao lưu tương ứng ghi vào ổ đĩa 2. Đoạn
số 5, 6 ghi vào ổ đĩa 2 và 3, còn đoạn sao lưu được ghi vào ổ đĩa 1 và sau đó
trình tự này lặp lại, đoạn số 7,8 được ghi vào ổ 1, 2 và đoạn sao lưu ghi vào ổ
3 như ban đầu. Như vậy RAID 5 vừa đảm bảo tốc độ có cải thiện, vừa giữ được
tính an toàn cao. Dung lượng đĩa cứng cuối cùng bằng tổng dung lượng đĩa sử dụng
trừ đi một ổ. Tức là nếu bạn dùng 3 ổ 80GB thì dung lượng cuối cùng sẽ là
160GB”.
RAID 5 cũng yêu cầu tối
thiểu có 3 ổ cứng.
RAID
6
RAID 6 phần nào giống
như RAID 5 nhưng lại được sử dụng lặp lại nhiều hơn số lần sự phân tách dữ liệu
để ghi vào các đĩa cứng khác nhau. Ví dụ như ở RAID 5 thì mỗi một dữ liệu được
tách thành hai vị trí lưu trữ trên hai đĩa cứng khác nhau, nhưng ở RAID 6 thì mỗi
dữ liệu lại được lưu trữ ở ít nhất ba vị trí (trở lên), điều này giúp cho sự an
toàn của dữ liệu tăng lên so với RAID 5.
RAID 6 yêu cầu tối thiểu
4 ổ cứng.
Trong RAID 6, ta thấy rằng
khả năng chịu đựng rủi ro hư hỏng cứng được tăng lên rất nhiều. Nếu với 4 ổ cứng
thì chúng cho phép hư hỏng đồng thời đến 2 ổ cứng mà hệ thống vẫn làm việc bình
thường, điều này tạo ra một xác xuất an toàn rất lớn. Chính do đó mà RAID 6 thường
chỉ được sử dụng trong các máy chủ chứa dữ liệu cực kỳ quan trọng.
CÁC
RAID KHÔNG TIÊU CHUẨN
Trên thực tế thì việc
ghép các ổ cứng thành hệ thống RAID không hoàn toàn tuân thủ như các cấp độ như
trên, mà chúng đã được biến đổi đi theo các cách khác nữa. Hiện nay có các loại
RAID 10, RAID 50 và RAID 0+1. Tuy nhiên do giới hạn hiểu biết về RAID của bản
thân nên tôi cũng chỉ cung cấp cho bạn một cái nhìn cơ bản về RAID còn những sự
nghiên cứu sâu hơn – xin hãy đọc các tài liệu kèm theo ở mục dưới, và tìm thêm
trên Internet.
Ngoài lý do về tăng tốc
độ truy cập dữ liệu trên hệ thống đĩa cứng, sự ra đời của các chuẩn RAID còn đảm
bảo sự an toàn dữ liệu của hệ thống. Qua đây ta thấy rằng người ta đã rất quan
trọng việc đảm bảo an toàn dữ liệu cho máy tính và đặc biệt là cho máy chủ.
Giả sử, các máy chủ của
một website bị hư hỏng một ổ cứng, chúng sẽ làm mất dữ liệu nếu như không có
quá trình sao lưu dự phòng. Nếu dữ liệu này lại quan trọng đến mức thay đổi
theo thời gian thực (chỉ một khoảng thời gian ngắn thì dữ liệu đã được sửa chữa,
thay đổi) thì việc sao lưu quả là khó khăn nếu không sử dụng các loại RAID. Tại
sao lại thế, bởi vì việc sao lưu dữ liệu định kỳ chỉ giúp cho ta lấy lại dữ liệu
ở thời điểm lưu lại, còn những giữ liệu từ thời điểm đó cho đến lúc hư hỏng có
thể bị mất.
Bạn có thể không chứa
các dữ liệu quan trọng của mình bởi có thể chúng chỉ là một vài tập tin văn bản
bình thường, nhưng đối với các dữ liệu quan trọng liên quan đến tài chính chẳng
hạn thì việc mất dữ liệu là một tai hoạ lớn, làm ảnh hưởng không những đến công
ty mà còn đến các khách hàng của công ty đó.
Và thử hình dung, ổ cứng
trong máy tính của bạn bị hỏng đột ngột ngay lúc này, bạn sẽ cảm nhận được sự cần
thiết phải sao lưu là như thế nào. Có lẽ không đơn thuần là các tập tin văn bản
mà dễ dàng có thể soạn lại, mà các bảng tính, các tập hợp và kết quả làm việc của
bạn trong thời gian gần đây đã bị mất hết theo chúng. Chắc là bạn sẽ rất bực bội,
và cuối cùng là đã hối tiếc rằng đã không sao lưu các dữ liệu đó lại một cách
thường xuyên, định kỳ.
0 nhận xét:
Đăng nhận xét
Lưu ý: Chỉ thành viên của blog này mới được đăng nhận xét.