Naming Convention in Data Model

Table နဲ့ Column တွေကို ဘယ်လို နာမည်ပေးကြမလဲ။

Data Model တည်ဆောက်တဲ့ အချိန်မှာ tables တွေ columns တွေ ကို နာမည်ပေးတဲ့ ပုံစံကလဲ အရေးကြီးတဲ့ အခန်းက ပါပါတယ်။ ကိုယ်ရဲ့ table နဲ့ column နာမည်တွေကို ကိုယ်စိတ်ကြိုက် ပေးတာက မှားတယ်လို့ ပြောလို့မရပေမယ့် ကိုယ် တည်ဆောက်ထားတဲ့ data model တွေကို အခြားသူများနဲ့ share သုံးကြတဲ့ အခါတွေမှာ စနစ်တကျ နာမည်ပေးထားဖို့ ပိုလိုအပ်ပါတယ်။

Data warehouse တွေမှာကတော့ dimensions tables တွေ ကို Dim နဲ့ နာမည်အစပေးပြီး fact tables တွေကိုတော့ Fact နဲ့ အစပေးပါတယ်။ ဥပမာ၊ DimCustomer, FactSales စသည်ဖြင့် ပေးတာမျိုးပါ။ Table ကို tbl နဲ့ စပြီး View ကို vW ဆိုတာမျိုး စပေးတာမျိုးလဲ ရှိတတ်ပါတယ်။ သတိထားရှောင်ရမှာကတော့ VwDimCstmr လို tbl_100_FactShmpt တို့လို နားလည်ရခက်တဲ့ နာမည် မျိုးပါ။ table တွေတင်မကပဲ column နာမည်တွေကို ပေးတဲ့ နေရာမှာလဲ သူသက်ဆိုင်ရာ attribute ကို ကိုယ်စားပြုနိုင်တဲ့ နားလည်လွယ်နိုင်တဲ့ နာမည်ပဲ ပေးသင့် ပါတယ်။

Table နဲ့ Column တွေ ကို နာမည်ပေးတဲ့ အချိန်မှာ ဒီအချက်တွေကို လိုက်နာရပါမယ်။

၁. Dimensions တွေရဲ့ နာမည်က သက်ဆိုင်ရာ business asset ပေါ် မူတည်ပြီး ပေးရပါမယ်။ ဉပမာအားဖြင့် Customer dimension အတွက် table ဆိုရင် Customer သို့ Customers အနေနဲ့ ပေးသင့်ပါတယ်။ Product dimension အတွက် table ဆိုရင်လဲ Product သို့ Products အနေနဲ့ ပေးသင့်ပါတယ်။ Dimension တွေဆိုရင်တော့ “s” မထည့်ပဲ ပေးတာ ပိုပြီး သင့်တော်ပါတယ်။

၂. Product category တို့လို့ Country Ship တို့လို စကားလုံး တစ်မျိုးထက်ပိုပြီး သတ်မှတ်တဲ့ တချို့ business asset တွေကို နာမည် ပေးမယ်ဆိုရင် ProductCategory သို့ CountryShip ပုံစံမျိုးနဲ့ ပေးသင့်ပါတယ်။ Product နဲ့ Category ကြားမှာ Space ထည့်ပြီး ပေးလို့လည်း ရပေမယ့် Table နာမည်မှာ space ပါနေရင် DAX formula တွေရေးတဲ့ အချိန်မှာ မှန်ကန်တဲ့ ရေးရမယ့် ပုံစံနဲ့ ရေးမှ ရမှာမို့ ဖြစ်နိုင်ရင် space မပါတဲ့ ပုံစံနဲ့ပဲပေးသင့်ပါတယ်။

၃. Fact တွေရဲ့ နာမည်ပေးတဲ့ အချိန်မှာတော့ Business Process ပေါ်မူတည်ပြီး ပေးရမှာ ဖြစ်ပါတယ်။ ဉပမာ Sale Process အတွက် ဆိုရင် Sales၊ Purchase Process အတွက် ဆိုရင် Purchases ဆိုပြီး လုပ်ဆောင်ချက် အများကိုယ်စားပြု နာမည်မျိုးကိုပဲ ပေးသင့်ပါတယ်။ ဒီလို ပေးခြင်းအားဖြင့် Model မှာ Sales နဲ့ Customer နဲ့ ချိတ်ဆက်တဲ့ အခါမှာ Customer တစ်ယောက်အနေနဲ့ Sales အများကြီးကို ဖြစ်စေနိုင်တယ် ဆိုတဲ့ One to Many relationship ကို ပိုမြင်သာစေပါတယ်။

၄. Table နဲ့ Column name တွေကို နားလည်လွယ်အောင် ပေးရမှာ ဖြစ်ပေမယ့် သိပ်ရှည်တဲ့ နာမည်မျိုးတော့ မပေးသင့်ပါဘူး။ ဉပမာ။ CountryOfShipmentOfGoodsSoldByReseller ဆိုတာမျိုးအစား မလိုအပ်တဲ့ အညွှန်းတွေ ဖယ်ပြီး CountryShipForResellers လိုမျိုးပဲ ရွေးချယ်ပေးသင့်ပါတယ်။

၅. သိပ်ရှည်တဲ့ နာမည်မျိုးကို ရှောင်ရမှာဖြစ်သလို Business ကို ကိုယ်စားမပြုနိုင်တဲ့ တိုလွန်းတဲ့ နာမည်မျိုးကိုလဲ ရှောင်ရမှာ ဖြစ်ပါတယ်။ ဉပမာ။ Country Shipment For Reseller ဆိုတာမျိုးအစား CSR လို့ အတိုချုပ်ပေးလိုက်မယ် ဆိုရင် ဘာကို ကိုယ်စားပြုတယ်ဆိုတာ သိဖို့ခက်ခဲပြီး မှတ်မိရင်းနှီးနေဖို့လည်း ခက်ခဲပါတယ်။

၆. Dimension table တွေရဲ့ Key ကို ပေးတဲ့ အခါမှာ Dimension name နောက်မှာ Key စာလုံးကို ထည့်ပြီး ပေးသင့်ပါတယ်။ ဉပမာ။ Customer table ရဲ့ Primary key ကို CustomerKey လို့ ပေးတာမျိုးပါ။ Customer table ကို reference လုပ်တဲ့ Sales table မှာလဲ Customer အတွက် Foreign Key ဖြစ်တဲ့ အတွက် CustomerKey အနေနဲ့ပဲ ပေးသင့်ပါတယ်။

အချုပ်အနေနဲ့ ဆိုရရင် Data Model ရဲ့ table တွေ column တွေကို နာမည် ပေးတဲ့ အချိန်မှာ အထက်မှာ ဖော်ပြခဲ့တဲ့ အချက်တွေကို အခြေခံ စဉ်းစားပြီး ပေးထားမယ်ဆိုရင် နားလည်ရလွယ်ကူသလို အသုံးပြုသူများ အကြားလဲ share လုပ်သုံးဖို့လည်း ပိုပြီ အဆင်ပြေတဲ့ model တစ်ခုကို ရလာမှာ ဖြစ်ပါတယ်။