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


SQL воситасида ҳимояланган транзакцияларни ташкил қилиш


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

7. SQL воситасида ҳимояланган транзакцияларни ташкил қилиш
SQL стандарти транзакцияларнинг аралаш муҳитида ишлаши учун блокировка тушунчасини кўриб ўтмайди. Бунинг ўрнига ҳимояланиш даражаси тушунчаси киритилган. Бундай ёндашув транзакияларни ҳимоялашга қандайдир талабларни таъминлайди.
SQL стандарти ҳимоялашнинг 4 та сатҳини кўриб чиқади:

  • READ UNCOMMITTED – тугалланмаган ҳисоблаш сатҳи.

  • READ COMMITTED - тугалланган ҳисоблаш сатҳи.

  • REPEATABLE READ - такрорланадиган ҳисоблаш сатҳи.

  • SERIALIZABLE – тартиблашга келтириладиган сатҳи.

Агар барча транзакциялар (жимлик қоидаси бўйича қабул қилинган) тартиблашлар даражасида бажарилса, у ҳолда параллел транзакцияларнинг ихтиёрий тўпламини навбат билан бажариш тартибланган бўлиши мумкин. Агар баъзи транзакциялар бир мунча қуйи даражада бажарилса, у ҳолда тартиблашни бузувчи усуллар тўплами мавжуд бўлади. SQL стандартида, умуман олганда юқорида параллелизм муаммоси сифатида ёритилган, тартиблашни бузишнинг учта асосий усули ажратиб кўрсатилади:

  • Нотўғри ҳисоблаш

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

  • Фантомлар

SQL стандартида янгилаш натижаларини йўқотишга рухсат берилмайди, яъни транзакциялар ҳимоянинг қуйи сатҳида янгилаш натижаларини йўқотмасдан ишлаши керак.
Ҳимоя сатҳлари имкониятга кўра ёки тартиблашни бузишнинг усулларидан ташқари равишда аниқланади. Бу аниқлашлар қуйидаги жадвалда ёритилади:

Ҳимоя сатҳлари

Нотўғри ҳисоблаш

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

Фантомлар


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