Hardver hibák és archívum
Lemezhibák megoldása
Háromszoros redundancia
- legalább 3 különböző lemezből 1 meghibásodását ki lehet javítani
n-szereződik minden I/O művelet
Többszörös írás, egyszeres olvasás
nmásolatnkülönböző lemezennkiírás
Adatbázis mentés + napló
- Aktív adatbázis megsérülése a mentésből visszatölthető
- A napló redo bejegyzései alapján visszaállítható a helyes állapot
Helyreállítás mentésekből és naplóból
- A napló a frissebb állapotok visszaállítására jók
- FELTÉTEL, hogy a másolat utáni változtatásokról szóló napló túlélte az eszköz meghibásodását
- Visszaállítjuk a biztonsági másolatot, majd az új állapotot a naplóból álítjuk elő
Feltételek
- A biztonsági másolat legyen más helyen, mint az adatbázis, plz
- A napló lemeze különbözik az adatbázist tároló lemez(ek)-től
- A naplót megtartjuk ellenőrzőpont létrejötte után is
- A napló REDO vagy UNDO/REDO jellegű (mert kellenek az új adatok)
Today's Kotlin wisdom
Láthattuk az előző részek tartalmából, hogy az extra metaadatok miatt márt csak az UNDO napló is önmagában gyorsabban nőhet méretben, mint ~~édesanyád~~ a tény adatbázis...
EA: "A naplókat nem érdemes örökké megőrizni"
Thank you ea, very cool.
Mentések szintjei
Teljes mentés
- (full dump)
- Az egész adatbázisról mentés készül, duh
Növekményes mentés
-(incremental dump)
- Csak az előző növekményes mentés óta történt változtatásokat tartalmazza
- Helyreállításkor a teljes mentés után egyesével újra alkalmazzuk a növekvényes mentéseket
Mentés működés közben
- Mint hagyományos checkpoint esetén, az atomiság rengeteg downtime-ot jelent
- Az sem biztos, hogy megengedhetjük magunknak, hogy addig a rendszer ne működjön
<START DUMP>-al kezdődik- REDO vagy UNDO/REDO jellegű (mert kellenek az új adatok) módszernek megfelelő checkpoint jön létre
- Teljes, vagy növekvényes mentés helye
- Napló mentése (aminek legalább a checkpoint közben létrejött módosításokat tartalmazza), aminek túl kell élnie az eszköz meghibásodását
<END DUMP>zárja le
Példa
<START DUMP>
<START CKPT(T1, T2)>
<T1, A, 1, 5>
<T2, C, 3, 6>
<T2, COMMIT>
<T1, B, 2, 7>
<END CKPT>
<END DUMP>
marinéniatitkárságonmeginttrónokharcátakarttorrenteznideazoroszzsarolóvírustazITletöröltecsakmilyenáronmertmarinakawindowsxpjénfutottaprodszerverlol
Megoldás:
- betöltjük a biztonsági mentést ~~(legalább az IT erre képes volt)~~
T2kommitálva lett, így azt újra végre kell hajtani- Mivel
<T1, COMMIT>nincs, azt vissza kell állítani a checkpoint utáni állapotra
~~3. Kirúgjuk Mari nénit, és helyette felvesszük Évit, akinek jobb ízlése van kalóz filmek terén~~