Шта је трансакција базе података?
Трансакција је логичан јединица обраду у ДБМС који подразумијева једну или више операција приступ базама података. Укратко, трансакције база података представљају стварне догађаје било ког предузећа.
Све врсте операција приступа базама података које се држе између почетка и краја наредби трансакција сматрају се јединственом логичком трансакцијом у ДБМС-у. Током трансакције база података није у складу. Тек када се база података изврши, стање се мења из једног доследног стања у друго.
У овом упутству ћете научити:
- Чињенице о трансакцијама базе података
- Зашто вам је потребна подударност у трансакцијама?
- Државе трансакција
- Шта су АЦИД својства?
- Врсте трансакција
- Шта је распоред?
Чињенице о трансакцијама базе података
- Трансакција је програмска јединица чије извршавање може или не мора променити садржај базе података.
- Концепт трансакције у ДБМС-у извршава се као једна целина.
- Ако операције базе података не ажурирају базу података, већ само преузимају податке, ова врста трансакције назива се трансакцијом само за читање.
- Успешна трансакција може променити базу података из једне СИСТЕМНЕ ДРЖАВЕ у другу
- ДБМС трансакције морају бити атомске, доследне, изоловане и трајне
- Да је база података била у недоследном стању пре трансакције, она би након трансакције остала у недоследном стању.
Зашто вам је потребна подударност у трансакцијама?
База података је заједнички ресурс којем се приступа. Многи корисници га истовремено користе и обрађују. На пример, банкарски систем, железнички систем и системи резервација ваздуха, праћење берзе, инвентар супермаркета и благајне итд.
Не управљање истовременим приступом може створити проблеме попут:
- Квар хардвера и пад система
- Истовремено извршавање исте трансакције, застој или спор учинак
Државе трансакција
У наставку су наведена различита стања концепта трансакције у ДБМС-у:
Стање | Врсте трансакција |
Ацтиве Стате | Трансакција прелази у активно стање када започиње процес извршења. Током овог стања могу се извршити операције читања или писања. |
Делимично посвећен | Трансакција прелази у делимично посвећено стање након завршетка трансакције. |
Обвезна држава | Када је трансакција посвећена стању, она је већ успешно извршила своје извршење. Штавише, све његове промене трајно се евидентирају у бази података. |
Фаилед Стате | Трансакција се сматра неуспешном када било која од провера не успе или ако је трансакција прекинута док је у активном стању. |
Окончана држава | Стање трансакције достиже окончано стање када одређене трансакције које напуштају систем не могу да се поново покрену. |

