Wenn ich einen Satz von Tags (< 100) haben, und eine Reihe von Objekten (~ 25.000), wobei jedes Objekt eine Teilmenge der Tags hat, wissen Sie, von einer vorhandenen Datenstruktur, die für eine schnelle erlauben würde, Abrufen von Objekten, die eine boolesche Funktion der Tags erfüllen?Datenstruktur zur Beschleunigung der In-Memory-Suche nach Objekten auf der Booleschen Funktion der Tags?
Addition/Löschen von Tags und Objekte müssen nicht besonders schnell, aber die Auswahl der Objekte mit Tags, die die Boolesche Funktion erfüllen sollte.
Nun, da ich meine Frage geschrieben habe, sieht es so aus, als ob ich eine In-Memory-Datenbank beschreibe, aber ursprünglich dachte ich an eine binäre baumartige Struktur für die Objekte, wo für jeden Zweig links/rechter Zweig wäre gleichbedeutend mit der Entscheidung über have/have-not einige Tags. Aber das würde keine Pflege-Tags zulassen? Ich frage mich, wie ich mich gefragt habe, ob das schon einmal gemacht wurde und es schwer ist, nach Datenstrukturen zu suchen.
- Vielen Dank im Voraus - Paddy.
Ich nehme zur Kenntnis, dass die Antwort hier: http://stackoverflow.com/questions/3538322/many-to-many-data-structure-in-python ist eine im Speicher DB zu verwenden. – Paddy3118
Die boolesche Funktion kann je nach Benutzereingaben unterschiedlich sein oder ist es nur eine Funktion (oder eine bekannte Gruppe von Funktionen)? Wenn nicht, sieht eine Datenbank wie die beste Option aus und eine Abfragesprache ist wahrscheinlich die beste Wahl. Sie könnten ansonsten eine Datenbank simulieren und inkrementell einen Entscheidungsbaum erstellen, der von den Eingaben abhängt und diesen Baum zwischenspeichert (fungiert als Index). – dirkgently
Hi dirkently, Die Funktion würde auf Benutzereingaben basieren, und schnell genug wäre so schnell im Projekt zu bewerten, aber weil es früh ist - würde ich gerne Optionen erkunden. Vielen Dank. – Paddy3118