chapter 2 : สถาปัตยกรรมระบบฐานข้อมูล (database...

44
LOGO 1 Chapter 2 : Chapter 2 : สสสสสสสสสสส สสสสสสสสสสส สสสสสสสสสสสสส สสสสสสสสสสสสส (Database Systems (Database Systems Architecture Architecture ) ) 4121203A สสสสสสสสสสสสส

Upload: shoshana-reynolds

Post on 03-Jan-2016

66 views

Category:

Documents


0 download

DESCRIPTION

Chapter 2 : สถาปัตยกรรมระบบฐานข้อมูล (Database Systems Architecture ). 4121203A ระบบฐานข้อมูล. วัตถุประสงค์. ทราบถึงแนวคิดและความสำคัญของสถาปัตยกรรมระบบฐานข้อมูล บอกวัตถุประสงค์ของสถาปัตยกรรม 3 ระดับของ ANSI-SPARC ได้ - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

LOGO

1

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

(Database Systems (Database Systems ArchitectureArchitecture))

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

(Database Systems (Database Systems ArchitectureArchitecture))4121203A ระบบฐานข้�อม�ล

Page 2: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

2

วั�ตถ�ปัระสงค์�ทราบถึ�งแนวคิ�ดและคิวามสำ�าคิ�ญของ

สำถึาปั�ตยกรรมระบบฐานข�อม�ลบอกว�ตถึ�ปัระสำงคิ ของสำถึาปั�ตยกรรม 3 ระด�บของ

ANSI-SPARC ได�อธิ�บายเก%&ยวก�บสำถึาปั�ตยกรรม 3 ระด�บของ

ANSI-SPARC ได�อย'างถึ�กต�องเข�าใจถึ�งสำคิ%มา (Schema) การแปัลงร�ปั

(Mapping) และอ�นสำแตนซ์ (Instance)

Page 3: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

รหั�สผู้��ใช้� ช้� อ - นามสก�ล เพศ ที่& อย�' เบอร�ต(ดต'อ วั�นเก(ดB00514 สำ�วาร% ใจสำบาย ญ 34 คิลองสำาน 025478556 12/01/1977A00128 กนก ย�นด% ช 126 บางพล�ด 026441255 09/07/1986A01245 เพ-ญศร% สำ�ขสำม ญ 49/2 จต�จ�กร 014544255 05/11/1971C13244 บ�ญม% ย�นด% ช 66 ลาดพร�าว 066458554 26/04/1980. . . . . .. . . . . .. . . . .

ฟิ+ลด� เรค์อร�ด

ไฟิล�

ไบต�

โค์รงสร�างแฟิ/มข้�อม�ล (ที่บที่วัน)

Page 4: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

ศ�พที่�เที่ค์น(ค์ที่& ค์วัรที่ราบเก& ยวัก�บฐานข้�อม�ล

ศ�พที่�เที่ค์น(ค์ศ�พที่�ที่� วัไปัเอนที่&ต&0 (Entity),ร&เลช้� น (Relation) ตาราง (Table)ที่�เพ(ล (Tuple) แถวั (Row) หัร�อ Recordแอที่ที่ร(บ(วัต� (Attribute) ค์อล�มน� (Column),

Fieldค์าร�ด(นาล(ต&0 (Cardinality) จำ2านวันแถวั (Number

of Rows)ค์&ย�หัล�ก (Primary Key) ค์'าเอกล�กษณ์�

(Unique Identifier)

Page 5: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

เอนที่&ต&0 (Entity)

ช้� อข้องวั�ตถ�หัร�อส( งใดส( งหัน5 ง ที่& จำ2าเปั6นในการจำ�ดเก7บข้�อม�ล- ค์น เช้'น น�กศ5กษา , ล�กค์�า , อาจำารย�- ส( งข้อง เช้'น หัน�งส�อ , วั&ด&โอ , ส(นค์�า

วั�ตถ�ที่& จำ�ดเก7บข้�อม�ลสามารถบอกค์วัามแตกต'างได�ถ�กสร�างข้50นโดยช้�ดข้องแอที่ที่ร(บ(วัต� (Attribute)ปัระกอบด�วัยแอที่ที่ร(บ(วัต�และที่�เพ(ล (Tuple)

Page 6: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

แอที่ที่ร(บ(วัต� (Attribute)

รายละเอ&ยดข้องข้�อม�ลในเอนที่&ต&0 ค์�ณ์สมบ�ต( หัร�อค์�ณ์ล�กษณ์ะข้องเอนที่&ต&0 หัร�อค์วัาม

ส�มพ�นธ์�

Page 7: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

เอนที่&ต&0 (ตาราง)

ที่�เพ(ล (เรค์ค์อร�ด)

แอที่ที่ร(บ(วัต� (ฟิ+ลด�)

Key หัล�ก ?

Page 8: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

DATABASE

เบอร�โที่ร เบอร�ปัลายที่าง เวัลาเร( มต�น เวัลาส(0นส�ด วั�นที่&

ตารางที่& 1

ตารางที่& 2เบอร�โที่ร ช้� อ-นามสก�ล ที่& อย�' เบอร�

ต(ดต'อ อ&เมล�ตารางที่& 3

เบอร�โที่ร ปั�ญหัา แก�ไข้ ผู้��ร�บผู้(ดช้อบ วั�นที่& เวัลา

Page 9: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

Database system

DATABASE

แผู้นกบ�ญช้& แผู้นกปัระช้าส�มพ�นธ์�

DBMSฝ่;ายบร(หัาร

Page 10: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

ระบบการจำ�ดการฐานข้�อม�ลDatabase management

systems : DBMS ซอฟิที่�แวัร�ระบบช้น(ดหัน5 ง ที่& ถ�กสร�างข้50นมาเพ� อจำ�ดการ ข้�อม�ลในฐานข้�อม�ล เปั6นต�วักลางระหัวั'างผู้��

ใช้�ก�บฐานข้�อม�ลส'วันปัระกอบข้อง DBMS• SQL (Structure Query Language)• โปัรแกรมอ�านวยคิวามสำะดวก (General Utilities)• โปัรแกรมช'วยสำร�างโปัรแกรมปัระย�กต และรายงาน (Applicaton and Report Generators)• พจนาน�กรมข�อม�ล (Data Dictionary)

Page 11: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

11

คิวามสำามารถึเบ01องต�น• สำร�างตารางข�อม�ล • เพ�&ม ปัร�บปัร�ง เร%ยกคิ�นข�อม�ล• เก-บรายละเอ%ยดเก%&ยวก�บข�อม�ลไว�ใน data dictionary• ม%ระบบเสำร�มการท�างาน • ม%ระบบสำ�ารองข�อม�ล• สำน�บสำน�นเคิร0&องม0อการท�ารายงาน

ระบบการจำ�ดการฐานข้�อม�ลDatabase management

systems : DBMS

Page 12: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

12

ช้� อซอฟิที่�แวัร� บร(ษ�ที่ผู้��ผู้ล(ต หัมายเหัต�DB2 IBM ซอฟิที่�แวัร�ล(ข้ส(ที่ธ์(=Informix IBM ซอฟิที่�แวัร�ล(ข้ส(ที่ธ์(=Ingres Ingres corporation ฟิร&ซอฟิที่�แวัร�InterBase Borland ซอฟิที่�แวัร�ล(ข้ส(ที่ธ์(=MaxDB MySQL AB ฟิร&ซอฟิที่�แวัร�Microsoft Access Microsoft ซอฟิที่�แวัร�ล(ข้ส(ที่ธ์(=

Microsoft SQL Server Microsoft ซอฟิที่�แวัร�ล(ข้ส(ที่ธ์(=MySQL MySQL AB ฟิร&ซอฟิที่�แวัร�Oracle Oracle ซอฟิที่�แวัร�ล(ข้ส(ที่ธ์(=PostgreSQL

PostgreSQL Global Development Group ฟิร&ซอฟิที่�แวัร�

Sybase Sybase Inc. ซอฟิที่�แวัร�ล(ข้ส(ที่ธ์(=

ซอฟิที่�แวัร�ระบบจำ�ดการฐานข้�อม�ล

Page 13: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

13

ฮาร�ดแวัร�- หน'วยน�าข�อม�ลเข�า- หน'วยน�าข�อม�ลออก- หน'วยปัระมวลผลกลาง- หน'วยเก-บข�อม�ลสำ�ารอง- อ�ปักรณ์ การสำ0&อสำาร

ซอฟิที่�แวัร�- โปัรแกรมจ�ดการฐานข�อม�ล

บ�ค์ลากร- ผ��ใช�งาน- ผ��คิวบคิ�มระบบ- ผ��พ�ฒนาโปัรแกรม

ข้�0นตอนการด2าเน(นงาน- ข�1นตอนการปัฏิ�บ�ต�การของผ��ปัฏิ�บ�ต�งาน

ข้�อม�ลฐาน

ข้�อม�ล

องค์�ปัระกอบข้องระบบฐานข้�อม�ล

Page 14: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

เพ0&อให�การด�งข�อม�ลจากฐานข�อม�ลได�รวดเร-วและม%ปัระสำ�ทธิ�ภาพจ�าเปั9นต�องออกแบบเทคิน�คิการจ�ดเก-บข�อม�ลด�วยโคิรงสำร�างท%&ซ์�บซ์�อนข�1น เน0&องจากผ��ใช�งานท�&วไปัไม'ใช'ผ��ท%&ฝึ;กฝึนมาทางคิอมพ�วเตอร ด�งน�1นจ�งคิวรซ์'อนรายละเอ%ยดคิวามซ์�บซ์�อนด�งกล'าวเพ0&อท�าให�การต�ดต'อใช�งานง'ายและสำะดวกข�1น

ระบบฐานข้�อม�ลต�องที่2าใหั�ผู้��ใช้�งานแต'ละค์นมองเหั7นข้�อม�ลในระด�บที่& ตนต�องการ กล'าวคิ0อ ระบบจ�ดการฐานข�อม�ลจะซ์'อนรายละเอ%ยดเก%&ยวก�บการจ�ดการข�อม�ลในระด�บกายภาพ (โคิรงสำร�างของฐานข�อม�ล)

แนวัค์(ดเก& ยวัก�บสถาปั�ตยกรรมข้องระบบฐานข้�อม�ล

Page 15: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

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

สำถึาปั�ตยกรรมของระบบฐานข�อม�ล (architecture for ad database system) เปัร%ยบเสำม0อนกรอบซ์�&งจะใช�เปั9นปัระโยชน ในการบรรยายถึ�งแนวคิ�ดและอธิ�บายถึ�งโคิรงสำร�างของระบบฐานข�อม�ลแบบต'างๆ

สำถึาปั�ตยกรรมระบบฐานข�อม�ล หมายถึ�ง การอธิ�บายเก%&ยวก�บโคิรงสำร�างและสำ'วนปัระกอบหล�กท%&น�ามาปัระกอบรวมก�นเปั9นระบบฐานข�อม�ล

Page 16: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

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

ก�าหนดมาตรฐานโดย ANSI /SPARC(American National Standards Institute/System Planning and Requirements Committee) ในปั= 1975

สำถึาปั�ตยกรรมของฐานข�อม�ลม% 3 ระด�บ ปัระกอบด�วย ระด�บภายนอก (External level) ระด�บค์วัามค์(ด (Concept level) ระด�บภายใน (Internal level)

Page 17: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

PhysicalStorage of data

PhysicalStorage of data

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

... ระด�บภายนอก

ระด�บแนวัค์(ด

ระด�บภายใน

สค์&มา (Schema)(Global logical

view)

วั(วั 2วั(วั 1 วั(วั nExternal level

Conceptual level

Internal level

Page 18: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

Schema และ Instantเคิ�าร'างฐานข�อม�ล (Database Schema) คิ0อ น�ยามหร0อคิ�า

บรรยาย (Description) ของฐานข�อม�ล ซ์�&งปัระกอบด�วย น�ยามโคิรงสำร�างฐานข�อม�ล และข�อบ�งคิ�บต'างๆท%&ฐานข�อม�ลคิวรย�ดไว�

แผนภาพเคิ�าร'าง (Schema Diagram) คิ0อแผนภาพแสำดงเคิ�าร'างฐานข�อม�ล (Database schema)

Schema construct คิ0อสำ'วนปัระกอบของเคิ�าร'าง (Schema) หร0อว�ตถึ�ในเคิ�าร'าง เช'น STUDENT,COURSE เปั9นต�น

Database Instant คิ0อข�อม�ลจร�งท%&เก-บไว�ในฐานข�อม�ล ณ์ เวลาใดเวลาหน�&ง หร0ออาจเร%ยกว'า สำถึานะฐานข�อม�ล (Database State) หร0อ Occurrence

Page 19: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

แผู้นภาพเค์�าร'าง (Schema diagram)

แผู้นภาพเค์�าร'าง (Schema diagram)

Page 20: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

เค์�าร'างฐานข้�อม�ล (Database Schema)

และสถานะฐานข้�อม�ล (Database State)สำถึานะฐานข�อม�ล (Database State) หมายถึ�ง เน01อหาของฐานข�อม�ลในช'วง

เวลาใดเวลาหน�&งสำถึานะฐานข�อม�ลเร�&มต�น (Initial Database State) คิ0อ สำถึานะฐานข�อม�ลเม0&อ

ถึ�กโหลดValid State หมายถึ�งสำถึานะท%&เปั9นไปัตามโคิรงสำร�างและข�อบ�งคิ�บของฐานข�อม�ลล�กษณ์ะพ�เศษ (Distinction)

- เคิ�าร'างฐานข�อม�ล (Database Schema) น�1นม%การเปัล%&ยนแปัลงน�อยคิร�1งมาก ในขณ์ะท%&สำถึานะข�อม�ล (Database State) จะเปัล%&ยนแปัลงไปัท�กคิร�1งท%&ม%การปัร�บปัร�งแก�ไขฐานข�อม�ล- เคิ�าร'าง (Schema) อาจถึ�กเร%ยกว'า Intention ในขณ์ะท%& สำถึานะ (State)

ถึ�กเร%ยกว'า Extension

Page 21: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

PhysicalStorage of data

PhysicalStorage of data

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

... ระด�บภายนอก

ระด�บแนวัค์(ด

ระด�บภายใน

สค์&มา (Schema)(Global logical

view)

วั(วั 2วั(วั 1 วั(วั nExternal level

Conceptual level

Internal level

Page 22: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

1.ระด�บภายนอกหัร�อวั(วั (External Level)

ระด�บภายนอกจำะเก& ยวัข้�องก�บผู้��ใช้�งานมากที่& ส�ด ซ์�&งจะเปั6นส'วันที่& แสดงข้�อม�ลส2าหัร�บผู้��ใช้�งานในแต'ละรายไปั จำะไม'สามารถเข้�าไปัด�โค์รงสร�างข้องฐานข้�อม�ลได� โดยผู้��ใช้�แต'ละค์นสามารถเล�อกข้�อม�ลที่& ตนเองต�องการและสนใจำ เช'น น�กศ�กษาเข�าไปัใช�งานเว-บไซ์ต ของกองบร�การการศ�กษาเพ0&อด�ผลการเร%ยน เปั9นต�น• หน�าต'างหร0อว�ว (view) ท%&ผ��ใช�ภายนอกม%สำ�ทธิ�

เข�าไปัใช�ได� โดยแต'ละคินจะม%ม�มมองต'างก�น• โปัรแกรมจะมองเห-นโคิรงสำร�างข�อม�ลเพ%ยงบาง

สำ'วนเท'าน�1น• สำคิ%มาระด�บภายนอก (External Schema)

เปั9นการแสำดงข�อม�ลท%&ถึ�กด�งมาจากฐานข�อม�ลท%&อย�'ในระด�บแนวคิ�ดเฉพาะสำ'วนท%&ต�องการ

Page 23: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

1. ระด�บภายนอกหัร�อวั(วั(External Level, View)

เปั9นระด�บของข�อม�ลท%&เปั9นภาพท%&ผ��ใช�งานมองเห-น (View) เคิ�าร'างของข�อม�ลในระด�บน%1เก�ดจากภาพและคิวามต�องการของผ��ใช�งานรห�สำพน�กงาน ช0&อ ว�นท%&จ�าง เง�นเด0อน ต�าแหน'ง รห�สำแผนก MGRNO

รห�สำแผนก ช0&อแผนก ท%&ต� 1ง

รห�สำโคิรงการ ช0&อโคิรงการ ว�นท%&เร�&ม ว�นท%&จบ งบปัระมาณ์

รห�สำโคิรงการ รห�สำพน�กงาน จ�านวนช�&วโมง

พน�กงาน (User View 1)

แผนก(User View2)

โคิรงการ (User View3)

ท%มงาน(User View4)

Page 24: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

ระด�บภายนอก (External Level)

รหั�สล�กค์�า ช้� อ นามส

ก�ล ที่& อย�' รหั�สไปัรษณ์&ย�

เบอร�โที่รศ�พที่�

00001

สมค์(ด อย�'เสมอ

222 ต. โค์กกรวัดอ. เม�องจำ.นค์รราช้ส&มา

30000 0-4421-4124

00002

สมหัญ(ง

งามที่ร�พย�

14/77 ถนน ลาดพร�าวั บางกะปั+

กร�งเที่พฯ

10300 0-2666-7766

00003

สมช้าย

หัล'อล20า 111/100 แข้วังวั�ง ใหัม' เข้ตวั�งเก'า

กร�งเที่พฯ

10290 0-1111-2323

00004

สมปัอง

ม&ก(จำ 1/1 ถนนม�ข้มนตร&อ. เม�องจำ.นค์รราช้ส&มา

30000 0-4444-4441

00005

สมส'วัน

ม&บ�ญ 123 ต. ในเม�องอ. เม�อง จำ.ข้อนแก'น

40002 0-4324-2333

Page 25: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

2.ระด�บแนวัค์(ด (Conceptual Level)

ระด�บแนวัค์(ดอาจำเร&ยกอ&กอย'างวั'า โค์รงสร�างข้�อม�ลระด�บลอจำ(ค์อล (logical) จะกล'าวถึ�งการออกแบบโค์รงสร�างข้องข้�อม�ล เช้'น ข้�อม�ลที่& จำ�ดเก7บจำะปัระกอบด�วัยเอนที่&ต&0ใดบ�าง แต'ละเอนที่(ต&0ปัระกอบด�วัยแอที่ร(บ(วัที่�ใด โคิรงสำร�างระด�บน%1จะม�'งเน�นคิวามสำ�มพ�นธิ (relationship) หร0อเร%ยกว'าแบบจ�าลองข�อม�ล (data model) เปั6นระด�บที่& จำะอธ์(บายถ5งวั'า ข้�อม�ลอะไรที่& จำะจำ�ดเก7บลงในฐานข้�อม�ลและม&ค์วัามส�มพ�นธ์�ก�นอย'างไร ใคิรท%&สำามารถึเข�าไปัใช�งานได�บ�าง ใช�งานได�ในระด�บไหน โดยพ�จารณ์าจากผ��ใช�ภายนอก (External Level) ว'าต�องการข�อม�ลใดบ�าง

Page 26: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

2. ระด�บแนวัค์(ด (Conceptual Level)

ปัระกอบด�วยเคิ�าร'างท%&อธิ�บายถึ�ง ฐานข�อม�ลม% Entity (Table)ใดบ�าง โคิรงสำร�างของข�อม�ล คิวามสำ�มพ�นธิ ของข�อม�ล กฎเกณ์ฑ์ และข�อจ�าก�ดต'างๆ

โดยจะผ'านการว�เคิราะห จาก น�กว�เคิราะห และออกแบบระบบ และผ��บร�หารฐานข�อม�ล (DBA)

Page 27: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

ระด�บแนวัค์(ด (Conceptual Level)

Employee

Dep2 Dep3Dep1

Student1

B4555555

Somchai

Saetung

7146 Suranivet 7

Student

StudentID

FirstName

LastName

Address

Order_Detail

OrderID

ProID

ProCount

Discount

Product

ProID

ProName

UnitPrice

ProDes

Page 28: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

3. ระด�บภายใน (Internal or Physical Level) ระด�บภายในเปั6นระด�บที่& เก& ยวัข้�องก�บการ

ออกแบบการจำ�ดเก7บข้�อม�ลข้องฐานข้�อม�ลในหัน'วัยค์วัามจำ2าวั'าจำ�ดเก7บโดยวั(ธ์&ใด ผู้��ใช้�ระด�บภายนอก (External Level) จำ5งจำะสามารถใช้�งานฐานข้�อม�ลได�อย'างรวัดเร7วั เปั9นระด�บท%&เก%&ยวข�องก�บผ��พ�ฒนาโปัรแกรมหร0อผ��พ�ฒนาระบบในระด�บกายภาพ

ผ��ออกแบบต�องคิ�าน�งถึ�งการใช�อ�ปักรณ์ และเทคิโนโลย%ในการเก-บข�อม�ล การเข�าถึ�ง ว�ธิ%การบ�าร�งร�กษา

Page 29: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

การแบ'งโคิรงสำร�างฐานข�อม�ลออกเปั9น 3 ระด�บเปั6นการแยกม�มมองเฉพาะข้องผู้��ใช้�งานออกจำากวั(ธ์&การจำ�ดเก7บข้�อม�ลจำร(งบนส� อบ�นที่5กข้�อม�ล ม%เหต�ผลสำน�บสำน�นการแบ'งแยกด�งกล'าวหลายปัระการด�งน%1

1. ผ��ใช�งานแต'ละคินสำามารถึด�งข�อม�ลเด%ยวก�นจากฐานข�อม�ลน�ามาจ�ดโคิรงสำร�างท%&เหมาะสำมก�บการใช�งาน ของตนเอง การปัร�บเปัล%&ยนโคิรงสำร�างคิวรท�าได�อย'างอ�สำระโดยไม'สำ'งผลกระทบก�บผ��ใช�งานคินอ0&น ๆ

2. ผ��ใช�งานไม'จ�าเปั9นต�องไปัย�'งเก%&ยวหร0อร�บร� �รายละเอ%ยดของการจ�ดการข�อม�ลบนสำ0&อบ�นท�กข�อม�ลว'าใช�เทคิน�คิอะไร

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

Page 30: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

3. ผ��บร�หารจ�ดการฐานข�อม�ล (DBA) ต�องสำามารถึปัร�บเปัล%&ยนโคิรงสำร�างหร0อน�ยามของฐานข�อม�ลโดยไม'สำ'งผลกระทบต'อม�มมองเฉพาะของผ��ใช�งานท�&วไปั และผ��ใช�งานท�ก ๆ ระด�บ

4. โคิรงสำร�างการจ�ดเก-บข�อม�ลภายในของฐานข�อม�ลจะไม'ถึ�กกระทบจากการเปัล%&ยนแหล'งเก-บข�อม�ล ต�วอย'างเช'น ย�ายหร0อแบ'งข�อม�ลไปัเก-บบนอ�ปักรณ์ บ�นท�กข�อม�ลใหม'

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

Page 31: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

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

เค์�าร'างแนวัค์(ด

เค์�าร'างภายใน

ฐานข�อม�ล

ว�วของผ��ใช� 1 ว�วของผ��ใช� 2External Level

Conceptual Level

Internal Level

Page 32: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

ปัระโยช้น�ข้องสถาปั�ตยกรรม 3ระด�บ

ม�มมองข้�อม�ลข้องผู้��ใช้�งาน• ท�าให�ผ��ใช�งานไม'ต�องสำนใจว'าข�อม�ลจะถึ�กเก-บอย'างไรในด�สำคิ

เม0&อต�องการข�อม�ลก-สำามารถึอ�างถึ�งตารางและเขตข�อม�ลน�1น ๆ ได�โดยตรง ซ์�&ง DBMS จะท�าหน�าท%&ด�ว'าข�อม�ลท%&ต�องการ

น�1นเก-บอย�' ณ์ ต�าแหน'งใด (track ใด cylinder ใด ในด�สำคิ และท�าการด�งข�อม�ลน�1นจากด�สำก มาให�แก'ผ��ใช�)

ค์วัามเปั6นอ(สระก�นข้องข้�อม�ล• การเปัล%&ยนแปัลงข�อม�ลในระด�บแนวคิ�ดไม'ม%ผลกระทบก�บ

โปัรแกรมปัระย�กต ท%&ผ��ใช�เข%ยนข�1นในระด�บภายนอก• การเปัล%&ยนแปัลงว�ธิ%การเก-บข�อม�ลในสำ0&อ ไม'ม%ผลกระทบก�บ

การเก-บข�อม�ลระด�บแนวคิ�ด

Page 33: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

กล'าวโดยสำร�ปัระด�บภายนอก (external level) เปั9นระด�บใกล�ก�บผ��ใช�งานมากท%&สำ�ด กล'าวคิ0อเปั9นการมองเห-นข�อม�ลในแง'ม�มเฉพาะของผ��ใช�งาน (User View)

ระด�บภายใน (internal level) เปั9นระด�บใกล�ก�บการจ�ดเก-บข�อม�ลทางกายภาพมากท%&สำ�ด กล'าวคิ0อเปั9นการมองโคิรงสำร�างของข�อม�ลสำ�าหร�บระบบจ�ดการฐานข�อม�ล (DBMS) และระบบปัฏิ�บ�ต�การคิอมพ�วเตอร (Operating System) โคิรงสำร�างระด�บภายในเปั9นโคิรงสำร�างของข�อม�ลท%&จ�ดเก-บบนสำ0&อบ�นท�กข�อม�ลรวมไปัถึ�งการจ�ดการแฟ้Cมข�อม�ล

ระด�บแนวัค์(ด (Conceptual level) เปั9นระด�บคิ�&นกลางระหว'างระด�บท�1งสำองโดยม%ฟ้�งก ช� &นปัร�บเปัล%&ยน (mapping) และม%คิวามเปั9นอ�สำระของข�อม�ล (data independence) ระหว'างระด�บภายนอกและระด�บภายใน

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

Page 34: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

Mapping

•ในสำถึาปั�ตยกรรม ANSI/SPARC ม�มมองท%&ม%ต'อข�อม�ลในสำถึาปั�ตยกรรมในระด�บท%&สำ�งกว'าสำามารถึท%&จะถึ'ายทอด

ม�มมองน�1นไปัย�งสำถึาปั�ตยกรรมในระด�บท%&ต�&ากว'าได� เร%ยกว'า การท�า “

Mapping” แบ'งเปั9น 2 ล�กษณ์ะคิ0อ

1. Conceptual/Internal Mapping

2. External/Conceptual Mapping

Page 35: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

Mapping

Page 36: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

Mapping

1. Conceptual/Internal Mapping

เปั9นการถึ'ายทอดม�มมองท%&ม%ต'อข�อม�ลจากระด�บ Conceptual ไปัย�ง

ระด�บ Internal เพ0&อน�าโคิรงสำร�างของข�อม�ลต'างๆ ในระด�บ

Conceptual มาก�าหนดโคิรงสำร�างของ Record และ Field ท%&จะน�าไปัใช�จ�ดเก-บข�อม�ล เช'นข�อม�ลในระด�บ Conceptual ถึ�กแสำดงอย'างไรใน

ระด�บ Internal

Page 37: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

Mapping

2. External/Conceptual Mapping

เปั9นการถึ'ายทอดม�มมองท%&ม%ต'อข�อม�ลจากระด�บ Externalไปัย�งระด�บ Conceptual เพ0&อก�าหนดโคิรงสำร�างของ Record และ Field ให�สำามารถึคิรอบคิล�มคิวามต�องการหร0อม�มมองต'างๆ ของผ��ใช� เช'น การแปัลงข�อม�ลระด�บภายนอกเปั9นตารางหร0อแอททร�บ�วต ต'างๆ

Page 38: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

ค์วัามเปั6นอ(สระข้องข้�อม�ล (Data Independence)

เน0&องจากในระบบแฟ้Cมข�อม�ล เม0&อม%การเปัล%&ยนแปัลงโคิรงสำร�างทางกายภาพของแฟ้Cม

ข�อม�ลใด จะต�องม%การเปัล%&ยนแปัลงโปัรแกรมต'างๆ ท%&เร%ยกใช�ข�อม�ลในแฟ้Cมข�อม�ลน�1นด�วย

เช'น เปัล%&ยนแฟ้Cมข�อม�ลพน�กงาน จากเด�มเร%ยงล�าด�บตามช0&อมาเปั9นตามรห�สำพน�กงานแทน ท�าให�

ต�องม%การแก�ไขโปัรแกรมตามโคิรงสำร�างท%&เปัล%&ยนแปัลงไปั ซ์�&งการท%&ข�อม�ลและโปัรแกรมไม'

เปั9นอ�สำระต'อก�นน%1 เร%ยกว'า “Data Dependence”

Page 39: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

ค์วัามเปั6นอ(สระข้องข้�อม�ล (Data Independence)

• สำถึาปั�ตยกรรมของระบบฐานข�อม�ลท%&จ�ดแบ'งออกเปั9น 3 ระด�บ สำามารถึท%&จะใช�อธิ�บายถึ�งคิวามเปั9นอ�สำระของข�อม�ล ซ์�&งเปั9นจำ�ดเด'นข้องระบบฐานข้�อม�ล ค์�อเม� อม&การเปัล& ยนแปัลงโค์รงสร�างที่& ระด�บใดก7ตาม จำะไม'ม&ผู้ลกระที่บ

ที่2าใหั�ระด�บที่& อย�'เหัน�อกวั'าต�องที่2าการเปัล& ยนแปัลงโค์รงสร�างตามไปัด�วัย แบ'งออก

เปั9น 2 ปัระเภทคิ0อ 1. คิวามเปั9นอ�สำระของข�อม�ลในเช�ง

ตรรกะ(Logical Data Independence)2. คิวามเปั9นอ�สำระของข�อม�ลในเช�ง กายภาพ

(Physical Data Independence)

Page 40: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

ค์วัามเปั6นอ(สระข้องข้�อม�ล (Data Independence)

ค์วัามเปั6นอ(สระข้องข้�อม�ลในเช้(งตรรกะ (Logical Data Independence)เปั9นคิวามอ�สำระของข�อม�ลในระด�บแนวคิ�ดก�บระด�บภายนอก น�&นคิ0อถึ�าม%การเปัล%&ยนแปัลงข�อม�ลในระด�บแนวคิ�ดจะไม'ม%ผลต'อระด�บภายนอก

ค์วัามเปั6นอ(สระข้องข้�อม�ลในเช้(งกายภาพ (Physical Data Independence) เปั9นคิวามอ�สำระของข�อม�ลในระด�บภายในก�บระด�บแนวคิ�ด น�&นคิ0อถึ�าม%ปัร�บปัร�งเคิ�าร'างในระด�บภายในโดยจะกระทบต'อระด�บภายแนวคิ�ดและระด�บภายนอก

Page 41: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

ค์วัามเปั6นอ(สระข้องข้�อม�ล

ภาษา COBOL

ข้�อม�ลระด�บภายนอก

ข้�อม�ลระด�บหัล�กการ

ข้�อม�ลระด�บภายนอก

ภาษา SQLภาษา PASCAL

โค์รงสร�างระด�บภายนอก

โค์รงสร�างระด�บหัล�กการ

โค์รงสร�างระด�บภายใน

ผู้��ใช้� 1 ผู้��ใช้� 2 ผู้��ใช้� 3

DBMS

Page 42: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

42

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

(architecture for ad database system) เปัร%ยบเสำม0อนกรอบซ์�&งจะใช�เปั9นปัระโยชน ในการบรรยายถึ�งแนวคิ�ดและอธิ�บายถึ�งโคิรงสำร�างของระบบฐานข�อม�ลแบบต'างๆ

โคิรงสำร�างฐานข�อม�ล 3 ระด�บ คิ0อ ระด�บภายนอก ระด�บภายใน และระด�บแนวคิ�ดซ์�&งเปั9นร�ปัแบบและโคิรงสำร�างท%&ใช�ก�บระบบฐานข�อม�ลโดยท�&วไปั

Page 43: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

43

สร�ปัคิวามเปั9นอ�สำระของข�อม�ลเช�งตรรกะ (logical data

independence) ในคิวามหมายท%&ใช�ก�บระบบฐานข�อม�ลจะหมายถึ�งม�มมองของผ��ใช�ต'อข�อม�ลโดยเม0&อม%การเปัล%&ยนแปัลงแก�ไขโคิรงสำร�างข�อม�ลในระด�บแนวคิ�ด จะไม'ม%ผลกระทบต'อโคิรงสำร�างข�อม�ลในระด�บภายนอกท%&ผ��ใช�ใช�งานอย�'

คิวามเปั9นอ�สำระของข�อม�ลเช�งกายภาพ (physical data independence) หมายถึ�ง เม0&อม%การเปัล%&ยนแปัลงแก�ไขโคิรงสำร�างข�อม�ลในระด�บภายใน จะไม'ม%ผลกระทบต'อโคิรงสำร�างข�อม�ลในระด�บแนวคิ�ด หร0อระด�บภายนอก

Page 44: Chapter 2 :  สถาปัตยกรรมระบบฐานข้อมูล  (Database Systems Architecture )

44

ค์2าถามที่�ายบที่ที่& 21. สำถึาปั�ตยกรรมระบบฐานข�อม�ล หมายถึ�งอะไร2. สำถึาปั�ตยกรรม 3 ระด�บ ปัระกอบด�วยระด�บใด

บ�าง จงอธิ�บาย3. จงสำร�ปัคิวามหมายของคิ�าว'า สำก%มา การแปัลง

ร�ปั และอ�นสำแตนซ์ 4. การแปัลงร�ปัม%ก%&ปัระเภท อะไรบ�าง จงอธิ�บาย5. การอ�สำระของข�อม�ลม%ก%&ชน�ด อะไรบ�าง จง

อธิ�บาย