ကဗ်ာ/ရသ/နည္းပညာ

Relational Database

Sep 16, 2013


ယေန႔ေခတ္ Relational Database Management System (RDBMS) မ်ားသည္ Data မ်ားသိမ္းဆည္းျခင္းထက္ပိုေသာ လုပ္ငန္းစဥ္မ်ားကို လုပ္ေဆာင္လာၾကပါၿပီ။ RDBMS မ်ား Data မ်ား သိမ္းဆည္းျခင္းသာမက၊ သိမ္းဆည္းထားေသာ Data မ်ားကို Manage လုပ္ျခင္း၊ မည္သည့္ Data အမ်ဳိးအစားမ်ားသာ Database ထဲကိုသို႔ သိမ္းဆည္းခြင့္ျပဳမည္ဆိုေသာ ကန္႔သတ္ျခင္း၊ Data မ်ားျပန္လည္ထုတ္ယူျခင္း၊ Business Rules မ်ားထည့္သြင္းျခင္း စသည္မ်ားလည္း လုပ္ေဆာင္ေပးႏိုင္လာပါသည္။
------------------------------------------------------------
Database တြင္ဘာ Object ေတြ ပါသလဲ ......
- Database
- Transaction Log
- Tables
- Indexes
- Filegroups
- Diagrams
- Views
- Stored Procedures
- User-defined functions
- Users
- User-defined data types
စတာေတြ ပါဝင္ပါတယ္ . . .
------------------------------------------------------------
1. Database Object ဆိုတာ . .
Database Object သည္ SQL Server တစ္ခုတြင္ Database တစ္ခုေဆာက္ရန္အတြက္ အေျခခံအက်ဆံုး Object တစ္ခုျဖစ္သည္။ Database တစ္ခုတြင္ ပါဝင္ေသာ အျခား object မ်ားသည္ Database Object ေအာက္တြင္သာရွိပါသည္။ RDBMS တစ္ခု (SQL Server တစ္လံုး) တြင္ Database Object ေပါင္း မ်ားစြာ ပါဝင္ႏိုင္ပါသည္။ Microsoft SQL Server တြင္ဆိုပါက Server Install လုပ္လိုက္သည္ႏွင့္ ေအာက္ပါ database objects မ်ား ပါဝင္လာမည္ျဖစ္ပါသည္ ။
a. master
b. model
c. msdb
d. tempdb
၎ databse objects မ်ားသည္ Microsoft SQL server တစ္လုံးအတြက္ Minimam Requirement ျဖစ္ပါသည္။ မိမိတင္လိုသည့္ Microsoft SQL Server အမ်ဳိးအစားေပၚမူတည္၍ ေနာက္ထပ္ပါဝင္လာသည့္ database objects မ်ားလည္း ရွိပါေသးသည္။

2. Transaction Log
Transaction Log သည္ မိမိတို႔ database အတြင္း ျပဳလုပ္သမွ် ေျပာင္းလည္းမႈမ်ားအအား မွတ္သားေပးေသာ file တစ္ခုပင္ ျဖစ္သည္။ ေနာင္တစ္ခ်ိန္ မိမိတို႔ Server တြင္ ျပဳလုပ္ခဲ့ေသာ ေျပာင္းလဲမႈမ်ားအား ျပန္လည္ ၾကည့္ရႈႏိုင္ရန္ျဖစ္သည္။ တစ္ခါတစ္ရံ database အတြင္းရွိ data size သည္ ၎ log ၏ size ထက္ မ်ားစြာ ငယ္ေနတတ္သည္။

3. Table
Table သည္ Database တစ္ခုအတြင္းရွိ အေျခခံအက်ဆံုး object တစ္ခုျဖစ္သည္။ Database အတြင္းထည့္သြင္းလိုက္ေသာ data မ်ားသည္ tables မ်ားအတြင္းသုိ႔ သိမ္းဆည္းထားျခင္းျဖစ္သည္။ databse table သည္ Excel ကဲ့သုိ႔ပင္ Columns(domain data), Rows (entity data) မ်ားျဖင့္ တည္ေဆာက္ထားသည္။ Columns တစ္ခုခ်င္းဆီတြင္ ၎တို႔၏ ကိုယ္ပိုင္ rules မ်ားရွိသည္။ (ဥပမာ မည္သည့္ Data အမ်ဳိးအစားမ်ား သာ ထို column အတြင္း ထည့္သြင္းခြင့္ျပဳျခင္း)။

