Database Management Systems – Part II

by Pravin Indranama

Database Architecture

පසුගිය කලාපයෙන් අපි ඬේටාබේස් කලමණාකරණ පද්ධති වලට හැඳින්වීමක් සහ ඬේට්බේස් කලමණාකරණය කල යුත්තේ ඇයි කියන සේ පිලිබඳව අවබෝධයක් ලබා දුන්නා. අද ලිපියෙන් බලාපොරොත්තු වන්නේ ඬේටාබේස් එකක් හැදී ඇති විදිය, එහි architecture එක පිලිබඳව කතා කිරීමටයි.

ඇතැම් විට ඔබට සිතෙනවා ඇති ඬේටාබේස් ගැන කතා කරනවානම් එකවරම SQL භාෂාව හා ඇප්ලිකේෂන් ඬේටාබේස් එකත් සමග සම්බන්ධ කිරීම වැනි ප‍්‍රායෝගික දේවල් කතා නොකර ඇයි මේ න්‍යායාත්මක කරුණු කතා කරන්නේ කියලා. ඊට හේතුව මේ ඬේටාබේස් කලමණාකරණ පද්ධති කියන විෂය පථයට එම න්‍යායාත්මක කරුණු ද අයත් වීමයි. මෙම කරුණු නොමැතිව ඔබේ ඬේටාබේස් පිලිබඳව දැනුම සම්පූර්ණ වන්නේ නැහැ. ඔබ පරිගණක මෘදුකාංග ක්ෂෙත‍්‍රයේ ඉදිරියට යාමට බලාපොරොත්තු වෙනවා නම් මෙම කරුණු දැන සිටීම අත්‍යාවශ්‍යයි. හොඳයි අපි දැන් යොමුවෙමු අද දිනයේ පාඩමට.

ඬේටාබේස් කලමණාකරණ පද්ධතියකින් අපි බලාපොරොත්තු වන පහසුකම් වඩාත් සුගම ආකාරයෙන් ලබා ගැනීමට නම් එම පද්ධතිය සුදුසු architecture එකකින් නිර්මාණය වී තිබිය යුතුයි. මුලින්ම අපි සලකා බලමු මෙම පහසුකම් මොනවාද කියලා.

1. Data Security and Integrity Control

ඬේටාබේස් කලමණාකරණ පද්ධතියක ප‍්‍රධානම ලක්ෂණයක් තමයි අවසරලත් පරිශීලකයන්ට (authorized users) පමණක් ටේඩාබේස් එක තුල අඩංගු දත්ත පෙන්වීම/වෙනස්කිරීමට ඉඩ සැලසීම. මේ සඳහා (username/password) මගින් ටේඩාබේස් එක සුරක්ෂිත කරනු ලබනවා. ඬේටාබේස් කලමණාකරණ පද්ධතියක පරිශීලකයන් එකකට වැඩි සංඛ්‍යාවක් සිටිය හැකි අතර ඒ එක් එක් පරිශීලකයාට ඬේටාබේස් එක සඳහා වෙන වෙනස් බලතල (දැකිය හැකි දත්ත, වෙනස් කල හැකි දත්ත) ලබාදීමට ඬේටාබේස් කලමණාකරණ පද්ධතිය සමත් වෙනවා. මෙමගින් දත්ත වල ආරක්ෂාව තහවුරු වෙනවා. එසේම ඬේටාබේස් එක තුල දත්ත අනවශ්‍ය ලෙස පිටපත් වීම (duplication) වැලැක්වීමේ යාන්ත‍්‍රණයක් ද තියෙනවා.

2. Concurrent Access

ඬේටාබේස් එකකට පරිශීලකයන් කීපදෙනෙක් සිටින බව කලින් සඳහන් වුනා. මේ පරිශීලකයන් එකකට වැඩි ගණනකට ඬේටාබේස් එක එකවර භාවිතා කිරීමේ හැකියාව ලබා දීමද ඬේටාබේස් කලමණාකරණ පද්ධතියේ එක් පහසුකමක්.

3. Querying and Reporting

