October 6, 2012

Data Model

Database အကြောင်းအား နားလည်နိုင်ရန်အတွက် Data Model အကြောင်းအား သဘောပေါက်ရန် လိုအပ်ပါသည်။ ဤနေရာတွင် သုံးနှုန်းသည့် စကားလုံး Mode သည် အရာတစ်ခုအား ဖော်ပြရာတွင်အသုံးပြုသည့် ကိုယ်စားပြု ပုံစံတူတစ်ခု ဖြစ်ပါသည်။ Data Model ဆိုသည်မှာလည်း လက်ရှိသဘာဝတွင် ရှိသော အချက်အလက်များအား ကိုယ်စားပြု ဖော်ပြနိုင်သော Data ပုံစံတူများဟု ဆိုနိုင်မည် ဖြစ်သည်။


Data Model ဆိုသည်မှာ

Data Model ဆိုသည်မှာ၊ လက်တွေ့သဘာဝအတွင်းတွင်ရှိသော အချက်အလက်များအား၊ Database အတွင်း ထည့်သွင်း သိမ်းဆည်း ရာတွင် အသုံးပြုသော နည်းလမ်း၊ ဒါမှမဟုတ် သိမ်းဆည်းထားသော ရလဒ်ကို ဆိုလိုပါသည်။
Data Model အကြောင်းအားစဉ်းစားရာတွင် လူတို့သည် သဘာဝ အတွင်းရှိ အကြောင်းအရာများအား တစ်ယောက်မှ တစ်ယောက်ဆီသို့ အကြောင်းကြားပုံကို ကရုစိုက်ကြည့်သင့်ပါသည်။ လူတို့သည် လောကအတွင်းရှိ မြင်ရကြားရသည့် အရာများအား တစ်ဦးမှတစ်ဦးဆီသို့ ဆက်သွယ်နိုင်စေရန်အတွက် အပြန်အလှန်နားလည်နိုင်သော နည်းလမ်းအား အသုံးပြု၍ ဆက်သွယ်ကြ၏။ ထိုနည်းလမ်းများအား မော်ဒယ်ဟု ခေါ်၏။ လူတစ်ဦးနှင့် တစ်ဦးအကြား ဆက်သွယ်ရာတွင် အသုံးများသော မော်ဒယ်များမှာ ရုပ်ပုံ၊ စကားလုံး၊ ဂီတ၊ ဓါတ်ပုံ၊ ရုတ်ရှင် အစရှိသည်တို့ ဖြစ်ကြ၏။ စကားလုံးများတွင်လည်း မြန်မာစာ၊ အင်္ဂလိပ်စာ၊ ဂျပန်စာ အစရှိသဖြင့် လူမျိုးအပေါ်မှုတည်၍ အမျိုးမျိုး ကွဲပြားကြ၏။

ဤနည်းအားဖြင့် လူတို့သည် တစ်ဦးနှင့်တစ်ဦးဆက်သွယ်ရာတွင် လက်ရှိ အရာများအား ကိုယ်စားပြုဖော်ပြနိုင်သော မော်ဒယ်များအား အသုံးပြုသကဲ့သို့၊ Data Model သည်လည်း လက်တွေ့ အကြောင်းအရာများအား ကွန်ပျူတာတွင် အသုံးပြုနိုင်ရန်အတွက် ကိုစားပြုဖော်ပြပေးနိုင်သော မော်ဒယ်တစ်ခုပင် ဖြစ်၏။ ဤသို့ဆိုလျှင် Database ဆိုသည်မှာ ရည်ရွယ်ချက်အမျိုးမျိုးအတွက် အသုံးပြုနိုင်ရန်ရည်ရွယ်ပြီး၊ အပြန်အလှန် ပတ်သက်ပုံကို ဖော်ပြပေးနိုင်သော လိုရင်းအချက်အလက် အစုအဝေး ဆိုပါက၊ ထိုအချက်အလက်များအား ဖော်ပြရာတွင်၎င်း၊ ရှာဖွေရာတွင်၎င်း၊ ပြောင်းလည်းရာတွင်၎င်း အသုံးပြုသောနည်းလမ်းအား Data Model ဟု ခေါ်ဆိုမည် ဖြစ်သည်။

လူ့လောကတွင်လည်း ဘာသာစကား  အမျိုးမျိုးရှိသကဲ့သို့ပင် Data Model တွင်လည်း အမျိုးမျိုးရှိပါသည်။ သဘာဝအတွင်းတွင်ရှိသော အကြောင်းအရာများအား ကိုယ်စားပြုရာတွင်၊ အချက်အလက်များအား ကြည့်မြင်ပုံ၊ တွေးခေါ်စဉ်းစားပုံတို့၏ ကွာခြားချက်အပေါ်မှုတည်၍ Data Model အမျိုးအစားများမှာလည်း ကွာခြားတတ်ပါသည်။


