Wie die Struktur eines index für type ahead für sehr große datasets mit Lucene oder ähnlichen?

Ich habe einen Datensatz von 200million+ Aufzeichnungen und bin auf der Suche um zu bauen ein dediziertes backend macht ein type-ahead-Lösung. Lucene ist von Interesse aufgrund seiner Beliebtheit und Lizenz-Typ, aber ich bin offen für andere open-source-Vorschläge als gut. Ich bin auf der Suche nach Rat, Geschichten aus den Schützengräben, oder noch besser direkte Anweisungen, was ich benötige soweit Menge an hardware und die Struktur der software. Anforderungen:

Müssen:

  • Die Fähigkeit zu tun, beginnt mit substring-matching (I-Typ in der 'st' und es sollte mit 'Stephen')
  • Die Möglichkeit, die Ergebnisse sehr schnell, ich würde sagen, 500ms ist eine Obere Schranke.

Schön zu haben:

  • Die Fähigkeit zu ernähren Relevanz von Informationen in der Indizierung, so dass, zum Beispiel, beliebter Begriffe würde zurückgegeben werden, vor den anderen und nicht nur alphabetisch, aka Google Stil.
  • In-Wort-substring-matching, also beispielsweise ('st' würde passen 'bestseller')

Hinweis:

  • Dieser index wird rein verwendet werden, für Art Voraus, und braucht nicht zu dienen standard-Suche Abfragen.
  • Ich bin nicht besorgt über immer Ratschläge, wie Sie den front-end-oder AJAX, solange der index abgefragt werden kann als service oder direkt über Java-code.

Up Stimmen für jede nützliche Informationen, die mir ermöglicht, näher an eine enterprise-Ebene mit type ahead-Lösung

InformationsquelleAutor Peter | 2010-05-04
Schreibe einen Kommentar