2016-06-21 32 views
0

Wie aktualisiere ich einen invertierten Index effizient, wenn Dokumente eingefügt, gelöscht oder aktualisiert werden? sollte ich auch Index-Datei verwenden, um Index zu speichern, oder sollte ich Index in einer Datenbanktabelle speichern?Wie macht man invertierten Index?

+0

Bitte zeigen Sie den Code, über den Sie sprechen –

+0

Ich habe keinen Code für jetzt. Ich frage nach Ideen, wie Sie es implementieren. – badiya

Antwort

1

Python ermöglicht es Ihnen, Klassen constrcut, die Wörterbuch-ähnliche Schnittstelle implementieren und thatc Ould alle invertierten Indizes halten Sie wünschen würde -

Aber Sie sind zu weit gefasst auf Ihre Frage. Das "extradict" -Python-Paket (pip install extradict), zum Beispiel, hat ein "BijectiveDict", das einfach alle Werte als Schlüssel und umgekehrt freilegt und alles synchronisiert hält - aber es ist ein einfacher symmetrischer Schlüssel, ein Wertspeicher.

Wenn Sie komplexe, verschachtelte Dokumente und Persistenz wünschen, sollten Sie eine vorhandene NoSQL-Datenbank wie MongoDB, Codernity, ElasticSearch, ZODB verwenden, anstatt selbst eine zu implementieren.

+0

danke! Ihr Vorschlag ist wirklich hilfreich – badiya