Middle+
MVCC-де транзакциялар нұсқалармен қалай жұмыс істейді?
sobes.tech AI
AI-дан жауап
MVCC (көп нұсқалы бәсекелестікті бақылау) кезінде әр транзакция өзінің басталу сәтіндегі деректердің көшірмесін көреді, бұл оқуда блоктауларды болдырмайды.
Бұл транзакциялармен қалай жұмыс істейді:
- Транзакция басталғанда оған бірегей идентификатор (мысалы, уақыт белгілері немесе транзакция ID) беріледі.
- Әрбір деректер жолының нұсқасы оның қай транзакцияда жасалғаны және мүмкін, жойылғаны туралы ақпаратты қамтиды.
- Транзакция тек өзінің басталуына дейін бекітілген және басталған кезде жойылмаған деректер нұсқаларын көреді.
- Жазу кезінде транзакция жаңа нұсқаны жасайды, ескі нұсқаны өзгермейді.
Осылайша, транзакциялар деректер нұсқаларымен жұмыс істейді, оқуда оқшаулау мен келісімділікті қамтамасыз етеді, блоктаусыз. Бұл параллелизм мен өнімділікті арттыруға мүмкіндік береді.
Мысал: егер T1 транзакциясы жұмысын бастаған болса, ол тек оның басталуына дейін жасалған жол нұсқаларын көреді. Егер T2 транзакциясы қатар жүріп, жолды жаңартса, жаңа нұсқаны жасаса, T1 оны көрмейді, ол аяқталғанша дейін.