Re: baze-hitno!
>> Ima li ovde nekog ko pouzdano zna kako funkcionise mehanizam pratece
stranice u slucaju konkuretnog izvrsavanja transakcija i zavisnosti po
podacima? <<
Ja pouzdano znam :), ali ja nisam taj ciji je sud bitan...
>> Jedan isti zadatak koji imam uradjen u 3 varijante se razlikuje u sve 3
varijante (od cega su 2 profesorove - 1 je u 'knjizi' - zad 6.11, a druga na
vezbama), a treca je Damjanova zad 5 od 11.03.01. (i najbliza je zdravoj
pameti...). konkretno razlike su u 2 stvari:
1. ako T1 promeni podatak iz pocetne vrednosti A u A', pa T2 promeni A' u A"
da li pointer TT1 na A treba azurirati pri svakoj promeni A na najnoviju
vrednost? <<
Pametno pitanje. Teoretski posmatrano, u slucaju koji si navela, NE TREBA.
Zasto? Pretpostavimo za trenutak da transakcije postuju, na primer, 2PL
protokol (ili da postoji bilo kakav Concurrency Manager koji ne dozvoljava
neserijalizovano izvrsavanje transakcija). Tada je nemoguce da transakcija
T1 ponovo pristupi podatku nakon sto mu je pristupila transakcija T2, tako
da je potpuno nebitno da li se TT1 promeni ili ne (jer se sigurno vise nece
ni koristiti). E sad, mozes da kazes da je bolje da ga ne promenis (brze
je), ali je ocigledno za implementaciju lakse ako UVEK menjas TT.
2. vazi serijski redosled: T1->T2 ako izmedju T1 i T2 postoji zavisnost po
podatku A, i T1 se
jos nije zavrsila kada dodje T2: Commit, da li se PT2 azurira na TT2, a
zatim se restaruju i T1 i T2, ili se PT2 ne menja (zato sto se T1) jos nije
zavrsila, a posle kvara, se restartuju opet T1 i T2?
NE azurira se! Ako dode do kvara, nece biti moguce restartovati transakciju
T2 (jer je PT2 prepisano).
Pozdrav,
Damjan S. Vujnovic
stranice u slucaju konkuretnog izvrsavanja transakcija i zavisnosti po
podacima? <<
Ja pouzdano znam :), ali ja nisam taj ciji je sud bitan...
>> Jedan isti zadatak koji imam uradjen u 3 varijante se razlikuje u sve 3
varijante (od cega su 2 profesorove - 1 je u 'knjizi' - zad 6.11, a druga na
vezbama), a treca je Damjanova zad 5 od 11.03.01. (i najbliza je zdravoj
pameti...). konkretno razlike su u 2 stvari:
1. ako T1 promeni podatak iz pocetne vrednosti A u A', pa T2 promeni A' u A"
da li pointer TT1 na A treba azurirati pri svakoj promeni A na najnoviju
vrednost? <<
Pametno pitanje. Teoretski posmatrano, u slucaju koji si navela, NE TREBA.
Zasto? Pretpostavimo za trenutak da transakcije postuju, na primer, 2PL
protokol (ili da postoji bilo kakav Concurrency Manager koji ne dozvoljava
neserijalizovano izvrsavanje transakcija). Tada je nemoguce da transakcija
T1 ponovo pristupi podatku nakon sto mu je pristupila transakcija T2, tako
da je potpuno nebitno da li se TT1 promeni ili ne (jer se sigurno vise nece
ni koristiti). E sad, mozes da kazes da je bolje da ga ne promenis (brze
je), ali je ocigledno za implementaciju lakse ako UVEK menjas TT.
2. vazi serijski redosled: T1->T2 ako izmedju T1 i T2 postoji zavisnost po
podatku A, i T1 se
jos nije zavrsila kada dodje T2: Commit, da li se PT2 azurira na TT2, a
zatim se restaruju i T1 i T2, ili se PT2 ne menja (zato sto se T1) jos nije
zavrsila, a posle kvara, se restartuju opet T1 i T2?
NE azurira se! Ako dode do kvara, nece biti moguce restartovati transakciju
T2 (jer je PT2 prepisano).
Pozdrav,
Damjan S. Vujnovic
- Follow-Ups:
- Za Anu : baze-hitno!
- From: Jovan Popovic <josars@galeb.etf.bg.ac.yu>
- Za Anu : baze-hitno!
- References:
- Re: pc na dlanu
- From: =sasha= <mirko@afrodita.rcub.bg.ac.yu>
- baze-hitno!
- From: "Ana Balevic" <TauCet@EUnet.yu>
- Re: pc na dlanu
Previous by date: Software za mips (i VLSI)
Next by date: Pitanje...
Previous by thread: baze-hitno! Next by thread: Za Anu : baze-hitno!
Previous by thread: baze-hitno! Next by thread: Za Anu : baze-hitno!