Sobes.tech
Principal

Ի՞նչ են տվյալների բազաների գործարքները: Ի՞նչ են գործարքների იზոլացիայի մակարդակները, ինչի՞ մասին է դա և ի՞նչ է հիմնական տարբերությունը։

sobes.tech AI

Պատասխան AI-ից

Տվյալների բազայում գործառնությունը՝ դա գործողությունների տրամաբանական կապակցված հաջորդականություն է, որը կատարվում է որպես միավոր։ Գործառնությունների հիմնական հատկությունները նկարագրվում են ACID կրճատմամբ՝

  • Ատոմայնություն — բոլոր գործառնությունները կատարվում են ամբողջությամբ կամ ընդհանրապես ոչինչ։
  • Կոնսիստենտություն — գործառնությունը բազան տեղափոխում է ճիշտ վիճակից մյուս ճիշտ վիճակ։
  • Իզոլացիա — միաժամանակյա գործառնությունները միմյանց վրա ազդեցություն չեն ունենում։
  • Տևականություն — հաստատումից հետո (commit) փոփոխությունները պահվում են նույնիսկ խափանումների դեպքում։

Գործառնությունների իզոլացիայի մակարդակները որոշում են մեկ գործառնության փոփոխությունների տեսանելիության աստիճանը մյուսների համար և ազդում հնարավոր անոմալիաների վրա՝

  1. Read Uncommitted — գործառնությունը կարող է տեսնել ուրիշների հաստատված չլինած փոփոխությունները (լեղի ընթերցում)։
  2. Read Committed — միայն հաստատված փոփոխությունները տեսանելի են, բայց կարող են լինել կրկնվող ընթերցումներ։
  3. Repeatable Read — երաշխավորում է, որ նույն տվյալների կրկնվող ընթերցումը կտա նույն արդյունքը, բայց կարող են լինել ֆանտոմային ընթերցումներ (նոր տողեր)։
  4. Serializable — ամենակոշտ մակարդակ, գործառնությունները կատարվում են կարծես սերիական, բոլոր անոմալիաները վերացվում են։

Հիմնական տարբերությունը՝ դա կատարողականության և խիստ իզոլացիայի միջև հավասարակշռությունն է։ Որքան բարձր է մակարդակը, այնքան քիչ է պառլելիզմը, բայց տվյալների ամբողջականությունը բարձր է։