/ / Wie wirkt sich Partitionierung auf Indizes in MySQL aus - MySQL, Partitionierung, Datenbankpartitionierung

Wie wirkt sich die Partitionierung auf Indizes in MySQL aus - mysql, Partitionierung, Datenbankpartitionierung

Ich bin ein Neuling bei MySQL und entschuldige mich im Vorauswenn die Frage dumm erscheint Ich habe eine Transaktionsprotokolltabelle, die sehr groß ist (enthält 18 Millionen Zeilen) und wächst sehr schnell. Die Datensätze, die älter als 3 Monate sind, werden in den täglichen Abläufen nicht verwendet. Daher suche ich nach einer Möglichkeit, die Tabelle zu teilen und dann die älteren Datensätze zu archivieren. Ich betrachte die Partitionierung der Tabelle als eine Möglichkeit um dies zu tun. Meine Frage ist diese:

Wenn ich die Tabelle basierend auf einem Datum partitioniereSpalte, wie wirkt sich das auf die Indizes aus, die NICHT auf der partitionierten Datumsspalte basieren? Wenn es eine Auswahlabfrage gibt, die einen dieser Indizes verwendet, wird dann auch die Partition mit den älteren Datensätzen durchsucht? denn diese Art von Niederlagen besiegt für mich den ganzen Punkt der Teilung.

Gibt es einen anderen Ansatz, den Sie empfehlen würden?

Danke im Voraus.

Antworten:

1 für die Antwort № 1

(eine nicht antwort)

PARTITIONing ist nur in wenigen Anwendungsfällen nützlich. Lassen Sie uns Ihre sehen SELECTs So können wir überlegen, ob eine Partitionierung von ihnen profitieren würde.

Wenn Ihre Fragen wie "zählen" zählen Sie die Widgets fürletzte Woche ", dann sehen Sie sich vielleicht Data Warehouse-Techniken wie" Summary Tables "an. Dies ist ziemlich effektiv, leistungsmäßig und erfordert (normalerweise) keine Partitionierung.

Weitere Informationen zum Partitionieren von Anwendungsfällen: http://mysql.rjweb.org/doc.php/latlng