2012-03-28 5 views
0

Ich frage mich, ob jemand den richtigen Weg vorschlagen kann, um mit zend_search_lucene neu zu indizieren. Es gibt keine Option zum Aktualisieren von Dokumenten, Sie müssen sie löschen und neu hinzufügen. Ich habe eine Reihe von Datenbanktabellen, die ich umkehre und für jeden Index ein Dokument hinzufüge. Ich sehe keinen Sinn darin, Dokumente zu löschen, während ich gehe - ich kann auch den gesamten Index leeren und dann alles neu hinzufügen.zend_search_lucene rebuild index

Es scheint nicht eine einfache deleteAllDocs() -Methode zu sein, also muss ich sie alle zuerst finden, dann über sie hinwegschleifen, sie einzeln löschen, dann meine Datenbanktabellen durchlaufen und sie alle hinzufügen. Es gibt auch keine getAllDocuments-Methode (obwohl es eine Lösung gibt http://forums.zend.com/viewtopic.php?f=69&t=9121)

Offensichtlich könnte ich etwas Phantasie schreiben, die überprüft, ob das Dokument geändert hat, und löschen Sie es nur, wenn dies der Fall ist, aber dies beinhaltet einen Vergleich aller Felder doesn oder?

Ich fühle mich wie ich etwas verpassen muss.

+0

Ich fragte mich, ob ich einen neuen Index erstellen, den alten löschen und umbenennen sollte. Aber es gibt keine offensichtlichen Möglichkeiten zum Löschen und Umbenennen. So wie ich es verstehe, ist dies das, was das Commit sowieso macht. – xanld

Antwort

0

Ich lösche den Index und erstelle einen neuen Index. mehr oder weniger als here

Verwandte Themen