/ / Volltextsuche nach Heroku, Datenbank und oder Indexer Auswahl? - Python, Heroku, Volltextsuche, Nosql, Flasche

Volltextsuche bei Heroku, Datenbank und / oder Indexer Auswahl? - Python, Heroku, Volltextsuche, Nosql, Kolben

Ich freue mich auf die Umsetzung (frei wie im Bier) Volltextsuche in einer kleinen Anwendung aufHeroku (minimale Anzahl von Benutzern, begrenzter Datensatz). Ich bemühe mich jedoch, das beste Muster dafür zu finden. Eine Möglichkeit besteht darin, die 10-MB-Grenze von xeround zu verwenden, solange es dauert (wir können dies in naher Zukunft überschreiten) auf MongoDB oder CouchDB.

Bei den Dokumenten in dieser Anwendung handelt es sich um archivierte E-Mails, die ich über eine Mailingliste auffindbar machen möchte. Es gibt etwa 10.000 solcher E-Mails, Klartext, und zwar ungefähr 700 Byte.

Ich würde Fuzzy-Suchfunktionen bevorzugen, also den Push für whoosh.

Zu meinen Anforderungen (hätte ich früher erwähnen sollen) soll es sein frei!)

Ich habe keine Muster für die Verwendung von whoosh mit MongoDB in einer Python-Kolbenanwendung gefunden.

Kann jemand weitere Informationen zur Volltextsuche in einer kleinen Heroku-Python-Anwendung bereitstellen?

Antworten:

2 für die Antwort № 1

Also habe ich es nicht ausprobiert, aber http://tenderlove.github.com/texticle/ scheint zu implizieren, dass Sie native pgsql verwenden könnenVolltextsuche, wenn Sie innerhalb der Speichergrenzen liegen können. Das Problem mit whoosh ist, dass Sie Probleme mit dem Festplattenspeicher und seiner Persistenz innerhalb der Heroku-Regeln haben werden.

Die andere Sache ist, mit den Add-Ons zu arbeiten, wie von den Entwicklungsdokumenten vorgeschlagen: http://devcenter.heroku.com/articles/full-text-search

Was Muster angeht, muss man grundsätzlich das tunVolltextsuche und Abrufen von Daten / IDs von Datensätzen und Abfrage des Datenspeichers (Mongo) nach dem vollständigen Datensatz basierend auf den Volltextergebnissen. Es ist ein manueller Prozess, aber nichts, was zu seltsam ist. Wenn für die Suche keine vollständigen Datensätze erforderlich sind, können Sie normalerweise die wichtigen Daten mit den Volltextinformationen unterbringen, dies erhöht jedoch die Größe der Volltextindizierung.


0 für die Antwort № 2

Pysolr löst dein Problem.


0 für die Antwort № 3

Haben Sie sich überlegt, Apache SolR zu verwenden? Ich denke, es ist die beste Lösung für eine Freitext-Suchmaschine. Es ist kostenlos und Open Source.

Um SolR von Python aus zu verwenden, empfehle ich Ihnen die MySolr Bibliothek. Ist ziemlich schneller und einfacher zu benutzen als pysolr (man kann einige Statistiken sehen) Hier)