R. U. Serious hat geschrieben:mySQL eigene Volltext-Suche
Bei mir im Forum sind etwa 8.000 Posts gespeichert. Es werden 4,3 MB belegt. Nach dem Setzen des FULLTEXT-Index werden 8,1 MB belegt, sind also gerade mal 3,8 MB Speicherplatz, der für den Index benötigt wird.
Meine Search-Tabellen belegen insgesamt 10,7 MB, was in etwa 3 mal soviel ist.
Wäre also eine Alternative.
Aber, jetzt kommt das große Aber, die Fulltext-Suche ist noch nicht ausgereift, leider nur eine halbe Sache. Ich habe eine 3.x Version von MySQL auf meinem Server und weiß nicht wie es in der 4.x aussieht. Ich habe auch nur einen Server gemietet und habe keine Möglichkeit irgendwelche Einstellung vorzunehmen.
FULTEXT hat so seine Nachteile:
- Findet nur komplette Begriffe, keine "Bruchstücke" (Suche nach 'Auto'
findet nicht 'Autotür' etc.)
- Keine Verwendung der "Jokerzeichen" % und _
- Bestimmte Suchbegriffe werden nicht gefunden (Der englische Begriff 'while' z.B. wird nicht indiziert, also auch nicht
gefunden)
und es gibt noch einiges mehr
eine ungeheure Last beim suchen
Ja erwähnte ich, bis zu einer gewissen Grenze ist es vertretbar und bei kleineren Foren mit begrenztem Speicherplatz wäre es eine Alternative.
Ich möchte aber bemerken, dass ich natürlich einer indizierten Suche in jedem Fall den Vorrang gebe.
Wir haben mal spaßenshalber ein
Projekt mit einer derartigen Likesuche erstellt. Es sind etwa 10.500 Datensätze mit insgesamt 324.460 Suchworten gespeichert. Die Tabelle belegt etwa 4,2 MB in der Datenbank. Das ist etwa die Größenordnung meines derzeitigen Forums.
Also wie schon erwähnt, es ist eine Alternativ, aber keine vernüftige Lösung. Ein gutes Forum sollte ein schnelle Suche haben.