※ この記事は公開されてから1年以上経過しているため、情報が古い可能性があります。
最近になって、やっとSpring Batchなるものを知りました(^ω^;)
しばらくJava系の勉強から離れていたもので… ← 言い訳(爆)
ということで、まきさんのブログを参考にさせていただいたり、Qiitaの投稿記事や英語のサイト、@Configurationの仕組みを知るためにソースをダウンロードしたりして、コツコツ勉強しました。
いやいや、なんとも便利なものです(・∀・)
まぁ何かを作ったらGitHubにあげようと思います<(_ _)>
その中で@Scheduledという繰り返し機能を知ったのですが、これがまた便利で、cronの機能もあったりします。
ただ、実行される度にDBに実行結果がINSERTされるので、結構肥大化してきます。
大した件数ではないものの、やはり10秒毎とかになってくるとそこそこの件数です。
そこで、指定日以前のデータはごっそり削除するシェルを作成してみました!
毎度ながらコードはGistに上がってますので、そちらを加工したりして使ってみてください(・∀・)
各種サイトを参考に作らせていただいてますので、当然フリーライセンスでございます!
特に以下のサイトを参考にさせていただきました!
ありがとうございます!
参考
参考サイトにもあるように、DELETEを実施する順番が大事です。
実際にこちらのサイトを見ると分かる通り、FOREIGN KEYがガッツリ貼られているのでこれを回避するようにSQLを実行しなくてはいけません。
それと全件消してしまわないことだけ気をつければ、後は自由に消せると思います♪
こちらのシェルですが、cronで実行しても問題ないように1トランザクション内で実行するように作っています。(多分…)
ツッコミがあればご指摘ください>(_ _)<
というものを作りました…というお話でした(`・ω・´)