Architecture Domains — Data
Data Domain
၁။ ထည့်သွင်းစဉ်းစားရမယ့် အချက်များ —
✔ Data Modeling — အချက်အလက်တွေရဲ့ ပုံစံ တွေကို ကြိုတင် သတ်မှတ်ထားဖို့ လိုပါတယ်။
- လုပ်ငန်းမှာ အသုံးပြုတဲ့ Data တွေ ခွဲခြားခြင်း။ Structured Data တွေက ဘာတွေလဲ? Unstructured Data တွေက ဘာတွေလဲ?
- လုပ်ငန်း Data တွေနဲ့ ကိုက်ညီမယ့် Database အမျိုးအစားတွေ ရွေးချယ်ခြင်း။ ဥပမာ — Structured data တွေဆို Relational Database တွေဖြစ်တဲ့ MySQL, PostgreSQL, … စတာတွေ။ Unstructured Data တွေဆို NoSQL Database တွေဖြစ်တဲ့ MongoDB, AWS DynamoDB စတာတွေ။
- လုပ်ငန်းနဲ့ ကိုက်ညီမယ့် Database Design ဆွဲခြင်း။ လုပ်ငန်းနယ်ပယ်မှာ ရှိတဲ့ လုပ်ငန်းစဉ်တွေနဲ့ သက်ဆိုင်တဲ့ အခြေခံ အချက်အလက် ဖွဲ့စည်းပုံ ကို စတင် တည်ဆောက်ထားဖို့ လိုပါတယ်။ ဥပမာ — ကုန်ပစ္စည်း ဖြန့်ချီတဲ့ လုပ်ငန်း ဆိုရင် products, categories, warehouses, suppliers, customers, orders, payments, … ဒီလို data တွေ ဖြစ်နိုင်ပြီး၊ အသေးစား ငွေချေးလုပ်ငန်းတွေ ဆိုရင် clients, loans, loan_officers, repayment_schedules, repayment_transactions, … စတာတွေဖြစ်နိုင်ပါတယ်။
✔ Data Management — အချက်အလက်တွေကို ဘယ်လိုစီမံခန့်ခွဲမလဲ ဆိုတာလည်း ကြိုတင် သတ်မှတ်ထားဖို့ လိုပါတယ်။
- Operation — အသုံးပြုနေရမယ့် အချက်အလက်တွေ ဘယ်လို ထည့်သွင်းမလဲ? ဘယ်လို သိမ်းဆည်းမလဲ? ဘယ်လို ပြန်ထုတ်မလဲ? ဘယ်လို ပြင်ဆင်မလဲ?
- Archiving — အသုံးပြုစရာမလိုတော့တဲ့ အချက်အလက်တွေကို နောင် လိုအပ်လို့ ပြန်ကြည့်မယ့် အခါ ဘယ်လို မှတ်တမ်းတင် သိမ်းဆည်း ထားမလဲ?
✔ Data Security and Privacy — အချက်အလက်တွေကို လုံခြုံအောင် နဲ့ အလွဲသုံးစား မပြုနိုင်အောင် ကြိုတင် ပြင်ဆင်ထားဖို့ လိုပါတယ်။
- Security — အချက်အလက်တွေ ဖောက်ထွင်းခိုးယူမခံရအောင် ဘယ်လို ကြိုတင် ကာကွယ် မလဲ?
- Privacy — မပေါက်ကြားသင့်တဲ့ အချက်အလက်တွေ မပေါက်ကြားစေဖို့၊ အသုံးပြုသူတွေရဲ့ အခွင့်အရေး နဲ့ အညီ သုံးပြုသူတွေကိုယ်တိုင် စီမံ နိုင်ဖို့ (ထည့်၊ ပြင်၊ ဖျက်) ဥပဒေ အရ ဘယ်လို လုပ်မလဲ?
၂။ တာဝန်ယူ ဆောင်ရွက်ရသူများ —
✔ Data Architects — လုပ်ငန်း တစ်ခုလုံးရဲ့ Data တွေ ဘယ်လို ဖွဲ့စည်းတည်ဆောက်၊ သိမ်းဆည်း၊ စီမံ ပြီး အသုံးပြုရမလဲ ဆိုတာကို ဆုံးဖြတ် သတ်မှတ်ရတာတွေ လုပ်ဆောင်ပါတယ်။
✔ Data Analysts — လုပ်ငန်းနဲ့ ပတ်သက်တဲ့ ဆုံးဖြတ်ချက် တွေ ချရမှာ အထောက်အကူဖြစ်စေဖို့ Data တွေကို စီစစ် ထုတ်နှုတ်ပြီး တင်ပြတဲ့ အစီရင်ခံစာတွေ အနှစ်ချုပ်တွေ လုပ်ဆောင်ရပါတယ်။
✔ Database Administrators — Data သိမ်းဆည်းထားတဲ့ Database စနစ်တွေ ကောင်းကောင်း အလုပ်လုပ်နိုင်အောင် စီမံ ထိန်းသိမ်း ပြုပြင် တာမျိုးတွေ လုပ်ဆောင်ရပါတယ်။
၃။ လုပ်ဆောင်ရမယ့် တာဝန်များ
✔ လုပ်ငန်း လည်ပတ်နေတဲ့ အချက်အလက်တွေကို စုစည်း ခွဲခြားပြီး ကွန်ပျူတာ စနစ်၊ ဆော့ဖ်ဝဲ စနစ်တွေမှာ သုံးမယ့် Data Model တွေ ဖန်တီးရတာ၊ Database Design ဆွဲရတာတွေ။
✔ Data တွေ လုံခြုံဖို့၊ မှန်ကန်ဖို့ နဲ့ မပျက်စီးဖို့ အတွက် စီမံ ထိန်းသိမ်း မယ့် လုပ်ငန်းစဉ်တွေ ချမှတ်ရတာတွေ၊ အကောင်အထည်ဖော်ရတာတွေ။
✔ Data တွေပေါ် အခြေခံပြီး လုပ်ငန်း လည်ပတ်တာ၊ တိုးချဲ့တာ၊ ပြိုင်ဆိုင်တာ နဲ့ အရေးကြီး ဆုံးဖြတ်ချက်တွေအတွက် တန်ဖိုးရှိတဲ့ Insights တွေ Intelligence တွေ ထုတ်ပေးရတာတွေ။
၄။ လုပ်ဆောင်ပြီး ထွက်လာမယ့် ရလဒ်များ
- Data Models —
(၁) Conceptual — Entity တွေနဲ့ ချိတ်ဆက်ပုံ Relation တွေ အကြမ်းဆွဲထားတဲ့ ER Diagram တွေ။
(၂) Logical — Entityတစ်ခုချင်းစီမှာ ပါဝင်တဲ့ field တစ်ခုချင်းစီ နဲ့ ချိတ်ဆက်တဲ့ field တွေပါ ပါဝင်တဲ့ Logical ER Diagram တွေ။
(၃) Physical — Logical ER Diagram ကို အခြေခံပြီး Database System တွေမှာ တည်ဆောက်လိုက်တဲ့ Physical Database။ ဒါမှမဟုတ် Code Level ကရေးထားတဲ့ Migration File တွေ။ - Data Dictionary — တည်ဆောက် ပြီးတဲ့ Data Model တွေမှာ ပါဝင်တဲ့ Entity တွေ နဲ့ Field တွေရဲ့ အသေးစိတ် ဖော်ပြချက် အဓိပ္ပါယ် ဖွင့်ဆိုချက်တွေ ရေးသားထားတဲ့ Document။
- Data Flow Diagrams — ဆော့ဖ်ဝဲထဲ User ထည့်သွင်းလိုက်တဲ့ Data တွေ ကို ဘယ်လို Process လုပ်ပြီး ဘယ် Database ဘယ် Table ဘယ် Field တွေထဲ ထည့်သိမ်း လိုက်တယ်ဆိုတာကို အသေးစိတ် ပြတဲ့ Diagram ပုံတွေ။
Reference Document ကို ဒီ LinkedIn Post မှာ ကြည့်ရှုနိုင်ပါတယ်။
Aung Kyaw Minn
Solution Architect @ AYA Innovation Labs