1

毎年約 500 万から 1000 万のイベントを保存しており、現在は運用データを分離するデータマートを構築しています。私の質問:

  1. 「イベント テーブル」を削除して最初からやり直すよりも、特定の年からログに記録されたイベントを移動してデータ マートに保存しますか?
  2. 特定の年のイベントを格納する年ごとに新しいテーブルを作成します。つまり、 INSERT INTO 2011_actionrecord action= 'whathappened' などINSERT INTO 2012_actionrecord action= 'whathappened' などです。
  3. それとも何か他のことをしますか?

どうもありがとう

4

1 に答える 1

2

1)「期限切れ」になったら、ログに記録されたイベントをトランザクションデータベースからデータマートに移動します。これは通常、「ローリング」期間中に行われます(したがって、実際には毎月、またはより高いサイクルで物を削除する必要があります)。それらをデータマートに追加し(必要な変換を含む)、関連するレコードを初期テーブルから削除します。テーブルとインデックスをわざわざ削除しないでください(ただし、手動でインデックスを更新することもできます)。

2)パーティションを使用し、通常どおりテーブルをクエリ(および挿入)します:MySQLパーティション

于 2011-07-22T23:33:31.087 に答える