正解は エ
デッドロック(Deadlock)はデータベースやOSで、複数のトランザクション(プロセス)が互いに相手がロックしているリソースを待ち合う状態です。デッドロックを回避するための設計ガイドラインとして最も有効なのは「複数のリソースをロックする際に、全てのトランザクションが同じ順番でロックを取得するように設計する」ことです。設問の選択肢dの「複数レコードを更新するときにロックを掛ける順番を決めておき、全てのバッチ処理がこれに従って処理する」がこの方針に相当します。例えばAとBを常に「Aを先にロック、次にBをロック」の順番に固定すれば、A待ちとB待ちの循環が発生しません。
デッドロック回避の基本策=「ロック取得の順序を全トランザクションで統一する」。他のデッドロック対策:①タイムアウト検出後のロールバック②デッドロック検出アルゴリズム(DBMS機能)③トランザクションを短くする(ロック保持時間を短縮)。「ロック順序の統一」が根本的な設計対策。