ඬේටාබේස් එකේ ඇති දත්ත සමුදායෙන් පරිශීලකයාට අවශ්‍ය දත්ත පමණක් ලබාගැනීමට ඔහුට විමසුමක් (query) සිදු කල හැකියි. එවිට ඬේටාබේස් එක එම විමසුමට අදාල ප‍්‍රතිඵල පමණක් වාර්තාවක් (report) ආකාරයට පෙන්වනවා.


4. Application Development Interface

තනි තනි පරිශීලකයන්ට පමණක් නොව ක‍්‍රමලේඛකයන් විසින් සාදනු ලබන පරිගණක වැඩසටහන් හරහා ද ඬේටාබේස් එකේ ඇති දත්ත ලබාගැනීමට අවකාශ සැලසීමත් පද්ධතියේ එක් විශේෂාංගයක්.

5. Meta Data

ඬේටාබේස් එකක Meta Data යනුවෙන් දත්ත වර්ගයක් අඩංගුයි. මෙයින් නිරූපනය වන්නේ ඬේටාබේස් එකේ ඇත්තේ කවර ආකාරයේ දත්ත ද යන්න පිලිබඳව විස්තර. උදාහරණයක් ලෙස ඬේටාබේස් එකේ table වල Column Name සඳහා අපි කෙටි නමක් ලබාදෙන අතර අපි එම Column වල අඩංගු වන්නේ කවර දත්ත දැයි විස්තරාත්මකව Meta Data වල සඳහන් කරනවා. එසේම එම column එකේ අඩංගු දත්ත වල Data Type එක, field length එක ආදී විස්තර ද අඩංගු වන්නේ මෙම meta data තුලයි. මෙම meta data භාවිත කිරීමේ ප‍්‍රයෝජනය නම් ඬේටාබේස් කලමණාකරන පද්ධතිය නිර්මාණය කරන අයට හා එය භාවිත කරන පරිශීලකයන්ට ඬේටාබේස් එකේ අඩංගු දත්ත පිලිබඳව අවබෝධයක් ලබාගැනීමටයි. මෙය අපි වැඩසටහනක් ලිවීමේදී වැඩිදුර විස්තර(comment) කරනවා වැනි දෙයක්.


ඬේටාබේස් කලමණාකරණ පද්ධතියක් භාවිතා කිරීමේදී මෙන්න මේ අවශ්‍යතා පැන නැගුනා.

  • විවිධ පරිශීලකයන්ට එකම ඬේටාබේස් එකේ දත්ත විවිධ ආකාරයට ලබාගැනීමට අවශ්‍ය වීම (මෙය View එකක් ලෙස හඳුන්වනවා)
  • එක් එක් පරිශීලකයන්ට අවශ්‍ය පරිදි Views නිර්මාණය කිරීමේදී ඬේටාබේස් එක වෙනස් නොවිය යුතු වීම
  • අඩු බලතල (privileges) සහිත පරිශීලකයන්ට ඬේටාබේස් එක සැකසී ඇති ආකාරය පිලිබඳ තාක්ෂණික විස්තර සැඟවිය යුතු වීම.

මෙන්න මේ අවශ්‍යතා සපුරා ගැනීම සඳහා ඬේටාබේස් කලමණාකරණ පද්ධති අන්තර්ජාතික සම්මත architecure එකකට අනුව සැකසීම අත්‍යාවශ්‍ය වුනා. මෙන්න මේ සම්මතය තමයි ASNI/APARC 3 Level Architecture යනුවෙන් හැඳින්වෙන්නේ. මෙහිදී පද්ධතිය මට්ටම් (levels) 3කින් සෑදී ඇති ලෙස design කෙරෙනවා. මෙම මට්ටම් 3 නම්,

  1. Internal Level
  2. Conceptual Level
  3. External Level

Internal Level යනු ඬේටාබේස් hard disk එක තුල ගබඩා වී ඇති ආකාරය විස්තර කෙරෙන මට්ටමයි. මෙය තාක්ෂණික කරුණු ඇතුලත් කොටසක්. එමනිසා සාමාන්‍ය පරිශීලකයන්ට මෙය දැනගැනීම අවශ්‍ය නැහැ. මෙම මට්ටම් ආකෘතියෙන් බලාපොරොත්තු වන්නේත් එවැනි අනවශ්‍ය දත්ත අවසන් පරිශීලකයන්ට (end users) කරදරයක් නොවන අන්දමින් සැඟවීමයි.

