なんてことはない、ただの組み換えです。
業務系システムのプログラムなんですが、「90万レコードあるデータベースから、
条件に応じて48万件くらいを抽出する」処理をさせるのに、50分近くかかってました。
これを少しでも短縮させたいため、処理の方法を変えてみました。具体的には、
「ソースのデータベースを全件見てから、条件にあったものを抽出して別のデータ
ベースに書き込む」
という処理を、
「ソースのデータベースを全件見ながら、同時に条件にあったものを抽出して別の
データベースに書き込む」
という処理に変えました。
これにより、処理時間を約3分の2に短縮。さらにこの後続処理で、ソースはレコー
ド数が4万8千件くらいなんだけど30ほどのデータベースに分割して書き込むという
処理があるので、これも同じよう動きに改修。
この二つを通しで効果を見たいのですが、今日は出番がなかった・・・。明日、稼
動予定です。
それにしても・・・業務系のプログラムなのに、テスト環境を使わないで本番一発
にかける当方って、ダメ?
業務系システムのプログラムなんですが、「90万レコードあるデータベースから、
条件に応じて48万件くらいを抽出する」処理をさせるのに、50分近くかかってました。
これを少しでも短縮させたいため、処理の方法を変えてみました。具体的には、
「ソースのデータベースを全件見てから、条件にあったものを抽出して別のデータ
ベースに書き込む」
という処理を、
「ソースのデータベースを全件見ながら、同時に条件にあったものを抽出して別の
データベースに書き込む」
という処理に変えました。
これにより、処理時間を約3分の2に短縮。さらにこの後続処理で、ソースはレコー
ド数が4万8千件くらいなんだけど30ほどのデータベースに分割して書き込むという
処理があるので、これも同じよう動きに改修。
この二つを通しで効果を見たいのですが、今日は出番がなかった・・・。明日、稼
動予定です。
それにしても・・・業務系のプログラムなのに、テスト環境を使わないで本番一発
にかける当方って、ダメ?