EloqKV , một cơ sở dữ liệu phân tán tương thích với Redis , đã thu hút sự chú ý không chỉ bởi khả năng kỹ thuật mà còn bởi cách tiếp cận cấp phép kép bất thường. Công ty cung cấp phần mềm của họ dưới cả hai giấy phép GNU General Public License phiên bản 2 ( GPLv2 ) và GNU Affero General Public License phiên bản 3 ( AGPLv3 ), cho phép người dùng lựa chọn một trong hai giấy phép. Quyết định này đã gây ra cuộc thảo luận sôi nổi trong cộng đồng lập trình viên về các tác động pháp lý và thực tiễn của chiến lược như vậy.
Các Tùy Chọn Cấp Phép EloqKV
- Tùy chọn 1: Giấy phép Công cộng GNU, Phiên bản 2 ( GPLv2 )
- Tùy chọn 2: Giấy phép Công cộng Affero GNU, Phiên bản 3 ( AGPLv3 )
- Lựa chọn của Người dùng: Các nhà phát triển có thể chọn một trong hai giấy phép cho trường hợp sử dụng của họ
- Lý do: Tương thích với hệ sinh thái rộng lớn hơn của EloqData bao gồm EloqSQL ( MariaDB / GPLv2 ) và EloqDoc ( MongoDB / AGPLv3 )
Mối quan ngại pháp lý về chiến lược cấp phép kép
Cách tiếp cận cấp phép kép đã làm dấy lên sự quan ngại trong cộng đồng lập trình viên, với nhiều người đặt câu hỏi về lợi ích thực tiễn và các phức tạp pháp lý tiềm ẩn. Các lập trình viên đặc biệt lo ngại về cách điều này ảnh hưởng đến việc đóng góp và các quyết định cấp phép trong tương lai. Vấn đề cốt lõi xuất phát từ việc GPLv2 thường được coi là ít hạn chế hơn AGPLv3 , khiến nhiều người thắc mắc tại sao lại có ai chọn tùy chọn AGPL hạn chế hơn.
CEO của EloqData giải thích rằng việc cấp phép kép xuất phát từ cách tiếp cận hệ sinh thái rộng lớn hơn của họ. Công ty sử dụng một lớp nền tảng gọi là DataSubstrate để xây dựng nhiều sản phẩm cơ sở dữ liệu, bao gồm EloqSQL (tích hợp mã MariaDB dưới GPLv2 ) và EloqDoc (sử dụng mã MongoDB dưới AGPLv3 ). Để duy trì tính tương thích trên toàn bộ bộ sản phẩm của họ, họ đã chọn cấp phép kép.
Tuy nhiên, một số lập trình viên bày tỏ sự hoài nghi về tính khả thi lâu dài của cách tiếp cận này. Một mối quan ngại là chiến lược này có thể không đạt được mục tiêu dự định là ngăn chặn các nhà cung cấp đám mây lớn sử dụng phần mềm mà không đóng góp lại, vì các công ty này có thể đơn giản chọn tùy chọn GPLv2 và tránh hoàn toàn các nghĩa vụ AGPL .
Hiệu suất kỹ thuật thu hút người dùng thực tế
Bất chấp các mối quan ngại về cấp phép, EloqKV đang thu hút việc áp dụng trong thế giới thực dựa trên giá trị kỹ thuật của nó. Cơ sở dữ liệu này tuyên bố có thể xử lý 1,6 triệu truy vấn mỗi giây trên các instance AWS c6g.xlarge trong khi cung cấp đầy đủ các giao dịch ACID và khả năng phân tán mà Redis tiêu chuẩn thiếu. Một số công ty đã báo cáo triển khai thành công trong môi trường sản xuất, đặc biệt là để thay thế các instance Redis đơn nút lớn.
Người dùng nhấn mạnh các lợi thế cụ thể như loại bỏ các vấn đề độ trễ liên quan đến RDB fork của Redis và khả năng xử lý khối lượng công việc vượt quá dung lượng bộ nhớ thông qua việc phân tầng tự động sang lưu trữ đĩa. Hệ thống hỗ trợ các tính năng nâng cao như script Lua phân tán mà không có giới hạn khai báo khóa được tìm thấy trong một số lựa chọn thay thế Redis , làm cho nó hấp dẫn đối với các ứng dụng đa thuê bao phức tạp.
So sánh tính năng EloqKV và Redis
Tính năng | EloqKV | Redis |
---|---|---|
Hiệu suất | Đa luồng (1.6M QPS trên c6g.xlarge) | Đơn luồng |
Giao dịch | BEGIN/COMMIT/ROLLBACK (ACID) | MULTI/EXEC (Không có Rollback) |
Giao dịch phân tán | Liên node, ACID đầy đủ | Chỉ Redis API |
Độ bền dữ liệu | WAL được sao chép | Snapshot AOF/RDB hạn chế |
Lưu trữ dữ liệu lạnh | Tự động phân tầng vào đĩa | Phải vừa với bộ nhớ |
![]() |
---|
So sánh hiệu suất của EloqKV , Redis và Dragonfly dưới khối lượng công việc hỗn hợp làm nổi bật lợi thế của EloqKV |
Phản hồi cộng đồng định hình hướng phát triển
Nhóm phát triển đã tích cực tích hợp phản hồi từ cộng đồng kể từ lần phát hành đầu tiên của họ. Dựa trên đề xuất của người dùng, họ đã thêm cú pháp giao dịch kiểu phiên quen thuộc hơn với người dùng SQL , cải thiện tài liệu kiến trúc của họ, và cam kết thử nghiệm chính thức với Jepsen để xác minh hệ thống phân tán.
Công ty cũng đang mở rộng ra ngoài không gian key-value, với kế hoạch thêm khả năng tìm kiếm vector để tận dụng làn sóng ứng dụng AI . Điều này định vị EloqKV như một phần của chiến lược rộng lớn hơn để tạo ra cơ sở hạ tầng cơ sở dữ liệu thống nhất có thể xử lý các khối lượng công việc đa dạng mà không cần sự phức tạp của việc quản lý nhiều hệ thống chuyên biệt.
Mục tiêu của chúng tôi là tạo ra nền tảng cơ sở dữ liệu thế hệ tiếp theo để hỗ trợ nhu cầu ngày càng tăng từ thế hệ ứng dụng mới. Chúng tôi tin rằng các ứng dụng được điều khiển bởi AI agent trong tương lai sẽ tạo ra khối lượng lớn truy vấn và dữ liệu sẽ khó xử lý với các giải pháp hiện có.
Trong khi cuộc tranh luận về cấp phép vẫn tiếp tục, khả năng kỹ thuật và cách tiếp cận phát triển tích cực của EloqKV cho thấy nó có thể tìm thấy vị trí thích hợp của mình trong số các tổ chức tìm kiếm khả năng tương thích Redis với đảm bảo tính nhất quán mạnh mẽ hơn và hỗ trợ giao dịch phân tán.
Tham khảo: EloqKV
![]() |
---|
So sánh hiệu suất thông lượng và độ trễ giữa EloqKV và Kvrocks minh họa những cải tiến phát triển dựa trên phản hồi người dùng |