External Level යනු ඬේටාබේස් එකේ අඩංගු දත්ත පරිශීලකයන්ට අවශ්‍ය ආකාර වලට Views මගින් දැක්වීමේ මට්ටමයි. එකම දත්ත සමූහය මෙහිදී එක් එක් පරිශීලකයාට අවශ්‍ය අන්දමට වෙන වෙනස් Views මගින් ඉදිරිපත් කෙරෙනවා. (මෙම Views පිලිබඳ වැඩිදුර විස්තර අපි tables පිලිබඳව ඉගෙනගත් පසුව දැනගත හැකියි.)

Conceptual Level එක මගින් තමයි disk එක තුල physically ගබඩා වී ඇති දත්ත external level එකේ දී අවශ්‍ය පරිදි views වලට ගොඩනැගීමේ කාර්යය කරන්නේ.

අපි කලින් සඳහන් කල අවශ්‍ය පුද්ගලයාට අවශ්‍ය දෙය පමණක් ලබා දීමේ අවශ්‍යතාවට මෙමගින් විසඳෙන බව මින් පැහැදිලි වෙනවා ඇති. ඬේටාබේස් එක පාවිච්චි කරන පරිශීලකයන්ට ඬේටාබේස් එකේ තාක්ෂණික කරුණු දැනගැනීමට හෝ ඬේටාබේස් එක disk එක මත ගබඩා වී ඇත්තේ කෙසේදැයි දැනගැනීම අවශ්‍ය වන්නේ නැහැ. External Level එක සමග පමණක් ගණුදෙනු කිරීමෙන් ඔහුගේ අවශ්‍යතාවය ඉටුවෙනවා.

Database Mapping

ඬේටාබේස් පද්ධතිය මට්ටම් 3න් සෑදී ඇති බව අපි දැන් සාකච්ඡුා කලා. මෙම එක් මට්ටමකට යම් වෙනසක් කිරීමට සිදුවුවහොත් ඊට අනුරූප ලෙස අන් මට්ටම් සුදුසු පරිදි වෙනස් විය යුතුයි. mapping යනුවෙන් හඳුන්වන්නේ මෙම ක‍්‍රමවේදයයි. ඬේටාබේස් පද්ධතියක් තුල මෙවැනි mapping 2ක් තිබෙනවා.

Conceptual/Internal Mapping
Internal level එකට, ඒ කියන්නේ ඬේටාබේස් එකේ අභ්‍යන්තර සැකැස්මට වෙනසක් සිදු කරන්නේ නම් Conceptual level එකේද ඊට අනුරූපව වෙනස්කම් සිදු කල යුතු වෙනවා. මෙම වෙනස්කම් සිදු කිරීම තමයි මෙනමින් හැඳින්වෙන්නේ.

External/Conceptual Mapping
ඬේටාබේස් පද්ධතියේ අභ්‍යන්තරයට සිදුකරන වෙනස්කම් පරිශීලකයන් වෙත ප‍්‍රශ්නයක් නොවන අන්දමින් තබාගත යුතුයි. ඬේටාබේස් පද්ධතියක ප‍්‍රයෝජනයත් එයයි. මේ නිසා Conceptual/Internal Mapping ට එකේදී සිදුකෙරුණු වෙනස්කම් බාහිර පරිශීලකයන්ට නොදැනෙන පරිද්දෙන් Conceptual level එක මගින් external level එකට වෙනස්කම් සිදු කල යුතුයි. මෙය External/Conceptual Mapping නමින් හැඳින්වෙනවා.

මේ මාසයේ පාඩම මින් අවසන්. මේ සමගම ඬේටාබේස් කලමණාකරන පද්ධති වල මූලික සංකල්ප කොටස අවසාන වෙනවාත මීලඟට අපිට පිවිසීමට ඇත්තේ Relational Data Model පාඩම වෙතයි.

Previous Article

Share/Save
Your rating: None Average: 5 (1 vote)