Junior — Middle
Ի՞նչ են տվյալների բազաների կառավարման համակարգերում գործառնությունների մեկուսացման մակարդակները։
sobes.tech AI
Պատասխան AI-ից
Տվյալների բազայի կառավարման համակարգերում (DBMS) կան ստանդարտ թափանցիկության մակարդակներ, որոնք սահմանված են SQL ստանդարտում և կարգավորում են փոփոխությունների տեսանելիությունը միջեւ տրանզակցիաների և կանխում են տարբեր անոմալիաները:
-
Read Uncommitted (Չհաստատված ընթերցում)
- Տրանզակցիան կարող է տեսնել այլ տրանզակցիաների կատարված փոփոխությունները, նույնիսկ եթե դրանք դեռ հաստատված չեն:
- Մեղրային ընթերցումներ (dirty reads) հնարավոր են:
-
Read Committed (Հաստատված ընթերցում)
- Տրանզակցիան տեսնում է միայն այն փոփոխությունները, որոնք հաստատվել են այլ տրանզակցիաների կողմից:
- Պատճառներ են կանխում մեղրային ընթերցումները, բայց հնարավոր են ոչ կրկնվող ընթերցումներ:
-
Repeatable Read (Կրկնվող ընթերցում)
- Գերաշխավորում է, որ տրանզակցիայում ընթերցված տվյալները չեն փոխվի մինչև դրա ավարտը:
- Պատճառներ են կանխում ոչ կրկնվող ընթերցումները, բայց հնարավոր են ֆանտոմային ընթերցումներ:
-
Serializable (Սերիալիզացվող)
- Ամենաուժեղ թափանցիկության մակարդակ:
- Տրանզակցիաները կատարվում են այնպես, կարծես դրանք կատարվում են սերիական հերթականությամբ:
- Պատճառներ են կանխում բոլոր տեսակի անոմալիաները, ներառյալ ֆանտոմային ընթերցումները:
Յուրաքանչյուր թափանցիկության մակարդակ հավասարակշռում է կատարողականի և տվյալների համահունչության միջև: Ընտրությունը կախված է ծրագրի պահանջներից և DBMS-ի հնարավորություններից: