สถาปัตยกรรมระบบ ฐานข้อมูล Database System Architecture 1

27 Slides206.50 KB

สถาปัตยกรรมระบบ ฐานข้อมูล Database System Architecture 1

สถาปัตยกรรมระบบฐาน ข้อมูล การอธิบายเกี่ยวกับโครงสร้างและ ส่วนประกอบหลักที่นำมาประกอบ รวมกันเป็นระบบฐานข้อมูล 2

สถาปัตยกรรม 3 ระดับ (The Three Schema Architecture) – ระดับภายนอก หรือ วิว (External Level หรือ View) เป็นระดับของ ข้อมูลที่อยูส ่ ง ู สุด – ระดับแนวคิด (Conceptual Level) – ระดับภายใน (Internal Level หรือ Physical Level) 3

สถาปัตยกรรม 3 ระดับ ของ ANSI-SPARC External Level หรือ View Conceptual Level Internal Level หรือ Physical Level 4

ระดับภายใน (Internal Level หรือ Physical Level – ระดับภายในจะมีโครงสร้างภายใน (Internal Schema) ที่ อธิบายเกี่ยวกับโครงสร้างการจัดเก็บเชิงกายภาพของฐาน ข้อมูลกำหนดโครงสร้างข้อมูลเพื่อจัดเก็บข้อมูล การจัดการพื้นที่เพื่อการจัดเก็บข้อมูลและการเรียงลำดับดัชนีขอ ้ มูล จัดเก็บรายละเอียดของเรคอร์ด การจัดวางตำแหน่งของเรคอร์ด การบีบอัดข้อมูลและเทคนิคการเข้ารหัสข้อมูล โครงสร้างข้อมูลระดับภายใน ในมุมมองผู้ใช้ฐานข้อมูลไม่ สามารถเห็นรายละเอียดทางกายภาพในระดับนี้ เพราะถูกซ่อน ไว้ นอกจากผู้บริหารฐานข้อมูลที่สามารถเปลี่ยนแปลง โครงสร้างข้อมูลเหล่านี้ 5

ระดับแนวคิด (Conceptual Level) เป็นโครงสร้างระดับตรรกะ ระดับนี้จด ั เป็นโครงสร้าง หลักของระบบโดยรวม โดยมุง ่ เน้นความสัมพันธ์ ระหว่างข้อมูล การกระทำหรือการปฏิบต ั ิการใด ๆ ใน โปรแกรมผู้ใช้งาน จะปฏิบต ั ิบนโครงสร้างข้อมูลระดับ นี้เท่านัน ้ โดยโครงสร้างระดับแนวคิดนี้เป็นระดับที่ อธิบายว่ามีขอ ้ มูลอะไรบ้างที่จะเก็บลงในฐานข้อมูล ด้วยการแสดงข้อมูลและความสัพพันธ์ระหว่างข้อมูล ในระบบ ผู้บริหารฐานข้อมูลหรือโปรแกรมเมอร์ เท่านัน ้ ที่สามารถเข้าไปแก้ไขโครงสร้างข้อมูลได้ 6

ระดับแนวคิด (Conceptual Level) ระดับแนวคิดจะเกี่ยวข้องกับ – จำนวนเอ็นติตี้ทัง ้ หมด ซึ่งประกอบไปด้วยแอตตริบวิ ต์ ที่ใช้อธิบายคุณสมบัติของแต่ละเอ็นติตี้รวมถึงความ สัมพันธ์ระหว่างเอนติตี้ในระบบ – กฏเกณฑ์ขอ ้ บังคับในข้อมูล (Constraints) – ระบบความปลอดภัยและกฎความคงสภาพในข้อมูล (Integrity) สำหรับการนำเสนอข้อมูลในระดับแนวคิด ข้อมูลที่ แสดงจะอยูใ่ นรูปแบบตารางหรือรีเลชัน ่ 7

ระดับภายนอก หรือ วิว (External Level) มุมมองของผู้ใช้ ซึ่งเป็นระดับสูงสุดที่เกี่ยวข้องกับผู้ใช้งาน มากที่สด ุ ระดับภายนอกนี้ก็คือบางส่วนของระดับแนวคิด กล่าวคือ ระดับแนวคิดเป็นโครงสร้างหลักของระบบโดยรวม ทัง ี วามจำเป็นที่จะเห็นโครงสร้างทัง ้ หมด แต่ผู้ใช้ไม่มค ้ หมด เพียงแต่ต้องการข้อมูลบางส่วนที่จำเป็นต่อการใช้งาน เช่น มีขอ ้ มูลของนักศึกษาและข้อมูลสาขาวิชา และต้องการ ทราบว่านักศึกษาแต่ละคนอยูส ่ าขาใด ก็ไม่จำเป็นต้องเห็น โครงสร้างทัง ้ หมด แต่แสดงเพียงรหัสนักศึกษา ชื่อ-สกุล รหัสสาขาและชื่อสาขา ระดับภายนอกจึงเป็นการนำข้อมูลระดับแนวคิดมาแสดงแก่ ผู้ใช้งาน ซึ่งมุมมองการใช้งานของผู้ใช้จะแตกต่างกัน 8

วัตถุประสงค์ของการแบ่ง สถาปัตยกรรมฐานข้อมูล เพื่อให้ผู้ใช้แต่ละคนสามารถเข้าถึงข้อมูลชุดเดียวกัน แต่อาจมี ความแตกต่างในข้อมูลที่นำเสนอต่อผู้ใช้แต่ละคนได้ กล่าวคือ ผู้ใช้แต่คนสามารถเข้าไปกำหนดมุมมองข้อมูลของตน (User view) ได้ตามความต้องการจากไฟล์ขอ ้ มูลเดียวกัน และการ เปลี่ยนแปลงข้อมูลของแต่ละคนจะไม่สง ่ ผลต่อข้อมูลหลักใด ๆ รวมถึงไม่สง ่ ผลกระทบต่อผู้ใช้คนอื่นด้วย ผู้ใช้ไม่จำเป็นต้องปฏิบต ั ิโดยตรงกับฐานข้อมูลในระดับภายใน ซึ่งอยูใ่ นระดับกายภาพ ผู้ใช้ไม่ต้องสนในรายละเอียดเกี่ยวกับ โครงสร้างการจัดการข้อมูลในฐานข้อมูล ไม่วา่ จะเป็นการเรียง ลำดับ แบบดัชนี หรือแฮช โดยปล่อยให้เป็นหน้าที่ของ DBMS 9

วัตถุประสงค์ของการแบ่ง สถาปัตยกรรมฐานข้อมูล ผู้บริหารฐานข้อมูล DBA สามารถที่จะดำเนินการ เปลี่ยนแปลงโครงการจัดการเก็บข้อมูลในฐานข้อมูล ได้ โดยไม่สง ่ ผลกระทบใด ๆ ต่อมุมมองผู้ใช้งาน กรณีมก ี ารเปลี่ยนแปลงอุ ปกรณ์จด ั เก็บข้อมูล ก็ไม่ ส่งผลกระทบต่อโครงสร้างภายในฐานข้อมูล ผู้บริหารฐานข้อมูลสามารถเข้าไปเปลี่ยนแปลงข้อมูล ในระดับแนวคิด ซึ่งการเปลี่ยนแปลงดังกล่าวไม่สง ่ ผลกระทบต่อผู้งานใด ๆ เช่น หากต้องการเพิม ่ เติม ฟิลด์เข้าไปในโครงสร้าง หรือเพิม ่ ความกว้างฟิดล์ 10

Database schema Database schema คือ รายละเอียดในภาพรวม ของฐานข้อมูล โดยโครงร่างหรือสคีมาเปรียบเสมือน พิมพ์เขียวทางเทคนิคฐานข้อมูล โดยมีโครงร่างอยู่ 3 ชนิด – External schema นำเสนอข้อมูลได้หลายมุมมองตาม ความต้องการของผู้ใช้แต่ละคน อาจเรียกอีกชื่อคือ Subschema – Conceptual schema เกี่ยวข้องกับเอนติตี้ แอตตริบวิ ต์ และความสัมพันธ์ – Internal schema เกี่ยวข้องกับข้อมูลจริง ๆ ที่ถก ู จัดเก็บ ลงในโครงสร้างเพื่อบันทึกลงในสื่ออุ ปกรณ์จด ั เก็บข้อมูล 11

Mapping DBMS จะทำหน้าที่ถ่ายทอดมุมมอง หรือที่เรียกว่า การ Mapping ระหว่าง โครงร่างหรือ schema ทัง ้ 3 ชนิด โดยต้องมีการตรวจสอบความ สอดคล้องตรงกันของโครงร่าง 12

ความเป็นอิสระของข้อมูล (Data independence) –ความเป็นอิสระของข้อมูลทางตรรกะ (logical data independence) –ความเป็นอิสระของข้อมูลทางกายภาพ (physical data independence) 13

Logical data independence ในการเปลี่ยนแปลงโครงร่าง แนวคิด(Conceptual schema ) เช่นการเพิม ่ และการลบเอ็นติตี้ และการเปลี่ยนแปลงแอตตริบิ วต์ หรือการเปลี่ยนแปลงความสัมพันธ์ ซึ่งการกระ ทำบนโครงร่างแนวคิดดังกล่าวจะไม่สง ่ ผลกระทบ ต่อโครงร่างภายนอก (External schema) ที่ผู้ ใช้ใช้งานอยู่ ผู้ใช้ก็ยง ั คงสามารถวิวข้อมูลได้เช่นเดิม โดยอาจไม่มี ความจำเป็นต้องแก้ไขโปรแกรมใด ๆ 14

Physical data independence ในการเปลี่ยนแปลงโครงร่างภายใน (Internal schema ) ไม่วา่ จะเป็นการจัดโครงสร้างแฟ้ม ใหม่หรือการจัดโครงสร้างอุ ปกรณ์เก็บข้อมูล ใหม่ เช่น การปรับปรุงดัชนี การเปลี่ยนแปลงอัล กอรึทึมแฮชชิง ่ หรือการย้ายฮาร์ดิสก์หนึ่งไปยัง ฮาร์ดดิสก์อีกตัวหนึ่ง ซึ่งการกระทำดังกล่าวจะ ไม่สง ่ ผลกระทบต่อโครงร่างแนวคิดหรือโครง ร่างภายนอกแต่อย่างใด 15

ส่วนประกอบของระบบจัดการฐาน ข้อมูล ส่วนประกอบโมดูลในระบบจัดการ ฐานข้อมูล –Database and DBMS Catalog/Dictionary –DDL compiler –Query Complier 16

Database and DBMS Catalog/Dictionary ถูกจัดเก็บอยูใ่ นดิสก์ การเข้าถึงข้อมูลจะถูก ควบคุมโดย OS แต่ในระดับที่สง ู กว่านัน ้ มี โมดูล Stored Data Manager ทำหน้าที่ควบคุมการเข้า ถึงสารสนเทศที่จด ั เก็บอยูบ ่ นสื่อบันทึกข้อมูล ซึ่งอาจขอใช้บริการพื้นฐานของ OS เพื่อโอน ถ่ายข้อมูลกับดิสก์กับหน่วยความจำหลัก 17

DDL compiler มีหน้าที่แปลคำสัง่ จากภาษานิยามข้อมูล โดย ผลลัพธ์จากการคอมไพล์ชุดประโยคคำสัง่ DDL จะได้พจนานุกรมข้อมูล (Data Dictionary) ส่วน Run-Time Database Processor จะ จัดการด้านแอกเซสข้อมูลในช่วงการประมวลผล ไม่วา่ จะเป็นการดึงข้อมูล การอัปเดต หรือการโอน ถ่ายข้อมูลในฐานข้อมูล ซึ่งการเข้าถึงดิสก์ดังกล่าว จะดำเนินผ่าน Stored Data Manager 18

Query Complier จะจัดการเกี่ยวกับคิวรีหรือการ สอบถามข้อมูล เมื่อมีการสอบถาม ผ่านคิวรี ในส่วนนี้จะดำเนินการ วิเคราะห์และแปล จากนัน ้ เรียก Run-Time Database Processor เพื่อประมวลผลต่อไป 19

โปรแกรมอรรถประโยชน์ของระบบ ฐานข้อมูล โปรแกรม Loading Utility โปรแกรมสำรองข้อมูล Backup Utility โปรแกรมปรับโครงสร้างการจัดเก็บข้อมูล File Reorganization โปรแกรมตรวจจับสมรรถนะการทำงาน Performance Monitoring 20

โปรแกรม Loading Utility เป็นยูทิลิตี้โปรแกรมที่ใช้สำหรับโหลดไฟล์ที่มอ ี ยู่ เดิมให้มาอยูใ่ นรูปแบบโครงสร้างของฐานข้อมูลที่ใช้ ในปัจจุบน ั ตัวอย่างเช่น – การนำเท็กซ์ไฟล์หรือซีเควนเชียลไฟล์ ซึ่งเป็นข้อมูล ต้นฉบับมาผ่านโปรแกรมโหลดดิ้งเพื่อแปลงให้อยูใ่ นรูป แบบของไฟล์ตามโครงสร้างของฐานข้อมูล – การถ่ายโอนจาก DBMS หนึ่งไปยัง DBMS อีกตัวหนึ่ง – การย้ายข้อมูลจากระบบเดิมมาเป็นระบบใหม่ 21

โปรแกรมสำรองข้อมูล Backup Utility เป็นยูทิลิตี้ที่ใช้สำหรับการสำรองข้อมูล และ เรียกข้อมูลคืนมาในกรณีที่ฐานข้อมูลเสียหาย ปกติการสำรองข้อมูลควรจะกระทำเมื่อมีการ อัปเดตข้อมูล แม้วา่ จะเป็นงานที่ยุง ่ ยากและ ต้องใช้เวลาในการสำรอง ทัง ้ นี้เพื่อช่วยลด ความเสีย ่ งกรณีที่ฐานข้อมูลเกิดความเสียหาย 22

โปรแกรมปรับโครงสร้างการ จัดเก็บข้อมูล File Reorganization ยูทิลิตี้โปรแกรมปรับโครงสร้างการจัดเก็บ ข้อมูล โปรแกรมนี้จะใช้งานเพื่อการ เปลี่ยนแปลงโครงสร้างการจัดเก็บข้อมูลใหม่ ในฐานข้อมูลไปยังรูปแบบโครงสร้างใหม่ ทัง ้ นี้ เพื่อเป็นการเพิม ่ ประสิทธิภาพการเข้าถึงข้อมูล ให้ดียง ิ่ ขึ้น 23

โปรแกรมตรวจจับสมรรถนะ การทำงาน Performance เป็นยูทิลิตี้ที่ใช้สMonitoring ำหรับการตรวจจับการใช้งานฐานข้อมูล และมีการจัดเก็บบันทึกไว้เป็นสถิติ ซึ่งสถิติการใช้งานผู้ บริหารฐานข้อมูลสามารถนำไปใช้งานเพื่อการประกอบการ ตัดสินใจ และค้นหาวิธก ี ารปรับปรุงงานให้มป ี ระสิทธิภาพ สูงขึ้น ตัวอย่างเช่น มีการตรวจจับพบว่าช่วงเวลาใดเวลาหนึ่ง ของทุกวันทำการ ได้มผ ี ู้ใช้งานฐานข้อมูลในเวลาพร้อมกัน จำนวนมาก ส่งผลให้ระบบตอบสนองการใช้งานโดยรวม ค่อนข้างช้า ดังนัน ้ ผู้บริหารฐานข้อมูลนำไปวิเคราะห์เพื่อ ค้นหาวิธก ี ารและปรับปรุงเวลาตอบสนองในช่วงเวลาดัง กล่าวให้มป ี ระสิทธิภาพดีข้น ึ กว่าเดิม 24

เครื่องมืออำนวยความสะดวกด้านการ พัฒนาและการสื่อสาร Case Tools เป็นเครื่องมือที่ชว่ ยอำนวย ความสะดวกในการใช้งาน เช่น – เครื่องมือจัดการพจนานุกรมข้อมูล สามารถ นำข้อมูลทัง ้ หมดในระบบมาแสดงผลในรูปแบบ มาตรฐานของพจนานุกรมข้อมูล ซึ่งใน พจนานุกรมประกอบไปด้วย รายละเอียดของแอ ตตริบวิ ต์ ชนิดข้อมูล และกฎเกณฑ์ขอ ้ บังคับ สิง ่ เหล่านี้เป็นประโยชน์ต่อผู้บริหารฐานข้อมูลที่ สามารถนำไปใช้งานในอนาคต 25

เครื่องมืออำนวยความสะดวกด้านการ พัฒนาและการสื่อสาร – เครื่องมือช่วยพัฒนาแอปพลิเคชัน ่ โปรแกรม เช่น PowerBuilder ทำให้นัก ออกแบบ/นักพัฒนาสามารถพัฒนาแอป พลิเคชัน ่ เพื่อจัดการฐานข้อมูล ไม่วา่ จะ เป็นการออกแบบฐานข้อมูล การสร้าง ฟอร์ม คิวรี เพื่อการอัปเดตข้อมูลได้อย่าง มีประสิทธิภาพและรวดเร็ว 26

เครื่องมืออำนวยความสะดวกด้านการ พัฒนาและการสื่อสาร – เครื่องมือด้านการสื่อสาร ที่เรียกว่า DBMS and Data Communication Systems หรือ เรียกสัน ้ ๆ DB/DC ก็สามารถนำไปใช้ เพื่อการติดต่อเพื่อการเข้าถึงข้อมูลระยะ ไกลในกรณีอยูต ่ ่างพื้นที่ ด้วยการสื่อสาร ผ่านสายโทรศัพท์ เครือข่ายแลน หรือ สื่อสารผ่านดาวเทียม 27

Related Articles

Back to top button