画面上でのユーザーアクションにより、約50の異なるテーブルにリアルタイムで新しいレコードが作成されるシナリオがあります。ユースケースの設計では、ユーザーの操作の結果として作成された新しいレコードが、ユーザーが変更を加えるためにすぐに必要になるようになっています。したがって、オフラインまたは作成の遅延の可能性はありません。
そうは言っても、明らかな問題は、挿入ステートメント(およびいくつかの追加の操作ステートメント)がトランザクション内にあるため、非常に長いトランザクションになることです。これは約30秒間実行され、多くの場合、タイムアウトになるか、他のクエリがブロックされます。
アトミック性にはトランザクションが必要です。トランザクションを分割し、一貫性を維持するためのより良い方法はありますか?または、現在の状況を改善する他の方法はありますか?