MySQL-Leistung auf 6 Millionen Zeilen Tabelle

Eines Tages muss ich vermutlich Hadoop lernen und all diese Daten in eine nicht strukturierte Datenbank übertragen, aber ich bin überrascht, dass sich die Leistung in so kurzer Zeit so stark verschlechtert hat.

Ich habe eine MySQL-Tabelle mit knapp 6 Millionen Zeilen. Ich führe eine sehr einfache Abfrage für diese Tabelle durch und glaube, dass alle korrekten Indizes vorhanden sind.

die abfrage ist

SELECT date, time FROM events WHERE venid='47975' AND date>='2009-07-11' ORDER BY date

Das EXPLAIN kehrt zurück

id  select_type     table   type    possible_keys   key     key_len     ref     rows    Extra
1   SIMPLE  updateshows     range   date_idx    date_idx    7   NULL    648997  Using where

Ich verwende also den korrekten Index, soweit ich das beurteilen kann, aber die Ausführung dieser Abfrage dauert 11 Sekunden.

Die Datenbank ist MyISAM und phpMyAdmin sagt, dass die Tabelle 1.0GiB ist.

Irgendwelche Ideen hier?

Bearbeitet: Die date_idx indiziert sowohl die Datums- als auch die venid-Spalte. Sollten das zwei separate Indizes sein?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage