Hallo
Ich beisse mir gerade die Zähne an einer Volltextsuche aus, die meiner Ansicht nach viel zu lange dauert (2-3 Sekunden) und bin für jeden Optimierungsvorschlag sehr dankbar. Die Suche dauert erstaunlicherweise noch länger, seit ich Indizes gesetzt habe.
Tabellen:
Artikel (33'000 Einträge), Fulltext auf "name" und "besch", Index auf "kundenid", "katid" und "aktiv".
Kategorien (1700 Einträge), Fulltext auf "name", Index auf "kundenid", "katid" und "aktiv".
Kunden (27 Einträge), Fulltext auf "firma", Primärschlüssel auf "kundenid", Index auf "aktiv".
Die Indizes habe ich nachträglich gesetzt, falls dies einen Einfluss hat.
Ich hoffe, Ihr könnt mir helfen, denn wenn die Suche jetzt schon 2-3 Sekunden dauert, will ich nicht wissen, wie lange sie bei 100'000 oder 1'000'000 Artikel dauert
Besten Dank.
Ich beisse mir gerade die Zähne an einer Volltextsuche aus, die meiner Ansicht nach viel zu lange dauert (2-3 Sekunden) und bin für jeden Optimierungsvorschlag sehr dankbar. Die Suche dauert erstaunlicherweise noch länger, seit ich Indizes gesetzt habe.
Code:
SELECT l.firma, COUNT( * ) as anzahl
FROM artikel a, kategorien k, kunden l
WHERE MATCH (
a.name, a.besch, k.name, l.firma
)
AGAINST (
'+test*'
IN BOOLEAN
MODE
)
AND a.katid = k.katid
AND a.aktiv = '1'
AND a.kundenid = l.kundenid
AND l.aktiv = '1'
AND k.aktiv = '1'
GROUP BY l.firma
ORDER BY anzahl DESC , l.firma ASC
LIMIT 0 , 30
Tabellen:
Artikel (33'000 Einträge), Fulltext auf "name" und "besch", Index auf "kundenid", "katid" und "aktiv".
Kategorien (1700 Einträge), Fulltext auf "name", Index auf "kundenid", "katid" und "aktiv".
Kunden (27 Einträge), Fulltext auf "firma", Primärschlüssel auf "kundenid", Index auf "aktiv".
Die Indizes habe ich nachträglich gesetzt, falls dies einen Einfluss hat.
Ich hoffe, Ihr könnt mir helfen, denn wenn die Suche jetzt schon 2-3 Sekunden dauert, will ich nicht wissen, wie lange sie bei 100'000 oder 1'000'000 Artikel dauert

Besten Dank.