TheHingineer

  • DBMS


  • DBMS Part-1

  • DBMS Part-2

  • DBMS Part-3

  • DBMS Part-4

  • DBMS Part-5

  •  Log Based Recovery in DBMS

    Log-based recovery ek technique hai jisse hum database ko crash hone ke baad wapas recover kar sakte hain — jaise agar system band ho gaya ho, ya power cut ho gaya ho.

    Ye technique ek special file ka use karti hai jise hum Log file kehte hain.


     Log File kya hoti hai?

    Log file ek aisi file hoti hai jisme har transaction ke steps likhe jaate hain. Agar system crash ho jaye, toh hum log file padke decide karte hain:

    • Kise dubara repeat (REDO) karna hai (agar transaction complete ho gaya tha),

    • Aur kise wapis (UNDO) lena hai (agar transaction adhoora tha).

    Log file me kya likha hota hai?

    [Transaction ID, Operation, Data Item, Old Value, New Value]

    Example:
    Agar T1 ne balance ko 500 se 700 banaya, toh log record hoga:

    [T1, WRITE, balance, 500, 700]

     Types of Log Records

    1. BEGIN Transaction → Jab transaction start hoti hai.

    2. WRITE Operation → Jab koi value update hoti hai.

    3. COMMIT → Jab transaction successfully complete ho jaati hai.

    4. ABORT → Jab transaction cancel hoti hai.

     Example Scenario

    Maan lo 2 transactions chal rahi hain: T1 aur T2.

    Time Log Entry
    1 BEGIN T1
    2 WRITE T1, X, 10, 20
    3 BEGIN T2
    4 WRITE T2, Y, 30, 40
    5 COMMIT T1
    6  System crash ho gaya
     

    Ab kya hoga?

    • T1 ne commit kar diya tha  → isliye REDO karenge.

    • T2 ne commit nahi kiya  → isliye UNDO karenge.

     REDO aur UNDO ka matlab

    • REDO → Committed transactions ke operations ko dubara apply karna.

    • UNDO → Adhoore transactions ke changes ko wapis lena (reverse karna).

     Recovery Process Diagram

    ┌──────────┐      ┌──────────┐
    Log File │────> │ Recovery │
    │          │      │ Manager  │
    └──────────┘      └──┬───────┘
                         │
             ┌─
    ──────────▼─────────┐
             │ REDO committed Txs  │
             │ UNDO uncommitted Txs│
             └
    ─────────────────────┘

     Log-based Recovery ke Fayde

    • Data consistent rehta hai.

    • System automatically recover kar leta hai.

    • REDO aur UNDO process easy ho jaati hai.


     Summary Table

    Term Meaning (Simple)
    Log Transaction ka step-by-step record
    REDO Jo complete ho gaya usse phir se apply karo
    UNDO Jo adhoora raha uske changes ko hatao
    COMMIT Transaction complete ho gaya
    ABORT Transaction fail ya cancel ho gaya
     
    Scroll to Top