Data Model အမျိုးအစားများ

၁၉၆၀ခု ဆယ်စုနှစ် နောက်ပိုင်းမှ စ၍ ၁၉၇၀ခု ဆယ်စုနှစ် အစပိုင်းလောက်အထိ အသုံးများခဲ့သော Data Model များမှာ အချက်အလက် ဆက်သွယ်ပုံများအား အဆင့်ဆင့် ဖော်ပြပေးနိုင်သော Hierarchical Database Modelနှင့် အချက်အလက်များအား အဆင့်လိုက်သာမဟုတ် ကွန်ယက်အနေဖြင့် ဖော်ပြနိုင်သော Network Model တို့ ဖြစ်ကြ၏။ ၎င်းမော်ဒယ်များအား အသုံးပြုသော Database Management System များလည်း စီးပွားဖြစ် အနေနဲ့ အများအပြား ထွက်ပေါ်ခဲ့ပါသည်။

ဆားဗစ်လုပ်ငန်းများတွင် အသုံးပြုသော Booking System၊ ပို့ဆောင်ဆက်သွယ်ရေး လုပ်ငန်းများ၏ Ordering System နှင့် Inventory Control System၊ ကုန်ထုတ်လုပ်ငန်းများ၏ Production Control System နှင့် ဘဏ်လုပ်ငန်းများ၏ ဘဏ်စာရင်း Control System များတွင် အသုံးပြုခဲ့ကြ၏။ အထက်ပါ Data Model များသည် ၁၉၈၀ခု အရောက်တွင် Online System များတွင် အသုံးပြုသော ကြီးမားသည့် Database များတွင် အသုံးပြုလာခဲ့ပြီး ယနေ့တိုင်အသုံးပြုနေဆဲပင် ဖြစ်သည်။

တဖက်တွင် ၁၉၇၀ခုနှစ်ပိုင်းလောက်မှ စ၍ အချက်အလက်များအား ဇယားအဖြစ်ဖော်ပြနိုင်သော Relational Data Model ကို စတင် ပေါ်ပေါက်လာခဲ့ပြီး၊ ၁၉၈၀ခုနောက်ပိုင်းတွင် Relational Data Model ကို အသုံးပြုသော DBMS များသည် Decision Management System များတွင် အသုံးများလာပြီး၊ Online အား အခြေခံသော Enterprise System များတွင် အသုံးများသော Data Model တစ်ခု ဖြစ်လာပါသည်။ အသုံးပြုရာတွင် ပုံစံအမျိုးမျိုးဖြင့် အသုံးပြုနိုင်ပါသဖြင့် ယနေ့ခေတ်တွင် အသုံးအများဆုံးသော Data Model တစ်ခု အဖြစ်ရပ်တည် နေပါသည်။ တဖန် ၁၉၉၀ခုနှစ် ပိုင်းတွင် အချက်အလက်များနှင့် လုပ်ဆောင်ချက်များအားပူးတွဲ၍ Object Oriented သဘောတရားများသည်၊ အချက်အလက်များနှင့် Software များအား ပြန်လည်အသုံးပြု နိုင်မှု့တို့ကြောင့် လူအများ အာရုံစိုက်လာသော နည်းပညာ တစ်မျိုးဖြစ်လာပါသည်။ လက်ရှိတွင် Object Oriented သဘောတရားများအား ထည့်သွင်းထားသော Data Model မှာ Object-Relational Data Model ဖြစ်ပြီး၊ ၎င်းအား အသုံးပြုထားသော DBMS များမှာလည်း Public အနေနဲ့ရော Commercial အနေနဲ့ပါ ထုတ်ပြန်လာခဲ့ပါသည်။


Data Model ၏ အခြေခံအစိတ်အပိုင်း ၃ခု

အထက်ဖော်ပြပါ Data Model များတွင်သဘာဝ အကြောင်းအရာများအားမော်ဒယ်အနေဖြင့် ကိုယ်စားပြုရာတွင် အခြေခံအနေဖြင့် အောက်ပါ အချက် ၃မျိုးကို အဓိကထားခဲ့ပါသည်။
  1. Data Structure
  2. Data Manipulation
  3. Integrity Constraint
