以前、投降した「
ユーザ様 向け提案活動で必要となった性能測定結果」で紹介した「
RerunnableBatch_sample3」は、「疑似フェッチ方式」と「バッチINSERT、UPDATE文生成機能」によって「
ストアド並みの性能」を叩き出しています。
...が、しかし、Oracle の ODP.NETの「フェッチサイズ」と「配列バインド」の機能を使用すれば、これらの処理方式での開発は不要で、フツーのオンライン開発と同じような実装スタイルでバッチ処理も実装できてしまいます。
...と、非常に強力な機能であるため、他のデータプロバイダも、ODP.NETのように「フェッチサイズ」と「配列バインド」の機能に追随して欲しい気がしますが、ADO.NET仕様が策定され、主要なRDBMSのデータプロバイダが出揃ってから長らく経ちましたが、今のトコロ、その気配はありません。ODP.NETスペシャルな機能実装と言う事かと思います。
なので、この機能を使用するデメリットを強いて挙げるとすると、「
クロスDB対応」で他のデータプロバイダに乗り換えようとしたときに、処理方式を変える必要があると言う点でしょうか。
<参考>