[TYPO3-german] Indexed Search Optimierung
Stefan Frömken
firma at sfroemken.de
Mon Jul 18 14:02:45 CEST 2011
Mahlzeit Stephan,
alles was Dir Speed bringen würde hast Du uns verboten in unsere Antwort
mit aufzunehmen. Also: Nein.
Mit 150.000 Datensätzen wird der Index für index_word entsprechend groß.
Problem bei MySQL: Der FULLTEXT-Index ist langsam und selbst wenn Du auf
MATCH AGAINST umsteigen würdest, so kannst Du dann nur noch nach "...%"
suchen.
Wir entwickeln ke_search und können aus Erfahrung sagen, dass MySQL ab
einer bestimmten Datenmenge Dank seinem FULLTEXT-Index einen
Flaschenhals aufweist, den man dann gerne auf externe Indexer auslagert.
Wir verwenden z.B. Sphinx für unsere PREMUIM-Version von ke_search. Das
ist ne Sache von knapp 10-15 Minuten diesen Sphinx-Index auf Deinem
Server zu installieren.
Ich könnte mir vorstellen, dass man noch knapp 20% mehr Speed rausholen
könnte, wenn man indexed_search auf Basis von Prepared-Statements
umbauen würde. <ein Haufen Arbeit und not tested!!!>
Stefan
Am 18.07.2011 13:41, schrieb Stephan Vidar:
> Hallo zusammen,
>
> in einem Intranet haben wir die Indexed Search im Einsatz.
>
> Mittels Crawler werden auch externe Dokumente (hauptsächlich PDF)
> indiziert. Die Menge an Dateien (ca. 800) schlägt natürlich nun auch mit
> entsprechend großen Index-Tabellen zu Buche (z.B. index_rel: 500.000
> Einträge; index_word: 150.000 Einträge) was die Suche nun mit
> Antwortzeiten von ca. 10 Sekunden und mehr gewaltig ausbremst.
>
> Der Root-Server läuft unter Linux ist dediziert und eigentlich ganz
> ordentlich ausgestattet. Die Suche nach Teilstrings via LIKE '%...%' ist
> außerordentlich wichtig und kann nicht abgeschaltet werden. Auch sind
> andere Lösungen wie Solr, mnoGoSearch oder kesearch innerhalb dieses
> Projektes derzeit nicht gewünscht und greifbar. Sieht hier jemand
> trotzdem Möglichkeiten, das Ganze zumindest ein wenig zu optimieren?
>
> Gruß, Stephan
More information about the TYPO3-german
mailing list