Chapter 2 Database systems Architecture
สถาปัตยกรรมระบบฐานข้อมูล (Database systems Architecture) “แนวคิด/แบบจำลองของโครงสร้าง ส่วนประกอบหลักและหน้าที่ของแต่ละส่วนที่นำมาประกอบรวมกันเป็นระบบฐานข้อมูล”
สถาปัตยกรรมระบบฐานข้อมูล (Database systems Architecture) - ปี ค.ศ.1971 กลุ่ม DBTG (DataBase Task Group) ได้กำหนดสถาปัตยกรรมระบบฐานข้อมูลไว้ 2 ระดับ - Schema มุมมองระบบ (System View) - Subschema มุมมองผู้ใช้ (User View) - ปี ค.ศ.1975 สถาบัน ANSI-SPARC ได้กำหนดสถาปัตยกรรมระบบฐานข้อมูลไว้ 3 ระดับ - Internal Level - Conceptual Level - External Level - ทำให้เข้าใจการทำงานของแต่ละส่วนได้ง่ายขึ้น
สถาปัตยกรรม 3 ระดับ (The Three-Schema Architecture) Physical Data Organization Physical Data Organization Database Database
สถาปัตยกรรม 3 ระดับ : ระดับภายใน (The Three-Schema Architecture : Internal Level) พิจารณาวิธีการ “จัดเก็บข้อมูลอย่างไร” (HOW) เป็นระดับที่ DBMS และ OS มอง DBA สามารถจัดการรูปแบบโครงสร้างข้อมูลได้ อธิบายโครงสร้างการจัดเก็บข้อมูลเชิงกายภาพ (Physical) เพื่อให้การปฏิบัติการกับข้อมูลเป็นไปอย่างมีประสิทธิภาพ เป็นส่วนในการที่พิจารณาถึงความเร็วในการปฏิบัติการกับข้อมูล Physical Data Organization Physical Data Organization Database Database
สถาปัตยกรรม 3 ระดับ : ระดับแนวคิด (The Three-Schema Architecture : Conceptual Level) พิจารณาว่ามี “ข้อมูลอะไร” (What) ที่จะเก็บลงฐานข้อมูล เป็นมุมมองหลักของระบบ เน้นความสัมพันธ์ระหว่างข้อมูล (Data Model) กฎเกณฑ์ต่างๆ หรือคีย์ต่างๆ Structured Independent กับ Internal Level Physical Data Organization Physical Data Organization Database Database
สถาปัตยกรรม 3 ระดับ : ระดับแนวคิด (The Three-Schema Architecture : Conceptual Level) เป็นมุมมองของผู้ใช้แต่ละคน ความต้องการของข้อมูลของผู้ใช้ อาจจะต้องใช้ Derived Attribute Physical Data Organization Physical Data Organization Database Database
สถาปัตยกรรม 3 ระดับ (The Three-Schema Architecture) การเปลี่ยนแปลงในระดับล่างจะไม่มีผลต่อระดับบน Physical Data Organization Physical Data Organization Database Database
สถาปัตยกรรม 3 ระดับ (The Three-Schema Architecture) วัตถุประสงค์ ผู้ใช้ใช้ข้อมูลชุดเดียวกัน แต่อาจต้องการมองข้อมูลต่างกัน ผู้ใช้ไม่ต้องรู้ถึงระดับ Internal level เพราะ DBMS จัดการให้ เปลี่ยนโครงสร้างการจัดเก็บข้อมูลไม่มีผลต่อ View เปลี่ยน Storage ไม่มีผลต่อโครงสร้างภายในของฐานข้อมูล เปลี่ยนโครงสร้างข้อมูลไม่มีผลต่อ View
โครงร่าง , การแปลงรูป และอินสแตนซ์ (Schema , Mapping and Instance) Conceptual/Internal Mapping External/Conceptual Mapping
โครงร่าง , การแปลงรูป และอินสแตนซ์ (Schema , Mapping and Instance) Database Instance : รายการข้อมูลในฐานข้อมูลที่ถูกใช้งานในหน่วยความจำ ในขณะที่ทำงานอยู่ Schema Intension Instance Extension/State
ความอิสระของข้อมูล (Data Independence)
ความอิสระของข้อมูลเชิงตรรกะ (Logical Data Independence) การเปลี่ยนแปลงในระดับแนวคิดจะไม่ส่งผลกระทบ ต่อระดับภายนอก เช่น การเพิ่มเอนติตี้ , แอททริบิวท์ และความสัมพันธ์ ซึ่งเป็นการเปลี่ยนแปลงในระดับแนวคิด จะไม่กระทบกับมุมมองภายนอก หรือไม่ต้องแก้ไขโปรแกรมใหม่
ความอิสระของข้อมูลเชิงกายภาพ (Physical Data Independence) การเปลี่ยนแปลงในระดับภายในไม่ส่งผลกระทบต่อ ระดับแนวคิด การเปลี่ยนแปลงในระดับภายในได้แก่ การใช้โครงสร้างแฟ้มข้อมูลใหม่ หรือโครงสร้างการจัดเก็บใหม่ , ใช้หน่วยเก็บข้อมูลแบบอื่น , การแก้ไขดัชนีหรืออัลกอริธึมแบบแฮช ซึ่งการเปลี่ยนแปลงเหล่านี้จะไม่กระทบต่อระดับแนวคิดและระดับภายนอก
ส่วนประกอบโมดูลในระบบจัดการฐานข้อมูล (DBMS Component Modules) อิอิ!!! หารูปไม่เจอ ดูรูปในหนังสือหน้า 70
ภาษาที่ใช้ในฐานข้อมูล (Database Language) Data Definition Language : DDL Data Manipulation Language : DML Data Control Language : DCL
ภาษาที่ใช้ในฐานข้อมูล (Database Language) Data Definition Language : DDL Data Manipulation Language : DML ภาษาสำหรับนิยามข้อมูล ประกอบด้วยคำสั่งที่ใช้ในการกำหนด ”โครงสร้าง” ข้อมูลว่ามี แอทริบิวต์อะไร เก็บข้อมูลประเภทใด การเพิ่มแอทริบิวต์ การกำหนดดัชนีที่ใช้ในการจัดเก็บข้อมูล การกำหนดวิวของผู้ใช้จากเอนทิตี้ Data Control Language : DCL
ภาษาที่ใช้ในฐานข้อมูล (Database Language) Data Definition Language : DDL Data Manipulation Language : DML Data Control Language : DCL ภาษาสำหรับจัดดำเนินการ “ข้อมูล” ประกอบด้วยคำสั่งที่ใช้ในการเรียกใช้ข้อมูล การเปลี่ยนแปลงข้อมูล การเพิ่มหรือลบข้อมูล สามารถเรียกข้อมูลต่าง ๆ มาดู
ภาษาที่ใช้ในฐานข้อมูล (Database Language) ภาษาที่ใช้ในการ “ควบคุม” ข้อมูล ประกอบด้วยคำสั่งที่ใช้ในการควบคุมความถูกต้องของข้อมูล หรือป้องกันการเกิดเหตุการณ์ที่ผู้ใช้หลายคนเรียกใช้ข้อมูลพร้อมกัน ในขณะที่ข้อมูลนั้น ๆ กำลังปรับปรุงแก้ไขอยู่ ซึ่งเป็นเวลา เดียวกับผู้ใช้อีกคนหนึ่งก็เรียกใช้ข้อมูลนี้ และได้ค่าที่ไม่ถูกต้อง เพราะผู้ใช้คนแรกยังปรับปรุงแก้ไขไม่เสร็จ Data Definition Language : DDL Data Manipulation Language : DML Data Control Language : DCL
โปรแกรมอรรถประโยชน์ของระบบฐานข้อมูล (Database System Utilities) Loading Utility Backup Utility File Reorganization Performance Monitoring Other…
เครื่องมืออำนวยความสะดวกในการพัฒนา/สื่อสาร (Tools, Application Environment and Communications Facilities) Case Tools