送信者と受信者のデータを保存する chat_log テーブルがあります。構造は
SENDER RECEIVER DATE
現在の実装: 毎月、1 月に行われたすべてのチャットを格納する JAN、2 月に行われたすべてのチャットを格納する FEB などの MyIsam テーブルを作成します。
chat_log
3 月 31 日に、複数のチャット テーブル JAN、FEB、MAR を含むマージ テーブルがあるとします。
4 月 1 日に、定義を FEB MARCH AND APRIL に変更する必要があります。
ここでテーブルをマージするのが最適です。問題は、ユーザーがエントリを削除するたびに、そのエントリをテーブルから削除する必要があることです。テーブルは myisam をマージしているため、これは非常にゆっくりと発生しています。
だから私は何をすべきか:
- 私はinnodbを選択するかもしれませんが、それはより高速ですが、IDはマージテーブルをサポートしていないため、定義を最初に変更するたびに困難になります。
- マージでパーティショニングを使用しても、それほど役に立ちません。