2013-06-17 7 views

Antwort

7

In LevelDB gibt es keine Schlüssellängenbeschränkung. Keys sind beliebige Byte-Arrays beliebiger Länge. Sie können eine lange URL verwenden, die Sie in Ihrer Frage angegeben haben.

Sie hier erwähnen, dass die Schlüssel sind Byte-Arrays ... https://code.google.com/p/leveldb/

Als Test eingefügt ich einige Dokumente mit Schlüsseln, die eine Million Zeichen lang waren. Es hat gut funktioniert.

+0

Dies liefert keine Antwort auf die Frage. Um einen Autor zu kritisieren oder um Klärung zu bitten, hinterlasse einen Kommentar unter seinem Beitrag. – johnvey

+3

Ich werde meine Antwort klären. Es erlaubt Schlüssel sehr lang zu sein. –

+0

@BrandonJoyce Können Sie bitte Ihre Antwort anführen? Ich würde gerne mehr lesen. –

0

Es gibt keine theoretische Begrenzung für die Schlüssellänge, aber die Datenbank ist möglicherweise nicht sehr effizient mit langen Schlüsseln und kurzen Datensätzen. Oben in den SST-Dateien befindet sich ein Index, der die Schlüssel und die Offsets in der Datei enthält. Die Schlüssel in diesen Indexblöcken sind binär zerhackt, um nach Zeilen zu suchen.

Nur ein Gedanke - Sie möchten vielleicht die URLs sanieren, bevor Sie sie als rohe Schlüssel verwenden. B. den Domänennamen und den Fall des Protokolls kanonisch machen, die Reihenfolge der Abfrageparameter kanonisieren usw.

Verwandte Themen