Sie könnten versuchen, eine spaltenbasierte Datenbank zu verwenden. Diese Arten von Datenbanken eignen sich viel besser für analytische Abfragen der Art, die Sie beschreiben. Es gibt mehrere Möglichkeiten:
http://en.wikipedia.org/wiki/Spaltenorientiertes_DBMS
Wir haben gute Erfahrungen mit InfiniDB gemacht:
und Infobright sieht auch gut aus:
Sowohl InfiniDB als auch Infobright haben kostenlose Open-Source-Community-Editionen, daher würde ich empfehlen, diese zu verwenden, um einige Benchmarks zu den möglichen Leistungsvorteilen zu erhalten.
Möglicherweise möchten Sie auch Ihre Daten partitionieren, um die Leistung zu verbessern.