Cheatah: (mysql php) Geschwindigkeitsoptimierung bei Suche? oder Anzeige?

Beitrag lesen

Hi,

Oder sollte man in der Tabelle lieber nur drei Spalten für die Kategorien belegen

nah dran, aber doch leicht daneben :-)

Du hast hier eine typische n:m Beziehung: n (1 bis oo) Datensätze werden mit je m (1 bis 3) Kategorien verknüpft. Das heißt, Du hast eine Tabelle "Daten", u.a. mit einer ID, eine Tabelle "Kategorien", ebenfalls mit einer (eigenen) ID, und eine Verknüpfungstabelle "Daten_Kategorien" mit den beiden Spalten "ref_Daten" und "ref_Kategorien" ("ref" für "Referenz" - den Namen kannst Du natürlich beliebig wählen).

und die Kategorien z.B. zuvor mit einem Index belegen?

Dass Du sinnvolle Indizes erstellst, die auf die SQL-Statements passen, ist eh klar.

Suche: Wenn z.B. Fahrrad ausgewählt: Gehe in Spalte Kategorie 1 und suche nach Fahrrad, gehe dann in Kategorie 2 suche nach Fahrrad und gehe in Kategorie 3 und suche nach Fahrrad.

Problematisch wird es spätestens dann, wenn Du eine vierte Kategorie erlauben willst - und wenn Du eine Suche über mehrere Kategorien zulässt, wird _dieses_ Statement kaum noch les-, geschweige denn wartbar :-)

Optmiert werden soll die Suchzeit bei sehr vielen gleichzeitigen Suchanfragen.

Welches DBMS verwendest Du eigentlich?

Cheatah