Colossus cho thiết bị lưu trữ tốc độ cao
(cloud.google.com)> “Giao thức trạng thái Colossus” là thành phần bí mật tạo nên hiệu năng cao của Rapid Storage
- Google Cloud Storage được sử dụng rộng rãi nhờ tính đơn giản và khả năng mở rộng
- Giao thức phi trạng thái dựa trên REST hiện có tuy dễ dùng, nhưng gặp vấn đề về độ trễ và thiếu các tính năng lấy tệp làm trung tâm đối với khối lượng công việc AI và dữ liệu chuyên sâu
- Rapid Storage giải quyết vấn đề này bằng cách đưa vào giao thức truyền phát gRPC có trạng thái, đồng thời vẫn giữ nguyên khả năng mở rộng và thông lượng của object storage
Điểm mạnh của kiến trúc dựa trên Colossus
- Colossus là hệ thống tệp cấp cụm nội bộ của Google, đóng vai trò công nghệ nền tảng cho các sản phẩm hiệu năng cao
- Hỗ trợ đọc/ghi dữ liệu độ trễ cực thấp bằng giao thức có trạng thái
- Client mở tệp để nhận handle và từ đó có thể giao tiếp trực tiếp với đĩa
- Sử dụng giao thức tương tự RDMA để truy cập nhanh, đồng thời áp dụng tối ưu hóa SSD và kỹ thuật ghi song song
- Phù hợp với khối lượng công việc ghi log và phân tích streaming đòi hỏi độ bền dữ liệu
Cách hoạt động của giao thức trạng thái Colossus
- Khi mở tệp ở chế độ append, Curator tạo handle và chuyển cho client
- Ứng dụng ghi dữ liệu log vào client, sau đó client dùng handle để ghi song song lên nhiều đĩa
- Dữ liệu được sao chép lên nhiều đĩa để lưu trữ bền vững, và ghi dựa trên quorum giúp giảm thiểu độ trễ
Hiệu năng và ví dụ sử dụng của Rapid Storage
- Client Cloud Storage xử lý trước việc xác thực và truy cập metadata khi tạo luồng gRPC
- Sau đó, các thao tác đọc/ghi kết nối trực tiếp tới Colossus nên vẫn duy trì độ trễ cực thấp
- Có thể xử lý 20 triệu yêu cầu mỗi giây trên mỗi bucket — phù hợp cho khối lượng công việc AI/ML quy mô lớn
-
Thiết kế được tối ưu cho huấn luyện AI/ML
- Lý tưởng để đọc không tuần tự các tệp dữ liệu lớn chứa từ hàng trăm triệu đến hàng tỷ token
- Có thể tạo stream khi bắt đầu huấn luyện và thực hiện đọc phạm vi song song với độ trễ cực thấp
- Có thể cung cấp nhanh các mẫu dữ liệu trong quá trình huấn luyện mà không bị chậm do độ trễ lưu trữ
-
Xử lý append an toàn và hiệu quả
- Có thể append không giới hạn vào một object (trong giới hạn kích thước object)
- Nhờ handle, ngay cả khi stream bị gián đoạn vẫn có thể tiếp tục đọc/ghi sau khi kết nối lại
- Mỗi object chỉ cho phép một stream ghi tại một thời điểm — stream mới sẽ khóa stream trước đó theo cách giao dịch
- Mỗi lần append đều chỉ rõ offset ghi để đảm bảo tính nhất quán dữ liệu
Tích hợp và API của Rapid Storage
- Đang cập nhật SDK để hỗ trợ tính năng append dựa trên gRPC
- Được tích hợp vào Cloud Storage FUSE, cho phép truy cập bucket Cloud Storage như một file system
- Cũng liên kết với Hierarchical Namespace để tăng cường hiệu năng và tính nhất quán, đồng thời hỗ trợ API dựa trên thư mục
Các lợi thế kết hợp của Rapid Storage
- Độ trễ cực thấp ở cấp độ block storage
- Thông lượng cao ở cấp độ parallel file system
- Đồng thời cung cấp cả khả năng mở rộng và sự đơn giản của object storage
2 bình luận
Nghe nói Colossus rất tốt, nhưng tôi khá tò mò không biết những ai đã thực sự dùng nó ở bên trong thấy thế nào.
Ý kiến Hacker News