2012-11-16 35 views
11

Có vẻ như không có giao diện như vậy ..Làm cách nào để có được số lượng khóa chính xác trong leveldb nhanh?

Tôi có phải lặp lại tất cả các phím để nhận số không?

Mục đích thiết kế của mục đích đó là gì? Hoặc giới hạn của việc triển khai tính năng này là gì?

+0

Có, bạn phải lặp qua tất cả các phím, trừ khi bạn thực hiện bản ghi của riêng mình khi bạn chèn/xóa bản ghi (điều này khá dễ dàng). – Kiril

Trả lời

9

"Không có cách nào để thực hiện Đếm hiệu quả hơn trong leveldb so với bên ngoài". bang chính thức issue 113

Hình như không có cách nào tốt hơn để làm điều đó, trừ trường hợp một trong hai lặp thông qua toàn bộ dữ liệu hoặc thực hiện của riêng bạn trong ứng dụng on-viết truy cập.

1

Có lẽ khi LevelDB được xây dựng, API này không bắt buộc đối với các tác giả gốc. Đáng buồn là LevelDB không có API gia tăng mà bạn có thể sử dụng để ghi lại số đếm. Những gì bạn có thể làm ngay bây giờ là đọc và viết một khóa trong Leveldb, nhưng đây không phải là luồng an toàn.

Có thể bạn có thể xem Redis, nếu nó phù hợp hơn cho trường hợp sử dụng của bạn.

Các vấn đề liên quan