- Hệ thống tệp phân tán đơn giản và có khả năng mở rộng cao
- Mục tiêu là lưu trữ hàng tỷ tệp và phục vụ chúng với tốc độ cao
- Được hiện thực dựa trên ý tưởng từ thiết kế Haystack của Facebook và f4: hệ thống lưu trữ Warm BLOB của Facebook
- Kho lưu trữ blob có tra cứu đĩa O(1) và khả năng phân tầng đám mây
- Filer hỗ trợ thư mục và thuộc tính POSIX, đồng thời bao gồm cloud drive, sao chép active-active giữa các DC, Kubernetes, mount POSIX FUSE, S3 API, S3 gateway, Hadoop, WebDAV, mã hóa, erasure coding cùng nhiều tính năng khác
Tính năng
- Cung cấp nhiều tùy chọn sao chép như mức độ sao chép, nhận biết rack và trung tâm dữ liệu.
- Tự động chuyển đổi dự phòng cho máy chủ master, không có điểm lỗi đơn lẻ.
- Hỗ trợ nén Gzip tự động theo loại MIME của tệp.
- Tự động nén để thu hồi dung lượng đĩa sau khi xóa hoặc cập nhật dữ liệu.
- Có thể tăng tổng dung lượng lưu trữ bằng cách bổ sung máy chủ.
- Không tái cân bằng dữ liệu khi thêm/xóa máy chủ, chỉ được kích hoạt bằng lệnh quản trị.
- Hỗ trợ thay đổi kích thước ảnh, ETag, Accept-Range, Last-Modified, v.v.
- Hỗ trợ tinh chỉnh chế độ in-memory/leveldb/readonly để cân bằng bộ nhớ và hiệu năng.
- Cung cấp nhiều tầng lưu trữ có thể tùy biến và tích hợp đám mây minh bạch.
- Erasure coding 10.4 nhận biết rack cho warm storage giúp giảm chi phí lưu trữ và tăng tính sẵn sàng.
Tính năng của Filer
- Máy chủ Filer phục vụ thư mục và tệp “thông thường” qua HTTP.
- Tự động hết hạn metadata tệp và dữ liệu tệp thực tế bằng TTL của tệp.
- Có thể đọc và ghi tệp trực tiếp qua filer được mount bằng FUSE.
- Có thể đạt HA cho kho lưu trữ metadata bằng sao chép kho lưu trữ Filer.
- Có thể truy cập tệp bằng các công cụ S3 thông qua API tương thích Amazon S3.
- Có thể truy cập tệp từ Hadoop/Spark/Flink thông qua hệ thống tệp tương thích Hadoop.
- Lưu trữ dữ liệu an toàn bằng kho mã hóa AES256-GCM.
- Hỗ trợ lưu trữ các tệp dung lượng lớn lên tới hàng chục TB.
- Cloud drive cho phép mount lưu trữ đám mây vào cụm cục bộ để hỗ trợ đọc và ghi nhanh.
Kubernetes
- Hỗ trợ trình điều khiển Kubernetes CSI và SeaweedFS operator.
Ví dụ sử dụng kho lưu trữ object của Seaweed
- Hướng dẫn cổng mặc định và cách chạy node master cùng node volume.
- Cung cấp ví dụ về cách ghi, đọc và xóa tệp.
- Giải thích sao chép nhận biết rack và trung tâm dữ liệu, cũng như cách gán khóa tệp vào trung tâm dữ liệu cụ thể.
Kiến trúc
- SeaweedFS quản lý các volume dữ liệu mà không chia tệp thành các chunk.
- Máy chủ master chỉ quản lý metadata về volume, còn metadata tệp thực tế được quản lý trên máy chủ volume.
- Cung cấp mô tả chi tiết về quy trình ghi và đọc tệp.
So sánh với các hệ thống tệp khác
- Giải thích ưu điểm của SeaweedFS khi so sánh với HDFS, GlusterFS, Ceph, MooseFS, MinIO, v.v.
- SeaweedFS được tối ưu cho tệp nhỏ và cung cấp truy cập tệp nhanh với thao tác đọc đĩa O(1).
Kế hoạch phát triển
- Dự kiến cung cấp thêm công cụ và tài liệu cho việc quản trị và mở rộng hệ thống.
- Hỗ trợ đọc và ghi dữ liệu luồng.
- Hỗ trợ dữ liệu có cấu trúc.
Hướng dẫn cài đặt
- Cung cấp hướng dẫn cài đặt cho người dùng chưa quen với Golang.
Chủ đề liên quan đến đĩa
- Giải thích về hiệu năng của ổ cứng HDD và SSD.
- SeaweedFS có cấu trúc thân thiện với SSD.
Benchmark
- Cung cấp kết quả benchmark đơn máy mang tính cá nhân, không theo phương pháp khoa học nghiêm ngặt.
- Hướng dẫn cách chạy benchmark hỗn hợp bằng WARP.
Giấy phép
- Được cấp phép theo Apache License, Version 2.0.
Ý kiến của GN⁺:
- SeaweedFS là một hệ thống tệp phân tán hướng tới việc quản lý hiệu quả các tệp nhỏ và phân phối tệp nhanh. Điều này khiến nó rất phù hợp với các dịch vụ web hiện đại xử lý dữ liệu quy mô lớn.
- Hệ thống mang lại tính linh hoạt nhờ khả năng tương thích với nhiều loại kho lưu trữ và cơ sở dữ liệu, đồng thời cho phép quản lý dữ liệu tiết kiệm chi phí thông qua các tính năng tích hợp đám mây.
- Là một dự án mã nguồn mở, SeaweedFS nhận được sự hỗ trợ từ cộng đồng và liên tục phát triển, nên cũng là một dự án thú vị ở góc độ kỹ thuật.
1 bình luận
Ý kiến Hacker News
Nhắc đến JuiceFS
Trải nghiệm sử dụng SeaweedFS
Trải nghiệm tiêu cực với SeaweedFS
Ý kiến của nhà phát triển SeaweedFS
Trường hợp sử dụng SeaweedFS
Ý kiến về SeaweedFS và Min.io
Người dùng SeaweedFS lâu năm
Lịch sử công nghệ lưu trữ của Microsoft
Những điểm cần cân nhắc khi chọn lưu trữ phân tán
So sánh hiệu năng giữa SeaweedFS và Min.io