1か月前のデータをlogging テーブルからlogging-archive テーブルに移動し、1 年以上前のデータを後のテーブルから削除する必要があります。
大量のデータがあります (2 か月で 600k 挿入)。
毎日/毎週、ストアド プロシージャを単純に呼び出す (バッチ処理する) ことを検討していました。
私は最初に2ストアドプロシージャを実行することを考えました:
- アーカイブから365 日より古いものを削除する
- ロギングからアーカイブへのデータの移動、30日より古いもの(1つのSQLクエリでそれを行う方法があると思います)
- 30 日より古いものをログから削除します。
ただし、この解決策は非常に非効率的で、DB が数分間ロックされる可能性があります。これは望ましくありません。
では、代替手段はありますか?それらは何ですか?