リランを考慮したデータの考え方
リランを考慮したデータの考え方についてです。
夜間のバッチで大量データを処理する場合、バルク処理で例えば5000件ずつ処理してコミットしたい場合などがあります。
10万件データがあったとして、9万1件目のデータが不正なデータでバッチ処理がこけた場合、リランすると思いますが、残りの1万件だけを処理するように設計します。
例えば以下のようにデータを持ちます。
単位 | 数量 | 料金 | 料金年月日 |
100 | 5 | 500 | (null) |
バッチ処理は、料金年月日 is nullのデータを取得するようにし、処理し終わったら料金年月日をsysdateでアップデートします。
これでリランするときは、途中でこけても残りのデータだけ処理するようなデータになります。
KHI入社して退社。今はCONFRAGEで正社員です。関西で140-170/80~120万から受け付けております^^
得意技はJS(ES6),Java,AWSの大体のリソースです
コメントはやさしくお願いいたします^^
座右の銘は、「狭き門より入れ」「願わくは、我に七難八苦を与えたまえ」です^^
コメント