TheHingineer

  • DBMS


  • DBMS Part-1

  • DBMS Part-2

  • DBMS Part-3

  • DBMS Part-4

  • DBMS Part-5

  •  Recoverability in DBMS 

     Recoverability kya hota hai?

    Recoverability ka matlab hota hai ki agar system crash ho jaye ya koi transaction fail ho jaye, to hum database ko wapas ek sahi aur consistent state mein laa sakein.
    Matlab — galat ya aadha data save na ho jaye!


     Recoverability zaroori kyu hoti hai?

    Socho ki ek student database mein marks update kar raha hai:

    • Agar update ke beech mein light chali gayi ya system crash ho gaya,

    • Toh system ko aise design kiya hona chahiye ki:

      • Koi aur transaction uspe depend na kare,

      • Aur galat ya aadha data na save ho jaye.

    Isi concept ko recoverability bolte hain.

     Transaction aur Dependency samjho

     Transaction kya hota hai?

    Ek Transaction ek set of operations hota hai jo ek saath chalna chahiye — ya to poora chale ya bilkul na chale.

     Dependency?

    Kabhi kabhi:

    • T2 transaction, T1 ke updated data ko read karta hai.

    • Agar baad mein T1 fail ho gaya, toh T2 bhi galat ho gaya!

    Recoverability ensure karta hai ki aisa na ho.

     Types of Recoverability:

     1. Recoverable Schedule

    • Jab T2 ne T1 ke data ko read tab hi kiya jab T1 pehle commit kar chuka ho, toh schedule ko Recoverable bolte hain.

     Example:

    TimeTransaction T1Transaction T2
    t1Write(X) 
    t2 Read(X) (from T1)
    t3Commit 
    t4 Commit

    Yahaan pehle T1 commit hua, fir T2 ne read kiya, toh ye schedule recoverable hai.

     2. Non-Recoverable Schedule

    • Agar T2 ne T1 ka data read kar liya T1 ke commit hone se pehle, aur baad mein T1 fail ho gaya, toh database inconsistent ho jayega.

     Example:

    TimeTransaction T1Transaction T2
    t1Write(X) 
    t2 Read(X) (from T1)
    t3 Commit
    t4Rollback 

    Yahaan T2 ne commit kar liya lekin T1 fail ho gaya, toh T2 galat data store kar chuka hai.

    Isliye isse Non-Recoverable Schedule bolte hain.

     3. Cascadeless Schedule

    Ye recoverable se bhi safe hota hai.

    • Isme T2 tabhi T1 ka data read karta hai jab T1 pehle se commit ho chuka ho.

    • Isse cascading rollback ka risk khatam ho jata hai.

     

     

     Summary Table

    Schedule TypeT2 read karta hai after T1 commit?Risk of InconsistencySafe hai?
    Recoverable Yes Nahi Haan
    Non-Recoverable No Haan Nahi
    Cascadeless Yes Nahi Haan

       Important Points:

    • Recoverability ensure karta hai ki agar koi transaction fail ho jaye, toh database safe rahe.

    • Non-recoverable schedules dangerous hote hain — data inconsistent ho sakta hai.

    • Cascadeless schedule safest hota hai — rollback bhi nahi lagta.

    Scroll to Top