2013-06-17 43 views

Trả lời

7

Không có giới hạn độ dài khóa trong LevelDB. Các khóa là các mảng byte tùy ý có độ dài bất kỳ. Bạn có thể sử dụng url dài như bạn đã cung cấp trong câu hỏi của mình.

Họ đề cập đến ở đây là các phím là mảng byte ... https://code.google.com/p/leveldb/

Là một thử nghiệm, tôi chèn một số tài liệu với các phím mà đã lâu một triệu ký tự. Nó hoạt động tốt.

+0

Điều này không cung cấp câu trả lời cho câu hỏi. Để phê bình hoặc yêu cầu làm rõ từ tác giả, hãy để lại nhận xét bên dưới bài đăng của họ. – johnvey

+3

Tôi sẽ làm rõ câu trả lời của mình. Nó cho phép các phím rất dài. –

+0

@BrandonJoyce Bạn có thể trích dẫn câu trả lời của mình không? Tôi muốn đọc thêm. –

0

Không có giới hạn lý thuyết về độ dài khóa, nhưng DB có thể không hiệu quả lắm với các khóa dài và bản ghi ngắn. Có một chỉ mục ở phía trên cùng của các tệp SST chứa các khóa và các offset trong tệp và các khóa trong các khối chỉ mục này được cắt nhỏ nhị phân để định vị các hàng.

Chỉ cần suy nghĩ - bạn có thể muốn thực hiện một số biện pháp khử trùng trên các URL trước khi sử dụng chúng làm khóa thô. ví dụ: canonicalise tên miền và trường hợp của giao thức, chuẩn hóa thứ tự của các tham số truy vấn, v.v.