SQL Server で実行され、.net c# で開発されたアプリケーションをサポートしています。アプリケーションはローカル システム (ERP) から情報を取得し、1 日にいくつかのバッチで処理します (ほとんどの場合、1 つのバッチで処理します)。次に、それをチャートとレポートの形式でユーザーに提示します (アプリケーションは基本的にレポート アプリケーションです。データ入力はほとんど行われず、会社のローカル システム上で行われます)。
アプリケーションが実装されたいくつかの大企業では、履歴の量がいくつかの重要なテーブルに蓄積され始めたため、処理時間が大幅に増加し始め、バッチ プロセスあたり 30 分から 6 時間または 7 時間になりました。ソフトウェアの他のいくつかのタスクでも、パフォーマンスが低下しました。
(バッチ処理で) 1 日あたりに処理されるレコードの量は、多かれ少なかれ同じままです (1 日あたり 500.000 から 1'000.000 レコードの間で、複数のテーブルに分散しています)。
これは、SQL Server で実行されているシステムから予期されることですか? Oracle を DB として使用すると、この種の問題が解消されるか、少なくとも軽減されるでしょうか? それとも、使用するDBに関係なく、代わりにDBとアプリケーションの設計に焦点を当てる必要があると思いますか?