Wann und wie Index nutzen?

Tommy57

Erfahrenes Mitglied
Hallo,

ich habe eine MySQL-Tabelle mit Auktionsdaten. Jede Zeile entspricht einer Auktion von einem Item.

id
continent_id
country_id
factory_id
model_id
tradingday
price

In der Tabelle habe ich Spalten ('continent_id', 'country_id', 'factory_id', 'model_id') in denen ich oft suche, gruppiere und ordne. Diese kriegen klar ein Index, würde ich sagen.
Die Spalte 'tradingday' brauche ich oft, um bestimmte Preise zu ermitteln. Alsodie Spalten 'tradingday' und 'price' stehen eigentlich immer im direkten zusammenhang, sofern es sich um die gleiche model_id handelt.

- Würde ich bei den Spalten 'tradingday' und 'price' zwei Indices, ein Index über zwei Spalten anlegen, oder vllt gar keins? Oder müsste vielleicht die model_id mit den Index rein?
- Wird ein Index automatisch verwendet?

Gruß, Tommy
 
Hallo,

mit Indizes sollte man sparsam umgehen. Dein Primärschlüssel und deine Fremdschlüssel sind bereits ein Index.
Mehr benötigst du nicht. Ein Index erstellt eine Baumstruktur, damit das Ergebnis schneller gefunden wird.

Dir könnte ggf. eine Partition weiter helfen. Aber an sich, ich würde es so lassen wie es ist und ein paar Wochen beobachten.
 
Danke für die Antworten. Ich werde mir mal dieses Explain und Analyze näher anschauen. Schein ziemlich interessant zu sein^^
 
Zurück