Berreskuratze-prozesua CHECKPOINT eta Berreskuratze-teknikak
Clasificado en Lengua y literatura
Escrito el en vasco con un tamaño de 3,5 KB
Berreskuratze-prozesua CHECKPOINT (I)
Aldiro-aldiro DBKS-ak egiaztatze-puntu bat idazten du egunkarian: – m minutuz behin – Egunkarian n sarrera berri idatzi ondoren ● Egunkariaren sarrera-mota berri bat da – [CHECKPOINT, ...] – Transakzio aktiboen identifikadoreak idazten da – Gainera, transakzio bakoitzeko lehenengo eta azken sarreren egunkariko helbideak ere idazten dira
Berreskuratze-prozesua CHECKPOINT (II)
Egiaztatze-puntu bat idazteko hurrengo urratsak beharrezkoak dira: – Transakzio guztien exekuzioa aldi baterako eten egin da – Egunkarian CHECKPOINT erregistro bat idazten da, eta egunkaria diskoan idaztera behartzen da – (Aldatutako) Memoria nagusiko buffer globala diskoan idaztera behartzen da – Tranksazioak exekutatzeari berrekiten zaio
Berreskuratze-prozesua CHECKPOINT (III)
Egiaztatze-puntuei ezker: – Egunkaria azken egiaztatze-puntuatik aztertzen da ... ● ... eta ez hasiera-hasieratik – Azken egiaztatze-puntuaren aurretik hitzartutako (COMMIT) transakzio guztiak alde batera uzten dira ● Hitzartutako transakzioa guztiak berrestea ez da beharrezkoa
Berreskuratze-teknikak
Hutsegite-motak 1. Konkurrentzia-kontrola betearaztea 2. Transakzioaren errorea 3. Software errorea 4. Hardware errorea 5. Katastrofeak
4. Berreskuratze-teknikak ● 1. edo 2. motako hutsegiteetatik berreskutzeko: – Hutsegitea eragin zuten transakzioak atzera egin: eragiketa batzuk desegin (egunkaria erabiliz) – Beharrezkoa bada, tranksazio batzuk berretsi: eragiketa batzuk berregin (egunkaria erabiliz) ● 3., 4. edo 5. motako hutsegiteetatik berreskuratzeko: – DB-ko azken babeskopia leheneratu – Azken egoera konsistentera berreskuratu: transakzio batzuk berretsi (egunkaria erabiliz)
4. Berreskuratze-teknikak Aldatze-atzeratua (I) ● DB-a ez da aldatzen COMMIT egin arte – T transakzioak egindako aldaketak ezin dira diskora idatzi hitzartu arte
4. Berreskuratze-teknikak Aldatze-atzeratua (II) ● Hutsegitea gertatzen bada transakzioa hitzartze-puntura ailegatu aurretik, transakzioaren aldaketak desegitea ez da beharrezkoa – Diskora kopiatu ez direlako ● Hutsegitea gertatzen bada transakzioa hitzartze-puntura ailegatu ondoren, transakzioa berretsi egin behar da – Transakzioaren aldaketak berregin behar dira
4. Aldatze-atzeratua Ez-desegin/berregin algoritmoa (I) 1. Bi (transakzio) zerrenda-hutsa sortu: Aktiboak eta Hitzartuak 2. Aktiboak azken egiaztatze-puntuan (checkpoint) agertzen den transakzio-zerrendarekin hasieratu 3. Egunkaria aztertu azken egiaztatze-puntuatik (checkpoint) 3.1.[START,] aurkitzen bada, T Aktiboak zerrendan sartu 3.2.[COMMIT,], aurkitzen bada, T Aktiboak zerrendatik Hitzartuak zerrendara eraman 4. Egunkaria bukaera arte aztertu ondoren: 4.1.Hitzartuak zerrendako transakzioak berretsi: [WRITE, ...] eragiketak berregin, egunkarian agertzen diren ordena erabiliz 4.2.Aktiboak zerrendako transakzioak berrabiarazi
4. Aldatze-atzeratua Ez-desegin/berregin algoritmoa (II) ● Egunkariko [WRITE,…] erregistroek balio berria (newValue) baino ez dute gordetzen (berregin daitezke, baina desegin ez) ● Transakzio bat berrabiarazteak berria izango balitz bezala exekutatzea esan nahi du ● Eragiketak egunkarian agertzen diren ordena erabiliz berregin behar dira ● Transakzioak ez dira bakanki berresten, baizik eta denak batera
4. Berreskuratze-teknikak Berehalako aldatzea (I) ● DB-a alda daiteke COMMIT egin aurretik – T transakzioak egindako aldaketak diskora idatzi daitezke hitzartu aurretik