Khi xây dựng hệ thống NAS tự làm tại nhà, một trong những điều khiến tôi phải cân nhắc rất nhiều là lựa chọn giữa ZFS và Btrfs – hai trong số những hệ thống tệp (filesystem) phổ biến nhất hiện nay. Có rất nhiều điểm tương đồng giữa cả hai với các tính năng như snapshot, xác minh tính toàn vẹn dữ liệu và copy-on-write để tăng hiệu quả. Nhưng tôi không thể chỉ tin vào những gì trông tốt trên giấy tờ; chúng cần phải chứng minh được khả năng thực tế của mình. Tôi muốn ưu tiên mức tiêu thụ điện năng thấp, quản lý sao lưu dễ dàng và tính toàn vẹn dữ liệu lâu dài trên phần cứng “tự chế” của mình. Sau nhiều tháng sử dụng và thử nghiệm song song, tôi đã chọn Btrfs, và thành thật mà nói, tôi không hề cảm thấy muốn quay lại – đây là những lý do.
7. Yêu cầu bộ nhớ thấp hơn
ZFS được biết đến là “ngốn” RAM. Hầu hết các khuyến nghị đều đề xuất ít nhất 8GB bộ nhớ, và lý tưởng là nhiều hơn nếu bạn muốn sử dụng các tính năng như chống trùng lặp (deduplication) hoặc các biện pháp tăng hiệu suất khác. Điều đó tốt nếu bạn đang chạy một máy chủ với RAM ECC và phần cứng cấp doanh nghiệp, nhưng hệ thống của tôi khiêm tốn hơn nhiều.
NAS của tôi chạy trên một chiếc mini-PC khiêm tốn với 4GB RAM và bộ xử lý cấp thấp. Vì vậy, Btrfs chạy thoải mái trong môi trường bộ nhớ thấp như của tôi và không yêu cầu tinh chỉnh ngay từ đầu. Nó cho phép tôi sử dụng trọn vẹn phần cứng đã có mà không gặp trục trặc hiệu suất hoặc yêu cầu chi thêm tiền.
Bo mạch chủ MSI MAG Forge 112R lắp đặt trong NAS DIY cấu hình thấp
6. Hỗ trợ gốc trên Linux
ZFS không phải là một phần của nhân Linux; nó được duy trì bởi dự án OpenZFS và phân phối dưới dạng một module kernel riêng biệt. Sự không đồng bộ này có vẻ không lớn nhưng có thể và thực sự gây ra các vấn đề khi nhân Linux cập nhật nhanh hơn module ZFS. Vì vậy, bạn phải tích cực suy nghĩ về việc quản lý nâng cấp kernel hoặc cầu mong không có gì bị hỏng – đây không phải là một chiến lược an toàn cho một thứ quan trọng như hệ thống tệp NAS.
Mặt khác, Btrfs được tích hợp ngay vào nhân Linux. Điều đó thường có nghĩa là khả năng tương thích lâu dài tốt hơn và sửa lỗi nhanh hơn. Và đối với cá nhân tôi, điều đó có nghĩa là ít lo lắng hơn trong quá trình nâng cấp hệ thống. Vì NAS của tôi chạy trên Linux, Btrfs hoạt động trơn tru với các bản cập nhật, mang lại cho tôi sự yên tâm.
Giao diện máy tính xách tay chạy Arch Linux, hệ điều hành phổ biến cho NAS DIY
5. Thiết lập và quản lý đơn giản hơn
ZFS có thể mạnh mẽ, nhưng việc thiết lập của nó cũng cứng nhắc và gần như khó khăn. Bạn phải lên kế hoạch trước cách nhóm các ổ đĩa lại với nhau và tạo các ZFS pool vì khó có thể thực hiện các thay đổi cấu trúc sau này. Ngay cả các tác vụ cơ bản như thêm ổ đĩa và thay đổi kích thước pool cũng đòi hỏi một chút mày mò.
Btrfs thuận tiện và linh hoạt hơn nhiều trên khía cạnh này. Các tác vụ như tạo volume mới, bật nén và tạo subvolume về cơ bản là dễ dàng, và việc thêm ổ cứng vào hệ thống cũng vậy. Tôi thà sử dụng NAS của mình và tất cả các ứng dụng đã cài đặt còn hơn dành toàn bộ thời gian cố gắng quản lý hệ thống tệp và những rắc rối của nó. Đó là lý do tại sao Btrfs có ý nghĩa hơn đối với tôi.
Khe cắm NVMe trên thiết bị NAS Synology DS925+, minh họa phần cứng lưu trữ NAS
4. Tích hợp tốt hơn với công cụ bên thứ ba
Rất nhiều ứng dụng Linux được xây dựng xung quanh Btrfs, giúp chúng cực kỳ dễ dàng ghép nối với các hệ thống như của tôi. Tôi cần chức năng snapshot vừa để sao lưu vừa là cách dễ dàng để quay trở lại phiên bản gần đây nếu có gì đó bị hỏng. Snapper và Timeshift là hai trong số những công cụ đáng tin cậy nhất cho nhiệm vụ này, và chúng hoạt động với Btrfs ngay cả ở cấp độ subvolume để tự động hóa quá trình snapshot và giúp việc phục hồi trở nên cực kỳ dễ dàng.
Snapshot của ZFS chắc chắn khá mạnh mẽ, nhưng nhiều công cụ desktop Linux như vậy không tích hợp tốt với ZFS ngay từ đầu. Và vì NAS của tôi đôi khi cũng đóng vai trò như một desktop Linux nhẹ, Btrfs đã giúp tôi không phải tự viết script mọi thứ một cách thủ công.
Máy tính MacBook kết nối tới NAS, minh họa việc quản lý dữ liệu và snapshot
3. Linh hoạt khi thêm ổ đĩa
Như đã đề cập trước đó, ZFS yêu cầu bạn phải lên kế hoạch cho các pool lưu trữ của mình trước, khiến việc thêm ổ đĩa mới sau này không còn là trải nghiệm “cắm là chạy”. Nó thường yêu cầu bạn phải tạo các virtual devices (vdevs) hoàn toàn mới, điều này rõ ràng là cồng kềnh.
Với Btrfs, tôi có thể thêm bộ nhớ khi cần vào các hệ thống tệp hiện có và cân bằng lại dữ liệu mà không cần xây dựng lại toàn bộ pool từ đầu. Điều đó có ý nghĩa hơn đối với nhu cầu của tôi hơn là việc phải mua thêm bộ nhớ không cần thiết ngay từ đầu chỉ để sống chung với những hạn chế của ZFS.
Các khay ổ đĩa trong hệ thống Lenovo ThinkSystem SR250 V2, minh họa khả năng mở rộng lưu trữ NAS
2. Hiệu quả năng lượng
Trong khi hiện tại tôi đã giảm thời gian NAS hoạt động online, tôi đã từng chạy nó 24/7 cho đến gần đây. Và khi bạn có NAS chạy trong thời gian dài như vậy, hiệu quả năng lượng thực sự quan trọng. Vì ZFS sử dụng nhiều tài nguyên bộ nhớ, CPU và ổ đĩa hơn, nó đương nhiên là một “kẻ ngốn” điện.
Từ những gì tôi đã tìm hiểu khi so sánh cả hai hệ thống tệp, Btrfs nhẹ nhàng hơn nhiều cho RAM và CPU của bạn khi ở chế độ chờ. Nó cũng ít khi giữ cho các ổ đĩa quay thường xuyên. Điều này không chỉ tiết kiệm điện mà còn giúp hệ thống yên tĩnh hơn và giảm mài mòn ổ đĩa, đảm bảo NAS tại nhà của bạn bền bỉ hơn.
Kết nối cáp mạng Ethernet vào NAS TerraMaster F4-424 Max, liên quan đến hoạt động và năng lượng của NAS
1. Hỗ trợ nén trong suốt
Đúng là cả Btrfs và ZFS đều hỗ trợ nén trong suốt, nhưng tôi thấy cách tiếp cận của Btrfs tiện lợi hơn một chút. Nó cho phép tôi bật nén trên cơ sở từng subvolume, vì vậy tôi có thể chọn loại dữ liệu nào nên được nén mà không cần định dạng lại toàn bộ hệ thống.
Các thuật toán nén cho các tệp nhật ký (log files), bản sao lưu cài đặt và tài liệu hoạt động rất tốt – hệ thống xử lý mà không có bất kỳ sự suy giảm hiệu suất đáng kể nào. Đó là một cách hay để có thêm một chút không gian lưu trữ mà không cần suy nghĩ quá nhiều về nó. Mặc dù ZFS cũng cung cấp các lợi ích tương tự, nhưng sự linh hoạt và dễ sử dụng trong Btrfs đã thuyết phục tôi chọn cái sau.
Thiết bị NAS Ugreen, minh họa cho việc lưu trữ và nén dữ liệu hiệu quả
Học hỏi từ kinh nghiệm thực tế
Có giới hạn về những gì bạn có thể tìm hiểu về một chiếc NAS trước khi mang nó về nhà hoặc tự xây dựng cho mình. Một khi bạn đã thiết lập xong, có rất nhiều bài học – cả tốt và xấu – bạn sẽ học được trong quá trình tối ưu hóa hệ thống cho nhu cầu của mình. Và bạn không thể đẩy nhanh quá trình học hỏi đó, bạn phải tự mình trải nghiệm, giống như tôi đã làm với Btrfs và ZFS, trước khi có thể quyết định mình muốn gì. Nhưng đôi khi, bạn có thể học được một số bài học từ sai lầm của người khác để trải nghiệm NAS của chính bạn trở nên tốt hơn ngay từ ngày đầu tiên.