Data Structure အစိတ်အပိုင်းသည် လက်ရှိ အကြောင်းအရာများအား Data အဖြစ်ဖော်ပြရာတွင် မည်ကဲ့သို့ရှိသည်၊ မည်ကဲ့သို့ ပတ်သက်သည် အစရှိသည့် အချက်များအား သတ်မှတ်ပေးနိုင်ပါသည်။ တဖန် Data Manipulation အစိတ်အပိုင်းသည် Data များအားရှာဖွေရာတွင် (Search) ၎င်း၊ ပြုပြင်ရာတွင် (Update) ၎င်း၊ စီးမျဉ်းများအား ချမှတ်ပေးပါသည်။ နောက်ဆုံး Integrity Constraint သည် Data Structure တွင် အခြေခံ၍ စုစည်းထားသော အချက်အလက်များအား Data Manipulation ဖြင့် အသုံးပြုရာတွင် Data များအား အမြဲတမ်း မှန်ကန်မှု့ရှိစေရန် ကန့်သတ်ချက်များအား သတ်မှတ်ပေးပါသည်။ ဥပမာအားဖြင့် အချက်အလက်တစ်ခုအား အသစ် ဖြည့်စွက်ရာတွင် လက်ရှိရှိပြီးသော အချက်အလက်ဖြစ်ပါက ဖြည့်စွက်မည်သို့မဟုတ် မဖြည့်စွက်ပါ အစရှိသည်ကို ဆုံးဖြတ်ရသော သတ်မှတ်ချက်ဖြစ်ပါသည်။ တဖန် အချက်အလက်တစ်ခုအား ပြုပြင်ပြောင်းလည်းမည် ဆိုပါက အဆိုပါအချက်အလက်အား ကိုးကား (Reference) နေသော အချက်အလက်များရှိပါက မည်သို့ပြုလုပ်မည် အစရှိသည့် သတ်မှတ်ချက်များလည်း ပါဝင်ပါသည်။


Database Language


Data Model အား သက်မှတ်ရေးသားသော အစိတ်အပိုင်းအား Database Language ဟု ခေါ်ဆိုပါသည်။ ပုံမှန်အားဖြင့် Data Structure နှင့် Integrity Constraint အား ရေးသားသော ဘာသာရပ်အား Data Definition Language (DDL) ဟု ခေါ်ဆိုပြီး၊ Data များအား အသုံးချရာတွင် အသုံးပြုသော ဘာသာရပ်အား Data Manipulation Language (DML) ဟု ခေါ်ဆိုပါသည်။

တဖန် DDL အား အသုံးပြု၍ ရေးသားထားသော Data Structure နှင့် Integrity Constraint အစုအစည်းအား Schema ဟု ခေါ်ဆိုပါသည်။ တနည်း ဆိုရသော် Schema သည် သတ်မှတ်ချက်များအား စုစည်းထားသော အစုအဝေးတစ်ခုပင် ဖြစ်၏။



Data Modeling Facility နှင့် Application Data Model


အထက်တွင် Data Model သည် လက်ရှိဘဝတွင် ရှိသော အရာများအား ကိုယ်စားပြုနိုင်သော နည်းလမ်းများနှင့် ကိုယ်စားပြုထားသော ရလဒ်များဖြစ်သည်ဟု ဖော်ပြခဲ့ပါသည်။ တနည်းဆိုရသော နည်းလမ်းဖြစ်သော Data Model နှင့် ရလဒ်အဖြစ်တည်ရှိသော Data Model ဟူ၍ ရှိကြပါသည်။ အဆိုပါ အကြောင်းအရာနှစ်ခုအား မည်သို့ကွဲခြားသနည်းဟု ဆိုသော် နည်းလမ်းအဖြစ်ရှိသော Data Model အား Data Model Facility ဟု ခေါ်ဆိုပြီး၊ ရလဒ်အဖြစ်ရှိသော Data Model အား Application Data Model ဟု ခေါ်ဆိုပါသည်။

Hierarchical Database Model ၊ Network Data Model နှင့် Relational Data Model အစရှိသည်များသည် Data Modeling Facility ဖြစ်ပြီး၊ ၎င်းတို့အား အသုံးပြု၍ ရေးသားထားသော Booking System, Ordering System နှင့် Decision Management System အစရှိသည်တို့သည် Application Data Model တို့ ဖြစ်ကြပါသည်။


မှတ်ချက်

ဆရာဆာတို (http://www.tiu.ac.jp/n_department/professor/commercial/0010_sato.html)၏ သင်ခန်းစာများမှ ပြန်လည် ကောက်နှုတ်တင်ပြပါသည်။

ဆက်ပါဦးမည်
မင်းလွင်


No comments:

Post a Comment