පෙර කොටස් 1‑3 තුළ අපි WAL, memtable, SSTables සහ compaction වැනි මූලික ගබඩා යන්ත්රයක් නිර්මාණය කළා. ඒකේ සැම මෙහෙයුමක් GET හෝ PUT එකක් පමණයි. නමුත් සැබෑ යෙදුම් එකවර එක ලියුමක් පමණක් අවශ්ය නොවේ; බහු ලියුම් එකට එකතුවෙලා ක්රියා කරන අවශ්යතාවය නිතරම පෙනෙයි.
ආටොමිකත්වය (Atomicity) ගැටලුව – බැංකුවේ ගිණුමක් A සිට B වෙත $100 මාරු කිරීමක් ගැන හිතන්න. පළමුව A ගිණුමේ ශේෂය $500 සිට $400 වෙයි, දෙවැනි පියවරේ B ගිණුමේ ශේෂය $500 සිට $600 වෙයි. මේ අතර පද්ධතියක් බිඳ වැටුනොත්, පළමු PUT එක පමණක් සාර්ථක වෙයි, B ගිණුමේ ශේෂය නොවෙනස්ව පවතින නිසා $100 අතුරුදහන් වේ. මෙය පද්ධතියේ අසමතල තත්ත්වයක්.
අපගේ වත්මන් ආකෘතියේ එක් එක් PUT එක ස්වාධීනව පවතී; “මෙම දෙකම සාර්ථක විය යුතුයි, නැතහොත් දෙකම අසාර්ථක විය යුතුයි” යන නියමයක් නැත. එබැවින් ගනුදෙනු (Transactions) ලෙස බහු ලියුම් එකකට එකම තර්කයක් දෙනු ලබන ආකාරයක් අවශ්ය වේ.
ඉසොලේෂන් (Isolation) ගැටලු – සමකාලීන ගනුදෙනු එකිනෙකට අතුරුදහන් විය හැකි තත්ත්ව තුනක් පෙන්වමු.
- Dirty Read – T1 ගිණුමකට $100 එක් කර පසු රෝල්බැක් කරයි, එම අතර T2 ඒ අතුරු ලියුම කියවා පසු තීරණයක් ගනී. එය වත්මන් දත්ත නොවන බැවින් T2 වැරදි තීරණයකට පත් වේ.
- Lost Update – T1 සහ T2 දෙදෙනාම ශේෂය $50 කියවා, T1 $20 එකතු කර $70 යැවුවා, පසුව T2 $30 එකතු කර $80 යැවුවා. අවසාන ශේෂය $100 විය යුතුයි, නමුත් T1 හි යාවත්කාලීන කිරීම T2 විසින් අතුරුදහන් වුණා.
- Write Skew – x + y ≥ 0 යන සීමාවක් තිබේ. T1 x = -5 ලෙස වෙනස් කරයි, T2 y = -5 ලෙස වෙනස් කරයි. දෙදෙනාම සීමාව පසු පරීක්ෂා කළා, නමුත් එකට එකතු වූ විට x + y = -10 වීමෙන් සීමාව උල්ලංඝනය වේ.
මෙම අසාමාන්යතා නිරෝධායනය සඳහා SQL දත්ත ගබඩා හතරක් වන Isolation Levels නියම කරයි: Read Uncommitted, Read Committed, Repeatable Read, Serializable. මට්ටම ඉහල යාමත් සමඟ ලොක් ගැලපීම වැඩි වීම නිසා සමකාලීනතාව අඩු වෙයි, නමුත් දත්ත අඛණ්ඩතාව වැඩි වේ.
ශ්රී ලංකාවට ඇති වැදගත්කම
ශ්රී ලංකාවේ තාක්ෂණය ඉගෙනගන්නා සිසුන්, පරිශීලකයන් සහ ව්යාපාරිකයන්ට මේ ගැටලු සහ විසඳුම් පිළිබඳ අවබෝධයක් ඇති වීමෙන් ප්රයෝජන වන්නේ:
- විශ්ව විශ්වවිද්යාල පාඨමාලා වල Database Systems පාඨමාලා යාවත්කාලීන කර ගනුදෙනු, ඉසොලේෂන් මට්ටම් වැනි නවතම සංකල්ප ඇතුළත් කිරීම.
- ස්ථානීය සොෆ්ට්වේර් සමාගම්ට ඉහල තත්ත්වයේ දත්ත අඛණ්ඩතාව සහිත සේවා නිර්මාණය කිරීමේ හැකියාව ලැබේ, එමඟින් ගනුදෙනු ආරක්ෂාව වැඩි වෙයි.
- ඉන්ටර්නෙට් ආරක්ෂාව, මොබයිල් බැංකු යෙදුම්, e‑commerce වැනි ක්ෂේත්රවල අධික සංකීර්ණ ගනුදෙනු අඩු වැරදි වලින් ක්රියාත්මක වේ.
අවසන් වශයෙන්, ගනුදෙනු හා ඉසොලේෂන් මට්ටම් ගැන දැනුවත් වීම, සිත්ගන්නා සුලු දත්ත ගබඩා ක්රමලේඛන නිර්මාණයට මූලික පදයක් වන අතර, ශ්රී ලංකාවේ තාක්ෂණික වර්ධනයට නව මාවතක් ගෙන එයි.