私は、ユーザクリックのような多くの追跡イベントを格納する巨大なテーブルを持っています。月ごとのMySQLテーブルパーティション
テーブルはすでに数百万の10にあり、毎日大きくなっています。 大規模な時間枠からイベントを取得しようとするとクエリが遅くなり始め、対象をかなり読み込んだ後にテーブルを分割するとパフォーマンスが向上する可能性があることを理解しています。
私がやりたいことは、月ごとにテーブルを分割することです。
私は毎月手動でパーティションを分割する方法を示すガイドしか見つけられていませんが、MySQLに月単位でパーティションを設定する方法はありますか?
もしそうでなければ、パーティション化された列がdatetimeであると手動で検討するコマンドは何ですか?
一度一度パーティションを分割すると、翌年は同じパーティションに移動することになりますか? – shaharmor
確かに、この特定のハッシング方法。また、 – Wolph
の 'YEAR(tr_date)* 12 + MONTH(tr_date)'を行うことができます。もし私がYEARとMONTHの両方に基づいてハッシュしたいのなら、 'HASH(CONCAT(YEAR(datetimefield)、MONTH – shaharmor