Проучимо дијаграм транзиције стања који наглашава како се трансакција креће између ових различитих стања.
- Једном када трансакција наводи извршење, она постаје активна. Може издати РЕАД или ВРИТЕ операцију.
- Када се операције РЕАД и ВРИТЕ доврше, трансакције постају делимично предане државе.
- Даље, неки протоколи опоравка морају да осигурају да квар система неће резултирати немогућношћу трајног снимања промена у трансакцији. Ако је ова провјера успјешна, трансакција се обавезује и улази у стање предавања.
- Ако провера не успе, трансакција прелази у стање Неуспело.
- Ако је трансакција прекинута док је у активном стању, прелази у неуспело стање. Трансакцију треба вратити натраг да би поништио ефекат својих операција писања на базу података.
- Прекинута држава односи се на трансакцију која напушта систем.
Шта су АЦИД својства?
АЦИД својства се користе за одржавање интегритета базе података током обраде трансакција. АЦИД у ДБМС означава А томицити, Ц онсистенци, И солатион и Д урабилити.
- Атомицност: Трансакција је јединствена јединица деловања. Или га извршите у потпуности или га уопште не извршите. Не може бити делимичног извршења.
- Доследност: Једном када се трансакција изврши, она би требало да пређе из једног конзистентног стања у друго.
- Изолација: Трансакцију треба извршити изоловано од осталих трансакција (без закључавања). Током истовременог извршавања трансакција, међусобни резултати трансакција из истовремено извршених трансакција не би требали бити доступни једни другима. (Ниво 0,1,2,3)
- Трајност: · Након успешног завршетка трансакције, промене у бази података треба да наставе. Чак и у случају квара система.
АЦИД својство у ДБМС-у са примером:
Испод је пример својства АЦИД у ДБМС:
Transaction 1: Begin X=X+50, Y = Y-50 ENDTransaction 2: Begin X=1.1*X, Y=1.1*Y END
Трансакција 1 преноси 50 УСД са рачуна Кс на рачун И.
Трансакција 2 приписује сваком рачуну 10% камате.
Ако су обе трансакције предате заједно, не постоји гаранција да ће се трансакција 1 извршити пре трансакције 2 или обрнуто. Без обзира на поруџбину, резултат мора бити такав да се трансакције одвијају серијски једна за другом.
Врсте трансакција
На основу подручја примене
- Нераспоређено у односу на дистрибуирано
- Компензационе трансакције
- Време трансакција
- Он-лине у односу на серију
На основу акција
- Два корака
- Ограничен
- Модел акције
На основу структуре
- Равне или једноставне трансакције: Састоји се од низа примитивних операција извршених између почетне и завршне операције.
- Угнездене трансакције: Трансакција која садржи друге трансакције.
- Процес рада
Шта је распоред?
Распоред је поступак који ствара једну групу од више паралелних трансакција и извршава их једну по једну. Треба да сачува редослед којим се упутства појављују у свакој трансакцији. Ако се две трансакције извршавају истовремено, резултат једне трансакције може утицати на излаз друге.
Пример
Initial Product Quantity is 10Transaction 1: Update Product Quantity to 50Transaction 2: Read Product Quantity
Ако се трансакција 2 изврши пре трансакције 1, прочитаће се застареле информације о количини производа. Стога су потребни распореди.
Паралелно извршавање у бази података је неизбежно. Али, паралелно извршење је дозвољено када постоји однос еквиваленције међу истовремено извршеним трансакцијама. Ова еквиваленција је 3 типа.
ЕКВИВАЛЕНЦА РЕЗУЛТАТА:
Ако два распореда приказују исти резултат након извршења, то се назива распоред еквивалентан резултату. Они могу понудити исти резултат за неку вредност и различите резултате за други скуп вредности. На пример, једна трансакција ажурира количину производа, док друга ажурира податке о купцу.
Погледајте еквиваленцију
Еквивалентност приказа се јавља када трансакција у оба распореда извршава сличну радњу. На пример, једна трансакција убацује детаље о производу у табелу производа, док друга трансакција убацује детаље о производу у табелу архива. Трансакција је иста, али табеле су различите.
КОНФЛИКТ Еквиваленција
У овом случају, две трансакције ажурирају / прегледају исти скуп података. Постоји сукоб међу трансакцијама јер ће редослед извршења утицати на излаз.
Шта је сериализација?
Серијализација је процес претраживања истовременог распореда чији је излаз једнак серијском распореду где се трансакције извршавају једна за другом. У зависности од врсте распореда, постоје две врсте сериализације:
- Сукоб
- Поглед
Резиме:
- Управљање трансакцијама је логична јединица обраде у ДБМС-у која укључује једну или више операција приступа бази података
- То је трансакција програмска јединица чије извршавање може или не мора променити садржај базе података.
- Не управљање истовременим приступом може створити проблеме као што су откази хардвера и пад система.
- Активно, делимично извршено, извршено, неуспело и раскинути су важна стања трансакција.
- Пуни облик АЦИД својстава у ДБМС-у је атомскост, доследност, изолација и трајност
- Три типа трансакција ДБМС-а су Базиран на областима апликација, Акција и Структура.
- Распоред је поступак који ствара једну групу од више паралелних трансакција и извршава их једну по једну.
- Серијализација је процес претраживања истовремених распореда чији је излаз једнак серијском распореду где се трансакције извршавају једна за другом.