- Hoạt động như một message bus cho AI và edge computing, là một engine đồng bộ hiệu năng cao
- Cơ sở dữ liệu thời gian thực log-native: được thiết kế để giải quyết bài toán nhất quán dữ liệu và khả năng phản hồi thời gian thực trong môi trường edge AI và edge computing
- Kết hợp engine lưu trữ B+Tree với sao chép streaming dựa trên WAL (Write-Ahead Logging) để bảo đảm sao chép dưới một giây và tính nhất quán mạnh giữa hàng trăm node
- Kiến trúc multimodel hỗ trợ lưu trữ Key-Value, Wide-Column và Large Object (LOB)
- Thông báo thời gian thực dựa trên ZeroMQ giúp phát hiện thay đổi ở mức mili giây
- Thiết kế Edge-First được tối ưu cho kiến trúc local-first
- Hỗ trợ multi-tenancy thông qua cô lập namespace
- Khác biệt so với các hệ thống hiện có:
- LMDB/BoltDB là kho lưu trữ cục bộ nhanh nhưng không thể sao chép
- etcd/Consul có tính nhất quán cao nhưng bị giới hạn về khả năng mở rộng
- Kafka/NATS mạnh về streaming nhưng không thể truy vấn
- UnisonDB lấp đầy khoảng trống này bằng cách cung cấp một kiến trúc tập trung vào log duy nhất, tích hợp lưu trữ và streaming
- Kiến trúc lõi 3 tầng
- 1. WALFS(Write-Ahead Log File System)* – hệ thống tệp log dựa trên mmap, tối ưu cho đọc/ghi quy mô lớn
- Cấu trúc log theo từng segment, tối ưu cả ghi tuần tự lẫn đọc ngẫu nhiên
- Hỗ trợ đọc zero-copy, tìm kiếm dựa trên offset, tailing thời gian thực
- Cấu trúc nhiều reader song song cho phép nhiều node sao chép cùng lúc đọc dữ liệu
- 2. Engine – lưu trữ lai kết hợp WAL, MemTable và B-Tree
- Dựa trên WALFS để kết hợp MemTable (skiplist) và chỉ mục B-Tree
- Sử dụng FlatBuffers để có thể truyền trong lúc sao chép mà không cần giải tuần tự
- Hỗ trợ giao dịch đa khóa nguyên tử, bảo đảm tính nhất quán theo đơn vị commit
- LOB (đối tượng dung lượng lớn) có thể được xử lý theo chunk và stream theo đơn vị giao dịch
- Mô hình Wide-Column hỗ trợ cập nhật cột từng phần và mở rộng schema động
- 3. Replication – sao chép streaming dựa trên WAL, bao gồm tính năng theo dõi offset
- Sao chép streaming dựa trên WAL cho phép follower theo dõi offset để đồng bộ theo thời gian thực
- Sử dụng bản ghi log FlatBuffer để duy trì cấu trúc dữ liệu tự mô tả
- Triển khai streaming hiệu quả bằng truyền theo lô
- Hiệu năng đọc nhanh gấp khoảng 2 lần so với BoltDB, với thiết kế ưu tiên tính nhất quán
- Cách UnisonDB giải quyết vấn đề
- Kết hợp append-only log + B-Tree để cung cấp ghi tốc độ cao và đọc phạm vi hiệu quả
- Hỗ trợ sao chép đa khóa dựa trên giao dịch và đồng bộ hóa nhận biết cột
- Thực hiện sao chép tích hợp bằng gRPC WAL streaming + snapshot B-Tree
- Cấu trúc không cần compaction giúp đạt độ trễ có thể dự đoán và thông lượng cao
- Giấy phép: Apache License 2.0
- Ngôn ngữ phát triển: Go
- Lĩnh vực phù hợp: edge AI, IoT phân tán, xử lý dữ liệu local-first, hệ thống phân tích thời gian thực
Chưa có bình luận nào.