Top Banner
อ.ออออออ อออออ อออออ Introduction to Database สสสสสสสสสสสสสสสสสสสส สสส สสสสสสสสสสสสสสส Database Architecture and Data Model Introduction to Database
36
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

สถาปั�ตยกรรมฐานข้�อม�ล และ แบบจำ�าลองข้�อม�ล

Database Architecture and Data Model

Introduction to Database

Page 2: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

สถาปั�ตยกรรมฐานข้�อม�ล (Database Architecture)

“สถาปั�ตยกรรม” จะเป็�นการศึ�กษาถึ�งโครงสุร�างองค�ป็ระกอบหลั�กของระบบ แลัะหน�าที่!"ในแต$ลัะองค�ป็ระกอบ รวมัที่�&งการสุ'"อสุารหร'อการต(ดต$อก�บสุ$วนอ'"น ๆ ที่!"เก!"ยวข�อง ในระบบฐานข�อมั-ลั โป็รแกรมัป็ระย�กต�ไมั$ได�ข�&นอย-$ก�บโครงสุร�างข�อมั-ลัที่!"มั!การเป็ลั!"ยนแป็ลังเน'"องจากการจ�ดโครงสุร�างของระบบฐานข�อมั-ลั สุถึาบ�นANSI-SPARC ( American National Standards Institute : ANSI and Standards Planning and Requirements Committee : SPARC) มั!การแบ$งระด�บของข�อมั-ลัเป็�น 3 ระด�บ เร!ยกว$า สุถึาป็/ตยกรรมัฐานข�อมั-ลั

Page 3: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

สถาปั�ตยกรรมฐานข้�อม�ล (Database Architecture)

User1 User2 User3

InternalSchema

ConceptualSchema

View nView 2View 1

Database

Externallevel

Conceptuallevel

Internallevel

Physical dataorganization