4. Indexes
ျမင္သာေအာင္ ေျပာရမည္ဆိုလွ်င္ Index သည္ database အတြင္းမွကၽြန္ေတာ္တို႔ ျပန္လည္ထုတ္ယူခ်ိန္တြင္ လွ်င္ျမန္စြာ ထုတ္ယူႏိုင္ေအာင္ key မ်ားျဖင့္ စီထားေပးျခင္းျဖစ္သည္။ Index ႏွစ္မ်ဳိးရွိသည္ . . . Clustered ႏွင့္ Non-Clustered ဟူ၍ ျဖစ္သည္။ Clusterd Index သည္ table တစ္ခုတြင္ အမ်ားဆံုး တစ္ခုသာ ပါဝင္ႏိုင္သည္။ Non-Clustered Index သည္ table တစ္ခုတြင္ အမ်ားအျပား ပါဝင္ႏိုင္သည္။

5. Files Group
ပံုမွန္အားျဖင့္ database အတြင္းသိမ္းဆည္းေသာ data မွန္သမွ်ကို file တစ္ file ထဲတြင္သာသိမ္းထားသည္ ( log file မပါဝင္ပါ)။ သို႔ေသာ္ ကၽြန္ေတာတို႔ ကိုယ္တိုင္လည္း user-define file မ်ား ထည့္သြင္းႏိုင္သည္။ ၎ထည့္သြင္းေသာ file ကို secondry file ဟုေခၚသည္။ database ၏ data မ်ားကို primary ဖိုင္မွ ခြဲထြက္သိမ္းဆည္းေပးႏိုင္သည္။ Microsoft SQL Server တြင္ User-defined file (secondry file ) 32,000 ေက်ာ္ေက်ာ္ ထည့္သြင္းခြင့္ျပဳထားသည္။

6. Diagrams
Diagrams မ်ားသည္ database ကို ပံုျဖင့္ ေဖာ္ညႊန္းထားျခင္းပင္ျဖစ္သည္။ ၎ diagrams မ်ားတြင္ tables မ်ား၊ view မ်ား၊ relationship မ်ားပါဝင္သည္။ ERD (Entity Relationship Diagram) ကိုဆိုလိုျခင္းျဖစ္သည္။ ၎ကို (၂) ပိုင္းခြဲထားသည္။ Entity ႏွင့္ Relationship ဟူ၍ျဖစ္သည္။

7. Views
view သည္ virtual table ျဖစ္သည္။ ၎တြင္ ကိုယ္ပိုင္ data မ်ားမပါဝင္ပဲ မိမိလိုခ်င္ေသာ data မ်ားကို ၾကိဳတင္ qurey ေရးထားျခင္းျဖစ္ပါသည္။ ၎ query သည္ အျခား ေသာ table မ်ားမွ လိုအပ္ေသာ data (၎ query ႏွင့္ကိုက္ညီေသာ data ) မ်ားကို view အျဖစ္ ထုတ္ျပျခင္းျဖစ္သည္။

8. Store Procedures(sprocs)
Store procedure သည္ database အတြင္းေရးသားထားေသာ program ငယ္ေလးကို ဆိုလုိသည္။ Transact-SQL Statements မ်ားေပါင္းစည္းထားျခင္းျဖစ္သည္။ ၎တြင္ variable မ်ား၊ parameter ထည့္ျခင္းမ်ား၊ condition & looping မ်ားကို လုပ္ေဆာင္ႏိုင္ပါသည္။

9. User-Defined Functions(UDF)
Store Procedure ႏွင့္တူညီသည္။ သို႔ေသာ္ UDF သည္ SQL Data Type အေတာ္မ်ားမ်ားကို return ျပန္ေပးႏိုင္သည္။

10. User
User ဆိုသည္မွာ Database အတြင္း Login ဝင္ရန္ျဖစ္သည္။ User ဟုေျပာလွ်င္ Role ကို ခ်န္ထား၍မရေပ။ User တစ္ေယာက္တြင္ Roles မ်ားစြာပါဝင္သည္။ ဥပမာအေနႏွင့္ file တစ္ခုကို permission ေပးမည္ဆိုပါက အေျခခံအေနႏွင့္ Read, Write, Execute, Full Control စတာေတြပါဝင္သည္။ ထို႔ေနာက္ ၎ permission ကို လိုက္နာမည့္ user ရွိရသည္။ ထို Read Permission, Write Permission လုပ္ခြင့္ရျခင္းသည္ Role ပင္ျဖစ္သည္။ ဆိုလိုသည္မွာ မည္သည့္ Role ပိုင္ရွင္သည္ Read permission ရသည္။ မည္သည့္ Role ပိုင္ရွင္ကေတာ့ျဖင့္ Read & Write ရသည္။ စသည္ကဲ့သို႔ျဖစ္သည္။

11. User-define data type
User-Defined data type ဆိုသည္မွာ System Data Type ကို မိမိလိုအပ္ခ်က္အရ ခ်ဲ႕ထြင္၊ ေပါင္းစပ္ ၍ သတ္မွတ္ထားျခင္းျဖစ္သည္။
မူရင္း>> Q+ Computer Center (မံုရြာ)

No comments:

Post a Comment