- Bộ nhớ flash không bay hơi của SSD vẫn giữ dữ liệu ngay cả khi đã tắt nguồn, nhưng nếu để lâu trong thời gian dài có thể xảy ra hỏng dữ liệu do thất thoát điện tích
- SSD tiêu dùng dựa trên QLC·TLC NAND chỉ có thể lưu giữ dữ liệu an toàn trong khoảng 1~3 năm khi không có điện
- MLC·SLC NAND có thể duy trì tối đa 5~10 năm, nhưng đa số người dùng phổ thông chủ yếu dùng NAND giá rẻ
- Trong quá trình sử dụng PC hằng ngày thì đây không phải vấn đề lớn, nhưng dùng SSD làm lưu trữ dài hạn (cold storage) là rủi ro
- Để đảm bảo an toàn dữ liệu, cần áp dụng nguyên tắc sao lưu 3-2-1 và sử dụng nhiều loại phương tiện lưu trữ
Tính không vĩnh viễn của dữ liệu trên SSD
- SSD lưu dữ liệu bằng trạng thái điện tích của các ô NAND flash, và vẫn giữ được trong một khoảng thời gian nhất định ngay cả khi không có điện
- Khác với ổ cứng dùng đĩa từ, SSD biểu diễn 0 và 1 bằng sự thay đổi điện áp trong transistor
- QLC NAND giữ dữ liệu khoảng 1 năm, TLC NAND 3 năm, MLC 5 năm, SLC khoảng 10 năm khi không có điện
- Phần lớn SSD tiêu dùng sử dụng TLC hoặc QLC NAND, nên nếu để mất nguồn hơn 1 năm sẽ có nguy cơ ảnh hưởng đến tính toàn vẹn dữ liệu
- Khi không có điện, điện áp trong các ô NAND bị suy giảm, khiến dữ liệu bị thiếu hoặc ổ đĩa có thể trở nên hoàn toàn vô dụng
- Vì đặc tính này, SSD không phù hợp làm phương tiện lưu trữ dài hạn, đặc biệt là với người sáng tạo nội dung hoặc nhà nghiên cứu
Phần lớn người dùng không bị ảnh hưởng nhiều
- Tình huống lưu dữ liệu lâu dài mà không có điện chủ yếu chỉ liên quan đến một số nhóm như doanh nghiệp, chuyên gia, người khởi nghiệp cá nhân
- Người dùng phổ thông thường dùng SSD làm thiết bị lưu trữ bên trong PC, và thời gian mất điện thường chỉ kéo dài từ vài tuần đến vài tháng
- Phần lớn nguyên nhân mất dữ liệu là do xung điện hoặc ổ đĩa lỗi, hơn là do thất thoát điện áp
- Nhiệt độ và chất lượng NAND ảnh hưởng đến tốc độ thất thoát điện tích
- Ngay cả khi có điện, SSD cuối cùng vẫn hết tuổi thọ do giới hạn vòng ghi/xóa (P/E cycle), nhưng đa số người dùng sẽ thay ổ trước thời điểm đó
Tầm quan trọng của sao lưu
- Sao lưu là cách đơn giản nhất để đối phó với giới hạn của thiết bị lưu trữ
- Quy tắc sao lưu 3-2-1: lưu 3 bản sao dữ liệu trên 2 loại phương tiện khác nhau, và giữ 1 bản ở ngoài địa điểm chính
- Ví dụ: tổ hợp máy tính chính + NAS + lưu trữ đám mây
- Sao lưu giúp bảo vệ dữ liệu khỏi mọi rủi ro như mất điện, hết tuổi thọ hay hỏng hóc ngoài dự kiến
- Không chỉ SSD mà HDD cũng rủi ro nếu chỉ có một bản sao duy nhất; lưu trữ dự phòng (redundancy) mới là yếu tố then chốt
Vì sao không nên dùng SSD để lưu trữ dài hạn
- SSD không có vấn đề khi dùng làm thiết bị lưu trữ chính, nhưng nếu cất giữ lâu dài mà không có điện thì vẫn có nguy cơ mất dữ liệu
- Việc mất dữ liệu có thể xảy ra chỉ trong 1~3 năm
- Nếu cần lưu trữ dài hạn, nên dùng HDD, băng từ, M-Disc hoặc các phương tiện thay thế khác
- Xây dựng hệ thống sao lưu là điều kiện cốt lõi để bảo toàn dữ liệu
2 bình luận
Ý kiến trên Hacker News
Khả năng lưu giữ dữ liệu (retention) của SSD tỷ lệ nghịch với số chu kỳ ghi/xóa, và giảm theo cấp số mũ khi nhiệt độ tăng cao
Vì vậy trong thông số kỹ thuật thường được ghi theo kiểu “sau Y chu kỳ, lưu giữ X giờ ở nhiệt độ Z độ”
Các nhà sản xuất đôi khi cũng điều chỉnh con số này để chỉ số DWPD/TBW trông cao hơn
Trên thực tế, chỉ có dung lượng tăng lên, còn độ bền và khả năng lưu giữ đã tệ đi hàng chục lần
Trước đây SLC cũ từng có chuẩn là lưu 10 năm sau 100 nghìn chu kỳ, nhưng QLC hiện nay chỉ ở mức vài tháng sau chưa tới 1 nghìn chu kỳ
QLC là một mẹo để lưu lượng dữ liệu gấp 4 lần trong cùng một ô nhớ, nên việc suy giảm là điều tất yếu
Có lẽ đến khoảng năm 2035, phần cứng năm 2010 vẫn còn ổn nhưng sản phẩm năm 2020 sẽ khó đáng tin cậy hơn
Tôi tò mò SSD thực sự làm mới dữ liệu (refresh) như thế nào
Nó tự động làm khi được cấp nguồn, làm theo chu kỳ, hay phải đọc các block cụ thể?
Nếu đặt trong hộp gắn ngoài rồi chỉ kết nối ngắn mỗi tháng một lần thì có ổn không,
và vùng không dùng tới sẽ được xử lý ra sao — cách quản lý thực tế vẫn rất mơ hồ
Khi có điện, quá trình refresh sẽ tự động diễn ra ở chế độ nền
Lúc đó hiệu năng có thể chậm đi đôi chút
Không gian chưa dùng thường được lưu trong vùng SLC nên tương đối an toàn hơn
Chắc mỗi tháng chạy fsck một lần là ổn. Tuy nhiên không khuyến nghị dùng cho backup lạnh
Bộ điều khiển SSD sẽ hiệu chỉnh chúng bằng các mã sửa lỗi phức tạp như LDPC
Cuối cùng câu hỏi cốt lõi là “khi nào dữ liệu sẽ biến mất?”, và đến lúc đó thì hệ thống khôi phục mới thật sự bị thử thách
Bài này có lẽ là cách diễn giải lại tiêu chuẩn retention của JEDEC
Theo tiêu chuẩn, SSD doanh nghiệp phải giữ dữ liệu được 3 tháng khi mất điện,
còn SSD client là 1 năm
Đổi lại, loại Enterprise được giả định dùng 24 giờ mỗi ngày, còn Client là 8 giờ
Cuối cùng vẫn là vấn đề người dùng chọn điểm đánh đổi nào
Tức là đo sau khi đã dùng hết TBW, hoặc chỉ gây một phần ứng suất bằng kỹ thuật tăng tốc
Vì vậy thực tế không cực đoan như những con số xuất hiện trong bài báo
Tôi nghi ngờ bài viết của XDA có nguồn dữ liệu đáng tin cậy hay không
XDA đôi khi hay dùng tiêu đề câu click và nội dung hời hợt,
bài này cũng chỉ dẫn lại các bài XDA khác mà không có nguồn gốc sơ cấp
Những câu kiểu “đừng lo quá” cũng khó mà tin được
Không phần cứng nào lưu trữ vĩnh viễn được, nhưng bài này trông vẫn giống clickbait
Tôi muốn biết phải làm thế nào để giữ SSD ở trạng thái chỉ được cấp nguồn
Tôi muốn kéo dài tuổi thọ SSD dùng để backup, nên đang phân vân giữa việc cắm nó trong server,
hay dùng một thiết bị chỉ cấp điện đơn thuần
Tôi từng lấy ra một ổ HDD 17 năm tuổi và nó vẫn đọc được
Tuy nhiên cần để trong túi chống tĩnh điện và bảo quản ở môi trường khô ráo
Nhưng không rõ bộ điều khiển có thực hiện các tác vụ bảo trì nội bộ chỉ với nguồn điện hay không
Có lẽ có thể suy ra qua việc thời gian bật nguồn trong SMART tăng lên
Dù XDA không phải nguồn đáng tin lắm,
tôi nghĩ giờ đã đến lúc phải hỏi trực tiếp các nhà sản xuất SSD
Với những SSD luôn có điện nhưng hầu như không đọc tới nhiều file,
tôi muốn biết liệu bộ điều khiển có tự refresh hay không
hay là phải định kỳ đọc tất cả file theo cách thủ công
Nhưng không có cách nào để xác nhận điều đó ngoài đời thực
Không biết liệu có thể phát hiện hoạt động nội bộ qua sự thay đổi mức tiêu thụ điện hay không
dd if=/dev/disk of=/dev/nullđể đọc toàn bộ blockTôi tò mò quy trình cần làm để “sạc lại” một SSD đã tắt vài tháng là gì
Chỉ cần cắm vào là đủ, phải để bật trong vài giờ,
hay cần chạy thứ như lệnh TRIM?
Sẽ rất hay nếu có ai làm thử nghiệm dài hạn để đo thời gian refresh,
nhưng đến lúc có kết quả thì có lẽ bộ điều khiển mới đã ra đời rồi
Đừng chỉ tin vào phần cứng, cần xác minh tính toàn vẹn bằng nhiều bản sao lưu
Hầu như không có thiết bị lưu trữ flash phổ thông nào thật sự tập trung vào khả năng lưu giữ dữ liệu dài hạn
Sẽ thật tuyệt nếu lấy ra một thẻ SD 25 năm tuổi mà dữ liệu vẫn còn,
nhưng hiện nay thị trường đang thiếu hẳn kiểu sản phẩm đó
Ý tưởng sản phẩm: hộp cold storage có cấp nguồn
Một thiết bị gắn nhiều SSD M.2, tự động đọc định kỳ rồi lại ngắt điện
Nếu thành công thì hiện đèn xanh, và sẽ tốt hơn nữa nếu chạy được bằng pin
Đau đầu thật. Cứ dùng cloud đi.