ร�ปั สถาปั�ตยกรรมฐานข้�อม�ล 3 ระดั�บ (The ANSI-SPARC three-level architecture

Page 4: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

สถาปั�ตยกรรมฐานข้�อม�ล (Database Architecture)

ระดั�บภายใน ( Internal Level)เป็�นระด�บของการจ�ดเก0บฐานข�อมั-ลัในหน$วยเก0บข�อมั-ลัสุ1ารองจร(ง ๆ ว$ามั!โครงสุร�างข�อมั-ลัจ�ดเก0บอย$างไร (how) ในฐานข�อมั-ลั โดยโครงสุร�างข�อมั-ลัในแต$ลัะแบบจะมั!ผลัต$อป็ระสุ(ที่ธิ(ภาพของความัเร0วในการเข�าถึ�ง (access) ด�วย

Page 5: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

สถาปั�ตยกรรมฐานข้�อม�ล (Database Architecture)

ระดั�บแนวคิ�ดั (Conceptual Level)เป็�นโครงสุร�างหลั�กของระบบโดยรวมั เป็�นระด�บของการออกแบบฐานข�อมั-ลั ว$าจะเก0บข�อมั-ลัอะไร (what) แลัะมั�$งเน�นความัสุ�มัพ�นธิ� (relationship) ระหว$างข�อมั-ลั ผลัลั�พธิ�ที่!"ได�จะที่1าให�เก(ดสุ("งที่!"เร!ยกว$า Schema (มั�มัมัองระบบ ) ในระด�บน!&จะเร!ยกว$า Conceptual Schema อธิ(บายว$า ฐานข�อมั-ลัที่!"สุร�างป็ระกอบด�วยEntityอะไรบ�าง แต$ลัะEntity ป็ระกอบด�วยเขตข�อมั-ลั(Attribute)ใดบ�าง แลัะความัสุ�มัพ�นธิ�(Relationship)แต$ลัะEntityเป็�นอย$างไรการกระที่1าหร'อการป็ฏิ(บ�ต(การใด ๆ ในโป็รแกรมัจากผ-�ใช้�งานจะป็ฏิ(บ�ต(บนโครงสุร�างข�อมั-ลัในระด�บน!&เที่$าน�&น

Page 6: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

สถาปั�ตยกรรมฐานข้�อม�ล (Database Architecture)

Relationship : การก1าหนดความัสุ�มัพ�นธิ�ระหว$างตาราง แบ$งออกเป็�น1. คิวามส�มพั�นธ์"แบบหน$%งต&อหน$%ง (one-to-one relationship) : เป็�นความัสุ�มัพ�นธิ�ระหว$างentityหน�"งไป็มั!ความัสุ�มัพ�นธิ�ก�บอ!กentityหน�"งเพ!ยงหน�"งรายการเที่$าน�&น เช้$น พน�กงาน(Staff) หน�"งคนจะด-แลัหน�"งสุาขา ในขณะที่!"สุาขาจะมั!ห�วหน�าพน�กงานด-แลัได�เพ!ยงหน�"งคนStaff Manages Branch

1 1

ร-ป็ความัสุ�มัพ�นธิ�แบบหน�"งต$อหน�"ง

Page 7: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

สถาปั�ตยกรรมฐานข้�อม�ล (Database Architecture)

2. คิวามส�มพั�นธ์"แบบหน$%งต&อกล'&ม (one-to-many relationship) : เป็�นความัสุ�มัพ�นธิ�ระหว$าง entity หน�"งไป็มั!ความัสุ�มัพ�นธิ�ก�บอ!ก entity หน�"งมัากกว$าหน�"งรายการ เช้$น สุาขาหน�"งจะมั!พน�กงานอย-$หลัายคน โดยที่!"พน�กงานหลัาย ๆ คนจะสุ�งก�ดอย-$หน�"งสุาขา

Branch Is Allocated Staff1 M

ร-ป็ความัสุ�มัพ�นธิ�แบบหน�"งต$อกลั�$มั

Page 8: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

สถาปั�ตยกรรมฐานข้�อม�ล (Database Architecture)

3. คิวามส�มพั�นธ์"แบบกล'&มต&อกล'&ม(many-to-many relationship) : เป็�นความัสุ�มัพ�นธิ�แบบหลัายรายการระหว$างentityที่�&งสุอง เช้$น บ�านเช้$าหลัาย ๆ หลั�งสุามัารถึป็ระกาศึโฆษณาลังในหน�งสุ'อพ(มัพ�หลัาย ๆ ฉบ�บได� ในขณะที่!"หน�งสุ'อพ(มัพ�หลัายฉบ�บก0สุามัารถึลังโฆษณาบ�านเช้$าได�หลัายหลั�งเช้$นก�นNewspaper Is Allocated

Property_for_Rent

M N

ร-ป็ความัสุ�มัพ�นธิ�แบบกลั�$มัต$อกลั�$มั

Page 9: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

สถาปั�ตยกรรมฐานข้�อม�ล (Database Architecture)

ระดั�บภายนอก (External Level)เป็�นระด�บการมัองหร'อว(ว(View)ของข�อมั-ลัภายในฐานข�อมั-ลัสุ1าหร�บผ-�ใช้�งานแต$ลัะคน เป็�นระด�บที่!"มั!การน1าข�อมั-ลัจากฐานข�อมั-ลัไป็ใช้�งาน โดยผ-�ใช้�แต$ลัะคนสุามัารถึเลั'อกอ$านข�อมั-ลัเฉพาะที่!"ตนสุนใจหร'อต�องการใช้�เที่$าน�&น ว(วของข�อมั-ลัจะถึ-กด�งมัาจาก Conceptual Schema แลัะสุ("งที่!"ใช้�อธิ(บายว(วข�อมั-ลัที่!"ถึ-กด�งมัาจากฐานข�อมั-ลัที่!"อย-$ในระด�บ Conceptual น!&จะเร!ยกว$า External Schema หร'อ Subschema(มั�มัมัองผ-�ใช้�งาน ) ซึ่�"งสุามัารถึมั!ได�หลัาย Subschema ตามัจ1านวนผ-�ใช้�

Page 10: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

สถาปั�ตยกรรมฐานข้�อม�ล (Database Architecture)

ปัระโยชน"ข้องสถาปั�ตยกรรม 3 ระดั�บ1. ม'มมองข้�อม�ลข้องผู้��ใช�งาน (View of each

user)สุถึาป็/ตยกรรมัฐานข�อมั-ลัในแต$ลัะระด�บจะมั! DBMS ที่1าหน�าที่!"แป็ลั(Map) ระด�บข�อมั-ลัจากระด�บหน�"งไป็อ!กระด�บหน�"ง ซึ่�"ง DBMS จะต�องมั!การตรวจสุอบ Schema เพ'"อให�เก(ดความัถึ-กต�องตรงก�น การMapหร'อการแป็ลัระด�บข�อมั-ลัจะที่1าให�เก(ดป็ระโยช้น�ด�านต$าง ๆ ด�งต$อไป็น!&1. ระดั�บคิวามคิ�ดัและระดั�บภายนอก : ที่1าให�ผ-�ใช้�งานฐานข�อมั-ลัสุามัารถึมั!มั�มัมัองข�อมั-ลัที่!"แตกต$างก�น

Page 11: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

สถาปั�ตยกรรมฐานข้�อม�ล (Database Architecture)

2. ระดั�บแนวคิ�ดัและระดั�บภายใน : ที่1าให�ผ-�ใช้�งานฐานข�อมั-ลัไมั$จ1าเป็�นต�องที่ราบว$าข�อมั-ลัที่!"ต�องการใช้�น�&นถึ-กจ�ดเก0บอย-$อย$างไรในด(สุก� จะเป็�นหน�าที่!"ของ DBMS ที่!"จะด-ว$าข�อมั-ลัที่!"ผ-�ใช้�ต�องการน�&นถึ-กจ�ดเก0บอย-$ ณ ต1าแหน$งใดในด(สุก� แลั�วที่1าการด�งข�อมั-ลัน�&นจากด(สุก�มัาให�แก�ผ-�ใช้�

2. คิวามเปั,นอ�สระข้องข้�อม�ล (Data Independence)ค'อ ผ-�ใช้�ไมั$จ1าเป็�นต�องแก�ไขโป็รแกรมัที่�กคร�&งเมั'"อมั!การเป็ลั!"ยนแป็ลังโครงสุร�างหร'อข�อมั-ลัในระด�บแนวค(ดแลัะระด�บภายใน โดยจะป็ลั$อยให� DBMS เป็�นต�วจ�ดการเช้'"อมัข�อมั-ลัระด�บภายนอกก�บระด�บแนวค(ด แลัะระด�บแนวค(ดก�บระด�บภายในเอง ความัอ(สุระของข�อมั-ลัจะมั!อย-$ 2 ช้น(ด ด�งน!&

Page 12: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

สถาปั�ตยกรรมฐานข้�อม�ล (Database Architecture)

1.คิวามอ�สระข้องข้�อม�ลทางลอจำ�คิ�ล (Logical Data Independence) ค'อ การเป็ลั!"ยนแป็ลัง ค'อ การเป็ลั!"ยนแป็ลังในโครงร$างแนวค(ด เช้$น การเพ("มั การเป็ลั!"ยนแป็ลัง Attribute หร'อ ความัสุ�มัพ�นธิ�ใด ๆ จะไมั$สุ$งผลักระที่บต$อโครงร$างภายนอกที่!"ผ-�ใช้�ใช้�งานอย-$2.คิวามอ�สระข้องข้�อม�ลทางฟิ/ส�คิอล(Physical Data Independence) ค'อ ผลัของการเป็ลั!"ยนแป็ลังโครงสุร�างไฟลั�น�&นจะไมั$สุ$งผลักระที่บใด ๆ ต$อ โครงร$างแนวค(ดแลัะระด�บภายใน เช้$น เป็ลั!"ยนโครงสุร�างไฟลั�แบบเร!ยงลั1าด�บ เป็�นแบบด�ช้น! , การเป็ลั!"ยนแป็ลังโครงสุร�างการจ�ดเก0บข�อมั-ลัด�วยการใช้�อ�ป็กรณ�จ�ดเก0บข�อมั-ลัที่!"แตกต$างไป็จากเด(มั

Page 13: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

สถาปั�ตยกรรมฐานข้�อม�ล (Database Architecture)

InternalSchema

ConceptualSchema

ExternalSchema

ExternalSchema

ExternalSchema

External/Conceptualmapping

Logical data Independence

Conceptual/Internalmapping

Physical data Independence

ร�ปั แสดังคิวามอ�สระในข้�อม�ลและสถาปั�ตยกรรม 3 ระดั�บข้อง ANSI-SPARC

Page 14: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

สถาปั�ตยกรรมฐานข้�อม�ล (Database Architecture)

ว�ตถ'ปัระสงคิ"ข้องการแบ&งโคิรงสร�างฐานข้�อม�ล 3 ระดั�บ1. ผ-�ใช้�งานไมั$จ1าเป็�นต�องสุนใจในรายลัะเอ!ยดเก!"ยวก�บโครงสุร�างการจ�ดเก0บข�อมั-ลั ไมั$ว$าจะจ�ดเก0บแบบเร!ยงลั1าด�บ, แบบด�ช้น! จะป็ลั$อยให�เป็�นหน�าที่!"ของ DBMS เป็�นต�วจ�ดการ2. ผ-�ใช้�งานแต$ลัะคนสุามัารถึเข�าถึ�งข�อมั-ลัช้�ดเด!ยวก�น แลัะแสุดงข�อมั-ลัเพ!ยงบางสุ$วนเที่$าที่!"จ1าเป็�น โดยไมั$ต�องแสุดงข�อมั-ลัให�ด-ที่� &งหมัด3. ความัอ(สุระของข�อมั-ลั ค'อ ไมั$ต�องที่1าการแก�ไขโป็รแกรมัที่�กคร�&งเมั'"อมั!การเป็ลั!"ยนแป็ลังโครงสุร�างของข�อมั-ลั

Page 15: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

แบบจำ�าลองข้�อม�ล (Data Models)

ค'อ การน1าแนวความัค(ดต$าง ๆ มัาน1าเสุนอให�เก(ดเป็�นร-ป็แบบจ1าลัองเพ'"อใช้�สุ1าหร�บการสุ'"อสุารระหว$างผ-�ออกแบบฐานข�อมัลัก�บผ-�ใช้�ให�เก(ดความัเข�าใจตรงก�น

ส&วนปัระกอบข้องแบบจำ�าลองข้�อม�ล แบ$งออกเป็�น 3 สุ$วน ค'อ1. ส&วนโคิรงสร�าง (Structural) เป็�นสุ$วนที่!"ป็ระกอบด�วยกลั�$มัสุ�ญลั�กษณ�รวมัที่�&งกฎระเบ!ยบที่!"เห0นพ�องต�องก�นเพ'"อใช้�ในการสุร�างฐานข�อมั-ลั เช้$น การจ�ดเก0บข�อมั-ลัในร-ป็แบบของตาราง ซึ่�"งป็ระกอบด�วยแถึวแลัะคอลั�มัน�

Page 16: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

แบบจำ�าลองข้�อม�ล (Data Models)

2. ส&วนปัร�บปัร'ง (Manipulative) เป็�นสุ$วนที่!"ก1าหนดช้น(ดของการป็ฏิ(บ�ต(การต$าง ๆ ก�บข�อมั-ลั ป็ระกอบด�วย การUpdate หร'อการเร!ยกด-ข�อมั-ลัจากฐานข�อมั-ลั การเป็ลั!"ยนโครงสุร�างฐานข�อมั-ลั ซึ่�"งน(ยมัใช้�ช้�ดค1าสุ�"ง SQL ในการจ�ดการก�บข�อมั-ลั3. ส&วนกฎคิวามคิงสภาพั ( a set of integrity rules) เป็�นกฎเกณฑ์�ที่!"ใช้�ในการควบค�มัความัถึ-กต�องของข�อมั-ลั เพ'"อให�เก(ดความัมั�"นใจในความัถึ-กต�องแลัะความัแน$นอนของข�อมั-ลัที่!"บ�นที่�กลังในฐานข�อมั-ลั

Page 17: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

แบบจำ�าลองข้�อม�ล (Data Models)

จากแบบจ1าลัองสุถึาป็/ตยกรรมัของ ANSI-SPARC สุามัารถึก1าหนดความัสุ�มัพ�นธิ�ของแบบจ1าลัองข�อมั-ลัที่�&ง 3 ได�ด�งน!&- แบบจำ�าลองข้�อม�ลภายนอก (External Data Model) จะน1าเสุนอการว(วข�อมั-ลัของผ-�ใช้�งานต$าง ๆ- แบบจำ�าลองข้�อม�ลแนวคิ�ดั (Conceptual Data Model) จะน1าเสุนอข�อมั-ลัที่างลัอจ(ค�ลั ที่!"แสุดงถึ�งความัเป็�นอ(สุระของข�อมั-ลั ก�บ DBMS- แบบจำ�าลองข้�อม�ลภายใน (Intermal Data Model) จะน1าโครงร$างแนวค(ดเพ'"อให� DBMS สุามัารถึจ�ดเก0บแลัะการเข�าถึ�งข�อมั-ลัที่!"แที่�จร(งได�

Page 18: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

แบบจำ�าลองฐานข้�อม�ล (Database Models)

การต�ดสุ(นใจเลั'อกใช้�แบบจ1าลัองฐานข�อมั-ลัช้น(ดใดเป็�นสุ("งสุ1าค�ญต$อการออกแบบฐานข�อมั-ลั แบบจ1าลัองฐานข�อมั-ลัแบ$งออก ด�งน!&

แบบจำ�าลองข้�อม�ลล�าดั�บช�1น (Hierarchical database model) เป็�นสุถึาป็/ตยกรรมัฐานข�อมั-ลัที่!"เก$าแก$ที่!"สุ�ด ไฟลั�จะถึ-กจ�ดไว�เป็�นโครงสุร�างแบบบนลังลั$าง (top-down) มั!ลั�กษณะคลั�ายต�นไมั� (tree structure) ระด�บสุ-งสุ�ดจะเร!ยกว$า root ระด�บลั$างสุ�ดจะเร!ยกว$า leaves ไฟลั�ต$าง ๆ จะมั!เพ!ยงพ$อเด!ยว (One Parent) เที่$าน�&น แลัะแตกสุาขาออกเป็�นหลัาย ๆ ไฟลั� เร!ยกว$า ไฟลั�ลั-ก (Children files) ความัถึ-กต�องในข�อมั-ลัมั!ความัคงสุภาพ ป็/จจ�บ�นไมั$น(ยมัใช้�ก�นแลั�ว

Page 19: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

แบบจำ�าลองฐานข้�อม�ล (Database Models)

Hierarchical database Model

Page 20: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

แบบจำ�าลองฐานข้�อม�ล (Database Models)

ข้�อดั2ข้องแบบจำ�าลองฐานข้�อม�ลล�าดั�บช�1น1. มั!โครงสุร�างที่!"เข�าใจง$าย ซึ่�"งเป็�นลั�กษณะต�นไมั� (tree)2. เหมัาะก�บข�อมั-ลัที่!"มั!ความัสุ�มัพ�นธิ�แบบ one-to-many3. ความัสุามัารถึในการควบค�มัความัถึ-กต�องในข�อมั-ลั4. เหมัาะก�บข�อมั-ลัที่!"มั!การเร!ยงลั1าด�บแบบต$อเน'"อง

Page 21: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

แบบจำ�าลองฐานข้�อม�ล (Database Models)

ข้�อเส2ยข้องแบบจำ�าลองฐานข้�อม�ลล�าดั�บช�1น1. ไมั$สุามัารถึรองร�บข�อมั-ลัที่!"มั!ความัสุ�มัพ�นธิ�ในลั�กษณะของ many-to-many 2. มั!ความัย'ดหย�$นน�อย ป็ร�บเป็ลั!"ยนโครงสุร�างมั!ความัย�$งยาก3. การค�นข�อมั-ลัซึ่�"งอย-$ระด�บลั$าง ๆ จะต�องค�นหาที่�&งแฟ@มั4. ยากต$อการพ�ฒนาโป็รแกรมั

Page 22: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

แบบจำ�าลองฐานข้�อม�ล (Database Models)

แบบจำ�าลองข้�อม�ลเคิร3อข้&าย (Network database model) จะใช้�พอยน�เตอร� (pointer) เป็�นต�วโยงความัสุ�มัพ�นธิ�ระหว$างเรคคอร�ดในไฟลั�ต$าง ๆ สุน�บสุน�นความัสุ�มัพ�นธิ�ที่�&งแบบ one-to-many แลัะ many-to-many

Page 23: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

แบบจำ�าลองฐานข้�อม�ล (Database Models)

Network database Model

Page 24: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

แบบจำ�าลองฐานข้�อม�ล (Database Models)

ข้�อดั2ข้องแบบจำ�าลองฐานข้�อม�ลเคิร3อข้&าย1. สุน�บสุน�นความัสุ�มัพ�นธิ�แบบ many-to-many2. ความัซึ่1&าซึ่�อนในข�อมั-ลัเก(ดข�&นน�อยกว$าแบบลั1าด�บช้�&น3. สุามัารถึเช้'"อมัโยงข�อมั-ลัแบบไป็-กลั�บได�4. มั!ความัย'ดหย�$นในด�านของการค�นหาข�อมั-ลัด!กว$า โดยใช้�พอยน�เตอร�ในการเข�าถึ�งข�อมั-ลัได�ที่�นที่!

Page 25: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

แบบจำ�าลองฐานข้�อม�ล (Database Models)

ข้�อเส2ยข้องแบบจำ�าลองฐานข้�อม�ลเคิร3อข้&าย1. ป็@องก�นความัป็ลัอดภ�ยของข�อมั-ลัมั!น�อย 2. สุ(&นเป็ลั'องเน'&อที่!"หน$วยความัจ1าในการเก0บพอยน�เตอร�3. การเป็ลั!"ยนแป็ลังในโครงสุร�างย�งมั!ความัย�$งยากอย-$

Page 26: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

แบบจำ�าลองฐานข้�อม�ล (Database Models)

แบบจำ�าลองฐานข้�อม�ลเช�งส�มพั�นธ์" (Relational database model) เป็�นแบบจ1าลัองที่!"มั!ความัแพร$มัากที่!"สุ�ดในป็/จจ�บ�น เพราะน1าเสุนอมั�มัมัองของข�อมั-ลัในลั�กษณะตารางที่1าให�เข�าใจง$าย ภายในตารางป็ระกอบด�วยแถึว (row) แลัะคอลั�มัน� (column) , สุามัารถึมั!ความัสุ�มัพ�นธิ�ก�บตารางอ'"น ๆ ได� ไมั$ว$าเป็�นแบบ ont-to-many หร'อ แบบ many-to-many แลัะจะใช้�ค!ย�ในการอ�างอ(งถึ�งตารางอ'"น ๆ ที่!"เก!"ยวข�อง ซึ่�"งค!ย�สุามัารถึเป็�นได�ที่� &งค!ย�หลั�ก(primary key) แลัะค!ย�รอง (secondary key) เพ'"อก1าหนดการเร!ยงลั1าด�บด�ช้น!เพ'"อเข�าถึ�งข�อมั-ลัได�โดยเร0ว

Page 27: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

แบบจำ�าลองฐานข้�อม�ล (Database Models)

RELATION1(Primary Key, Attributes…)

RELATION2(Primary Key, Foreign Key, Attributes…)

Relation database model

Page 28: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

แบบจำ�าลองฐานข้�อม�ล (Database Models)

ข้�อดั2ข้องแบบจำ�าลองฐานข้�อม�ลเช�งส�มพั�นธ์"1. มั!ความัเข�าใจแลัะสุ'"อสุารได�เข�าใจง$าย เน'"องจากน1าเสุนอในลั�กษณะตาราง 2มั(ต(2. สุามัารถึเลั'อกว(วข�อมั-ลัตามัเง'"อนไขได�หลัายค!ย�ฟBลัด�3. ความัซึ่�บซึ่�อนในข�อมั-ลัมั!น�อย4. มั!ระบบความัป็ลัอดภ�ยที่!"ด! เพราะผ-�ใช้�งานจะไมั$ที่ราบถึ�งกระบวนการจ�ดเก0บข�อมั-ลัภายในฐานข�อมั-ลั5. โครงสุร�างข�อมั-ลัมั!ความัอ(สุระจากโป็รแกรมั

Page 29: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

แบบจำ�าลองฐานข้�อม�ล (Database Models)

ข้�อเส2ยข้องแบบจำ�าลองฐานข้�อม�ลเช�งส�มพั�นธ์"1. มั!ค$าใช้�จ$ายในระบบค$อนข�างสุ-ง เน'"องจากใช้�ที่ร�พยากรที่!"มั!ความัสุามัารถึสุ-ง2. แก�ไขป็ร�บป็ร�งแฟ@มัข�อมั-ลัมั!ความัย�$งยาก เน'"องจากไมั$ที่ราบถึ�งกระบวนการจ�ดเก0บข�อมั-ลัในฐานข�อมั-ลัที่!"แที่�จร(ง

Page 30: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

แบบจำ�าลองฐานข้�อม�ล (Database Models)

แบบจำ�าลองฐานข้�อม�ลเช�งว�ตถ' (Object-Oriented database model) เป็�นเที่คโนโลัย!ใหมั$ของการจ�ดการฐานข�อมั-ลัเช้(งว�ตถึ� ให�ความัสุนใจด�วยการมัองที่�กสุ("งเป็�นว�ตถึ� โดยแต$ลัะว�ตถึ�จะเป็�นแหลั$งรวมัของข�อมั-ลัแลัะการป็ฏิ(บ�ต(งาน (data and operation) มั!คลัาสุเป็�นต�วก1าหนดค�ณสุมับ�ต(หร'อรายลัะเอ!ยดของว�ตถึ� รวมัที่�&งค�ณสุมับ�ต(การป็กป็Bดความัลั�บของว�ตถึ� (encapsulation)

Page 31: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

แบบจำ�าลองฐานข้�อม�ล (Database Models)

Object Class 1

Attributes

Methods

Object Class 2

Attributes

Methods

Object Class 3

Attributes

Methods

Object-oriented database model

Page 32: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

แบบจำ�าลองฐานข้�อม�ล (Database Models)

ข้�อดั2ข้องแบบจำ�าลองฐานข้�อม�ลเช�งว�ตถ'1. สุามัารถึจ�ดการก�บข�อมั-ลัช้น(ดต$าง ๆ ที่!"มั!ความัสุลั�บซึ่�บซึ่�อนได�เป็�นอย$างด! ไมั$ว$าจะเป็�นภาพกราฟBก ว(ด!โอ แลัะเสุ!ยง 2. สุน�บสุน�นค�ณสุมับ�ต(ของการน1ากลั�บมัาใช้�ใหมั$ (Reusable)

ข้�อเส2ยข้องแบบจำ�าลองฐานข้�อม�ลเช�งว�ตถ'- ต�องใช้�บ�คลัากรที่!"มั!ความัร- �ความัเช้!"ยวช้าญ แลัะป็ระสุบการณ�ในการ

จ�ดการก�บข�อมั-ลัที่!"มั!ความัสุลั�บซึ่�บซึ่�อน

Page 33: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

แบบจำ�าลองฐานข้�อม�ล (Database Models)

แบบจำ�าลองฐานข้�อม�ลม�ลต�ไดัเมนช�น (Multidimensional database model) แบบจ1าลัองช้น(ดน!&ใช้�งานก�บคลั�งข�อมั-ลั (Data Warehouse) โดยน1าเสุนอข�อมั-ลัในลั�กษณะไดเมันช้�น แลัะจ�ดการข�อมั-ลัในอย-$ในร-ป็ของมั(ต( เช้$น การน1าข�อมั-ลัผลั(ตภ�ณฑ์�สุ(นค�า (Product) ก�บข�อมั-ลัพ'&นที่!"การขาย (Market) มัาป็ระมัวลัเป็�นตารางในร-ป็แบบของ multidimensional ที่1าให�ผ-�ใช้�สุามัารถึต�ดขวางหร'อแบ$งข�อมั-ลัออกเป็�นสุ$วน ๆ (Slicing a data cube) มัาว(เคราะห�ใช้�งานได�ตามัต�องการ

Page 34: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

แบบจำ�าลองฐานข้�อม�ล (Database Models)

Sales

SoutheastNew England

Jan Feb

Desk

Table

Chair

Multidimensional database model (multidimensional table view)

Page 35: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

แบบจำ�าลองฐานข้�อม�ล (Database Models)

Fact TableDimension1 Dimension4

Dimension2

Dimension3

Dimension5

Dimension6

Facts

Dimensions

Multidimensional database model (Star-schema view)

Page 36: สถาปัตยกรรม และแบบฐานข้อมูล

อ. อ�จฉรา สุ�มั�งเกษตร Introduction to Database

แบบฝึ6กห�ดัเร3%องท2% 2 สถาปั�ตยกรรมฐานข้�อม�ลและแบบจำ�าลองข้�อม�ล

1 . สุถึาป็/ตยกรรมั ในเช้(งคอมัพ(วเตอร�ศึาสุตร�หมัายถึ�งอะไร2. ระด�บใดที่!"มั�$งเน�นถึ�งป็ระสุ(ที่ธิ(ภาพของการเข�าถึ�งข�อมั-ลัเป็�นสุ1าค�ญ3. ระด�บใดที่!"มั�$นเน�นถึ�งความัสุะดวกต$อผ-�ใช้�งานโดยการกระที่1าใดๆ ต$อ

ข�อมั-ลัจะไมั$สุ$งผลักระที่บต$อโครงสุร�างข�อมั-ลั4. ระด�บใดมั�$งเน�นถึ�งความัสุ�มัพ�นธิ�ของข�อมั-ลัเป็�นหลั�ก5. ความัอ(สุระในข�อมั-ลัมั!บที่บาที่สุ1าค�ญอย$างไรต$อการจ�ดการฐานข�อมั-ลั ลั6. การแบ$งโครงสุร�างฐานข�อมั-ลัออกเป็�น 3 ระด�บ มั!ไว�เพ'"อว�ตถึ�ป็ระสุงค�

ใดเป็�นสุ1าค�ญ7. จงอธิ(บายความัหมัายของแบบจ1าลัองข�อมั-ลั (Data Model)8. สุ$วนป็ระกอบของแบบจ1าลัองข�อมั-ลัมั!อะไรบ�าง จงอธิ(บาย9. แบบจ1าลัองฐานข�อมั-ลัมั!ก!"ร-ป็แบบ อะไรบ�าง1 0 .สุาเหต�สุ1าค�ญป็ระการใดที่!"แบบจ1าลัองเช้(งสุ�มัพ�นธิ�ในป็/จจ�บ�นมั!การใช้�

งานมัากที่!"สุ�ด