18-маъруза. Транзакцияларда параллелизм ва маълумотларни тиклаш Режа


Янгилаш натижаларининг йўқолиш муаммолари


Download 192 Kb.
bet2/9
Sana23.12.2022
Hajmi192 Kb.
#1045606
1   2   3   4   5   6   7   8   9
Bog'liq
Maruza-18 -maruza

2.1. Янгилаш натижаларининг йўқолиш муаммолари
Иккита транзакция навбати билан қандайдир маълумотларни битта қаторга ёзади ва ўзгаришларни белгилаб боради.

Натижа. Иккала транзакция тугагандан кейин Р қатор кейинчалик В транзакция орқали киритилган Р2 қийматдан иборат бўлади. А транзакция В транзакциянинг мавжудлиги ҳақидаги ҳеч қандай маълумотга эга эмас, ва табиийки, Р қаторга Р1 қийматнинг жойлашишини кутади. Шундай қилиб, А транзакция ўз ишининг натижаларини йўқотди.
2.2. Ёзилмаган боғлиқлик муаммоси
В транзакция қатордаги маълумотларни ўзгартиради. Шундан кейин А транзакция ўзгарган маълумотларни ўқийди ва улар билан ишлайди. В транзакция четга чиқади ва эски маълумотларни тиклайди.

Натижа. А транзакциянинг ишлаш натижаси нотўғри, у маълумотлар базасида мавжуд бўлмаган маълумотлар билан ишлаган. Бундан ташқари, А транзакция маълумотлар базасида бўлмаган маълумотларни ишлатган.
2.3. Таҳлилларнинг бир – бирига тўғри қилмаслик муаммоси
Таҳлилларнинг бир – бирига тўғри қилмаслик муаммоси ўз ичига бир нечта вариантларни олади:

  • Такрорланмайдиган санаш

  • Фиктив элементлар (фантомлар)

  • Ҳақиқатан тўғри келмайдиган таҳлил

Натижа'>2.3.1. Такрорланмайдиган санаш
А транзакция битта қаторни икки марта ўқийди. Бу ўқишлар орасида қатордаги қийматни ўзгартирадиган В транзакция пайдо бўлади.

Натижа. А транзакция ўз-ўзидан ўзгарадиган маълумотлар билан иш олиб боради.
2.3.2. Фиктив элементлар (фантомлар)
А транзакция икки марта қаторни танлашни битта шарт билан бажаради. Танлашлар орасида танлаш шартини қаноатлантирадиган янги қаторни қўшадиган В транзакция пайдо бўлади.

Натижа. А транзакция қаторларни икки марта бир хил танлаганда турли натижаларни олди.
2.3.3. Ҳақиқатан тўғри келмайдиган таҳлил
Узун транзакция бутун жадвал бўйича қандайдир таҳлил ўтказади, масалан, бош бухгалтер учун банк мижозларининг ҳисобларидаги умумий пуллар суммасини ҳисоблайди. Барча ҳисоблардаги пуллар бир хил суммада бўлсин, масалан, $100. Қисқа транзакция бу вақтда бир ҳисобдан бошқасига умумий сумма барча ҳисоблар бўйича ўзгармайдиган қилиб, $50 ни ўтказмоқда.

Натижа: В транзакция барчасини тўғри бажарган бўлса ҳам – пуллар йўқотишларсиз ўтказилган, аммо натижада А транзакция нотўғри умумий суммани ҳисоблади.

Download 192 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling