Thiết bị ZFS và bộ nhớ cache


9

Tôi sẽ thêm một ổ SSD vào kho lưu trữ ZFS của mình dưới dạng bộ đệm. Bất cứ ai cũng có kinh nghiệm với điều này? Điều gì xảy ra nếu thiết bị bộ đệm chết, liệu mọi dữ liệu có bị ảnh hưởng không?

Câu trả lời:



13

Về cơ bản có ba loại bộ đệm ZFS, tất cả được sử dụng cho cả dữ liệu và siêu dữ liệu.

  • ARC (Bộ đệm thay thế thích ứng) - Bộ nhớ cache DRAM bộ nhớ chính để đọc và ghi.
  • L2ARC (Cấp độ 2 ARC) - bộ đệm đọc an toàn: không mất dữ liệu / gián đoạn dịch vụ do lỗi thiết bị. Thường dựa trên SSD.
  • ZIL (ZFS Intent Log) - giữ an toàn ghi trên bộ nhớ vĩnh viễn cũng đang chờ trong ARC để được xóa vào đĩa. Dữ liệu hiếm khi tồn tại trong bộ đệm này lâu hơn 30 giây và dữ liệu không bao giờ được đọc ngoại trừ sau khi gặp sự cố để phát lại bất kỳ nhóm ghi không được cam kết nào. Trên bất kỳ phiên bản ZFS nào gần đây, lỗi thiết bị Zil sẽ không gây mất dữ liệu (tất cả dữ liệu vẫn còn trong ARC), nhưng lỗi thiết bị + sự cố hoặc mất điện có thể khiến một số ghi bị mất.

Nâng cấp ARC của bạn trước, mua vô số bộ nhớ chính. Lưu ý L2ARC và Zil đều có phân bổ phí ngoài ARC.

L2Arc được điền bởi các khối được lưu trong bộ nhớ cache khi chúng bị đuổi khỏi ARC. ZFS theo mặc định chỉ lưu trữ IO ngẫu nhiên (đọc nhỏ) vào L2ARC và không được sử dụng để truyền tải khối lượng công việc ( trừ khi được hướng dẫn ). Về cơ bản, bạn có thể sử dụng bất kỳ thiết bị nào cho việc này (bao gồm HD 15k nhanh) nhưng nó hoạt động tốt nhất với ổ SSD xử lý nhiều IOPS đọc ngẫu nhiên một cách dễ dàng.

ZIL tăng tốc khối lượng công việc yêu cầu ghi đồng bộ (các quy trình chờ xác nhận rằng ghi thực sự đã được cam kết vào đĩa trước khi tiếp tục thực hiện). Zil thực hiện vai trò tương tự như bộ đệm được hỗ trợ bằng pin trên bộ điều khiển RAID cao cấp. Mặc dù độ trễ ghi và phát trực tiếp IOPS là những gì xác định SSD Zil tốt, nhưng Zil trên tất cả các thứ khác không được để mất bất kỳ dữ liệu nào trong trường hợp mất điện. Nhiều thiết bị phù hợp có một siêu tụ điện để hoàn thiện mọi hoạt động đang chờ xử lý mà không cần nguồn điện hệ thống. SSD SLC có độ bền ghi cao (Intel X25-E) từng được khuyến nghị, nhưng các thiết bị mới hơn sử dụng RAM với pin / siêu tụ điện để ghi lại cho NAND trong trường hợp mất điện. ZIL không cần lớn, nhưng bằng cách chỉ sử dụng một phần nhỏ của thiết bị lớn (ví dụ: 8GB trong số SSD Intel 320 MLC 300 GB), bạn có thể mang lại độ bền ghi hiệu quả cao hơn nhiều. Các nhà cung cấp 'Doanh nghiệp' luôn đề xuất các ZIL được nhân đôi, khối lượng công việc của tôi chưa bao giờ quan trọng đến thế.

Đối với các sản phẩm cụ thể, STEC đã tạo ra các ổ SSD đầu tiên cho dự án Fishworks của Sun (cả Logzilla & Readzilla) và có các thiết bị hiện tại cho cả ZIL ( ZeusRAM $ 2500 / 8GB) và L2ARC ( Zeus IOPS $ 3k / 400GB), cả hai đều được khuyến nghị. SSD dựa trên PCIe cũng đáng để xem xét, như DDRdrive x1 dành riêng cho ZIL ($ 2k / 4GB) hoặc bất kỳ ổ SSD PCIe lớn nào cho L2ARC. Các thiết bị SSD 2.5 inch khác ít hiệu năng hơn (đọc: rẻ hơn) cũng có thể mang lại hiệu suất tăng đáng kể, đặc biệt là khi được sử dụng trong tổng hợp cho L2ARC.


Bạn có chắc OCZ Vertex2 dựa trên ddr không? Tôi thấy nó nand-MLC dựa
disserman

3
OCZ Vertex2Pro là MLC NAND, nhưng không giống như hầu hết các ổ SSD khác, nó có một siêu tụ điện cho phép ghi vào tiến trình để hoàn thành khi mất điện. DDRdrive X1 là 4GB DDR2, 4GB SLC và siêu tụ sao chép ram sang NAND sau 60 giây khi mất điện. Logzilla đang viết SLC NAND được tối ưu hóa bằng một siêu khóa (cũng không có DDR)
báo

cảm ơn, tôi có 2 ssds (dựa trên intel) mà tôi sẽ sử dụng làm thiết bị bộ đệm cho đến khi chúng chết hoặc bảo hành sẽ hết. sau đó nhìn vào đề nghị của bạn
diserman
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.