บทที่ 2 การจัดการระบบฐานข้อมูล
2.1 ระดับของข้อมูล
ระบบฐานข้อมูล
มีการจัดแบ่งระดับของข้อมูลเป็น 3 ระดับ
รูปที่ 2.1 ระดับของข้อมูล 3 ระดับ
2.1.1 ระดับภายนอกหรือวิว (External Lever หรือ View)
หมายถึง
ระดับของข้อมูลที่อยู่สูงที่สุด ประกอบด้วยภาพที่ผู้ใช้แต่ละคนจะมองข้อมูลหรือวิว (View) ของตนเอง
2.1.2 ระดับแนวความคิด (Conceptual View)
หมายถึง
ระดับของข้อมูลที่อยู่ถัดมา เป็นการมองเอนทิตี้และความสัมพันธ์ระหว่างเอนทิตี้
รวมทั้งกฎเกณฑ์และข้อจำกัดต่างๆ
ข้อมูลในระดับนี้เป็นข้อมูลที่ผ่านการวิเคราะห์และออกแบบโดยผู้บริหารฐานข้อมูลหรือนักวิเคราะห์ระบบมาแล้ว
เพื่อให้ผู้ใช้ข้อมูลในระดับภายนอกสามารถเรียกใช้ข้อมูลในรูปแบบต่างๆกันตามที่ผู้ใช้ต้องการ
2.1.3 ระดับภายใน (Internal
Lever หรือ Physical View)
หมายถึง
ระดับของข้อมูลที่อยู่ล่างสุด
เป็นระดับการจัดเก็บข้อมูลจริงๆว่ามีโครงสร้างการจัดเก็บอย่างไร
วิธีการเข้าถึงข้อมูลในฐานข้อมูลทำอย่างไร
จากการแบ่งระดับข้อมูลเป็น 3 ระดับข้างต้นจึงทำให้ผู้ใช้ไม่ต้องสนใจกับรายละเอียดในการจัดเก็บข้อมูล
รวมทั้งไม่ต้องทราบข้อมูลส่วนที่ตนเองไม่ได้ใช้
การแบ่งระดับข้อมูลดังกล่าวมาเป็นประโยชน์ในเรื่องของความเป็นอิสระของข้อมูล
ดังที่ได้อธิบายไปแล้วว่าตัวจัดการฐานข้อมูล (DBMS) จะทำหน้าที่เชื่อมข้อมูลระหว่างระดับภายนอกกับระดับแนวความคิด
และเชื่อมระดับแนวความคิดกับระดับภายในซึ่งการเชื่อมโยงข้อมูลดังกล่าวจะเกี่ยวข้องกับความเป็นอิสระของข้อมูลด้วยเช่นกัน
จึงจะขอกล่าวรายละเอยีดในเรื่องของความเป็นอิสระของข้อมูลเพิ่มเติมจากที่ได้กล่าวถึงไปบ้างแล้ว
2.2 ระดับของข้อมูล
ความเป็นอิสระของข้อมูล (Data Independence)
2.2.1 ความเป็นอิสระของข้อมูลเชิงกายภาพ (Physical
Data Independence) หมายถึง
การเปลี่ยนแปลงแก้ไขโครงสร้างในระดับภายใน
จะไม่กระทบต่อโครงสร้างในระดับแนวความคิดและระดับภายนอก เช่น
การเปลี่ยนวิธีการเรียกใช้ข้อมูลจากเดิมให้มีประสิทธิภาพมากขึ้นจะไม่กระทบต่อระดับแนวความคิดหรือระดับผู้ใช้
2.2.2 ความเป็นอิสระของข้อมูลในเชิงตรรกะ (Logical
Data Independence) หมายถึง การเปลี่ยนแปลงข้อมูลในระดับแนวความคิด
จะไม่กระทบต่อโครงสร้างระดับภายนอก หรือโปรแกรมที่ประยุกต์ใช้งาน เช่น
การเพิ่มแอททริบิวต์หรือเอนทิตี้ใหม่เข้าไปในฐานข้อมูล เป็นต้น
2.3 เค้าร่างของฐานข้อมูล (Database
Schema)
เมื่อใดที่มีการเรียกใช้หรือแก้ไขข้อมูล
จะทำให้ค่าของข้อมูลในฐานข้อมูลเปลี่ยนแปลงได้ตลอดเวลา ข้อมูลในฐานข้อมูล ณ
เวลาใดเวลาหนึ่ง เราเรียกว่า Instance ของข้อมูล ดังนั้นแล้ว Instance ของฐานข้อมูลจึงเปลี่ยนแปลงได้ตลอดเวลา
ส่วนเค้าร่างที่ได้จากการออกแบบฐานข้อมูล (Database schema) ซึ่งเป็นการกำหนดว่าฐานข้อมูลจะประกอบด้วยเอนทิตี้ แอททริบิวต์อะไรบ้าง
มีความสัมพันธ์ระหว่างเอนทิตี้อย่างไรนั้นไม่ควรมีการเปลี่ยนแปลง
และถ้ามีการเปลี่ยนแปลงก็ไม่ควรเกิดขึ้นบ่อยครั้ง
จากการแบ่งระดับข้อมูลเป็น 3 ระดับ
ดังกล่าวแล้วนั้น ข้อมูลในระดับดังกล่าวจะประกอบด้วยเค้าร่างอยู่ด้วยกัน 3 ระดับ คือ
2.3.1 เค้าร่างภายนอก (External
Schema หรือ Subschema หรือ View) เป็นเค้าร่างในระดับภายนอกที่แสดงถึงรายละเอียดของข้อมูลที่ผู้ใช้ต่างๆต้องการ
2.3.2 เค้าร่างแนวความคิด (Conceptual
Schema) เป็นเค้าร่างที่แสดงรายละเอียดของฐานข้อมูลได้แก่ ชื่อเอนทิตี้
โครงสร้างข้อมูล ตลอดจนความสัมพันธ์และกฎเกณฑ์ข้อจำกัดต่างๆ
2.3.3 เค้าร่างภายใน (Internal
Schema) เป็นเค้าร่างที่แสดงรายละเอียดการจัดเก็บข้อมูลจริงๆ
แสดงเค้าร่างของฐานข้อมูล ดังรูปที่ 2.2
รูปที่ 2.2 เค้าร่างของฐานข้อมูล
จากรูปที่ 2.2 จะเห็นได้ว่าระบบฐานข้อมูลจะประกอบด้วยเค้าร่างภายใน 1 ตัว เค้าร่างแนวความคิด 1 ตัว และมีเค้าร่างภายนอกหลายได้หลายๆตัว
2.4 เค้าร่างของฐานข้อมูล (Database Schema)
นอกจากภาษาต่างๆที่ใช้ในการเขียนโปรแกรมเพื่อการจัดการฐานข้อมูล
เช่น COBOL PASCAL ฯลฯ
ในระบบจัดการฐานข้อมูลจะมีภาษาเฉพาะที่ใช้ในการจัดการข้อมูลเป็นคำสั่งที่ง่ายไม่ซับซ้อนโดยเรียกใช้ผ่านระบบการขัดการฐานข้อมูล
ภาษาดังกล่าวแบ่งเป็น 3 ชนิด คือ
2.4.1 ภาษาสำหรับนิยามข้อมูล (Data Definition Language : DDL)
หมายถึง
คำสั่งที่ใช้กำหนดโครงสร้างที่ได้จากการออกแบบฐานข้อมูลว่าประกอบด้วยแอททริบิวต์อะไรบ้าง
เก็บข้อมูลชนิดใด เป็นต้น ผลที่ได้จากการแปล (Compile) คำสั่งที่เขียนด้วย DDL จะเกิดเป็นแฟ้มชนิดหนึ่งเรียกว่า
พจนานุกรมข้อมูล
พจนานุกรมข้อมูล (Data Dictionary) เป็นแฟ้มที่จัดเก็บรายละเอียดของรีเลชันต่างๆในฐานข้อมูล
โดยเก็บในรูปของตารางที่เป็นโครงสร้างของข้อมูล ได้แก่ ชื่อรีเลชัน
ชื่อแอททริบิวต์ต่างๆ คีย์หลักของแต่ละรีเลชัน คีย์นอก
และข้อจำกัดต่างๆตลอดจนรายละเอียดเกี่ยวกับการเรียกใช้ข้อมูลในระบบการควบคุมรักษาความปลอดภัยของข้อมูลพจนานุกรมข้อมูล
จะถูกสร้างโดยใช้ภาษาสำหรับนิยามข้อมูล
โดยระบบจัดการฐานข้อมูลจะเป็นผู้ที่ดำเนินการสร้างพจนานุกรมข้อมูลขึ้นตามรายละเอียดที่เขียนในคำสั่ง
เมื่อมีการเรียกใช้ข้อมูลจากรีเลชันต่างๆระบบจัดการฐานข้อมูลก็จะเรียกผ่านพจนานุกรมข้อมูล
จึงมีความสำคัญอย่างยิ่งต่อการจัดการในฐานข้อมูล
ตัวอย่าง การใช้ภาษา SOL เพื่อกำหนดโครงสร้างของตารางนักศึกษา ซึ่งประกอบด้วยแอททริบิวต์ต่อไปนี้
รหัสนักศึกษา เป็นชนิดอักขระ
จำนวน 8 ไบต์
ชื่อนักศึกษา เป็นชนิดอักขระ
จำนวน 20 ไบต์
อายุ เป็นชนิดเลขจำนวนเต็ม
ค่าใช้จ่าย/เดือน เป็นชนิดตัวเลขทศนิยม(ความกว้าง 9 หลัก ทศนิยม 2 ตำแหน่ง) สามารถใช้คำสั่งใน SQL เพื่อกำหนดโครงสร้าง ได้ดังนี้
CREATE
TABLE STUDENT
(ID CHAR(8),
NAME CHAR(20),
AGE INTEGER
PAY DECIMAL(9.2) ),
2.4.2 ภาษาสำหรับดำเนินการกับข้อมูล (Data Manipulation Language:
DML)
หมายถึง คำสั่งที่ใช้เรียกใช้ข้อมูล ปรับปรุงแก้ไขข้อมูล
ซึ่งในระดับของผู้ใช้ไม่จำเป็นต้องทราบวิธีการจัดเก็บข้อมูลจริงๆว่าเป็นอย่างไร
ในการดำเนินการกับข้อมูลผู้ใช้จึงเป็นเพียงใช้คำสั่งใน DML ผ่านทางระบบการจัดการฐานข้อมูลเรียกผ่านพจนานุกรมข้อมูล
ตัวอย่าง คำสั่ง SQL เพื่อเรียกดูข้อมูลรหัสนักศึกษา ชื่อนักศึกษาและอายุ
โดยให้คัดเลือกเฉพาะผู้ที่มีอายุไม่เกิน 18 ปี (อ้างอิงจากตัวอย่างในหัวข้อข้างต้น)
SELECT ID, NAME, AVG FROM STUDENT WHERE AGE <=18;
2.4.3 ภาษาสำหรับการควบคุมข้อมูล (Data Control Language: DCL)
หมายถึง คำสั่งที่ใช้ในการควบคุมความถูกต้องของข้อมูล
คำสั่งควบคุมสภาวการณ์ ใช้ข้อมูลพร้อมกันจากผู้ใช้หลายคนในเวลาเดียวกัน
และคำสั่งควบคุมความปลอดภัยของข้อมูลการให้สิทธิอำนาจแก่ผู้ใช้แต่ละคนในการเรียกดูหรือปรับปรุงข้อมูล
ตัวอย่าง คำสั่ง SQL เพื่อกำหนดให้สิทธิอำนาจแก่ผู้ใช้ PETER ในการเรียกดูข้อมูลจากตาราง STUDENT
GRANT SELECT ON STUDENT TO PETER;
2.5 ระบบจัดการฐานข้อมูล (Database
Management System : DBMS)
ระบบจัดการฐานข้อมูล คือซอฟต์แวร์ที่ทำหน้าที่จัดการฐานข้อมูล ได้แก่
ควบคุมดูแลในการสร้าง การปรับปรุงข้อมูล การเรียกใช้ข้อมูล การจัดทำรายงาน
จึงอาจกล่าวได้ว่าระบบการจัดการฐานข้อมูลจะเป็นสื่อกลางระหว่างผู้ใช้กับโปรแกรมต่างๆที่เกี่ยวข้องกับการใช้ฐานข้อมูล
ทำให้สามารถสรุปหน้าที่ของระบบจัดการฐานข้อมูลได้ดังนี้
2.5.1 กำหนดและเก็บโครงสร้างฐานข้อมูล ระบบจัดการฐานข้อมูลจะสร้างพจนานุกรมข้อมูลขึ้นเมื่อมีการกำหนดโครงสร้างข้อมูลขึ้นมา
เพื่อเก็บรายละเอียดต่างๆที่เกี่ยวกับฐานข้อมูล เช่น ชื่อตาราง ชื่อฟิลด์ ตลอดจนคีย์ต่างๆเป็นต้น
2.5.2 รับและเก็บข้อมูลในฐานข้อมูล ระบบจัดการฐานข้อมูลจะทำการรับและเก็บข้อมูลลงในฐานข้อมูล
เพื่อใช้ในการประมวลผลต่อไป
2.5.3 ดูแลรักษาข้อมูล ระบบจัดการฐานข้อมูลจะดูแลข้อมูลที่เก็บรวบรวมไว้ในระบบบานข้อมูล
2.5.4 ติดต่อกับตัวจัดการระบบแฟ้มข้อมูล โดยระบบการจัดการฐานข้อมูลจะประสานกับตัวจัดการระบบแฟ้มข้อมูล (File
Management) ซึ่งเป็นฟังก์ชันการทำงานหนึ่งของระบบการดำเนินงาน (Operating
System : OS) ในการค้นหาว่าข้อมูลที่เราต้องการนั้นเก็บอยู่ในตำแหน่งใดในดิสก์
โดยระบบจัดการฐานข้อมูลจะคอยประสานกับตัวจัดการระบบแฟ้มข้อมูลในการจัดการเก็บ
การปรับปรุงข้อมูลและการเรียกใช้ข้อมูล
2.5.5 ควบคุมความบูรณะภาพของข้อมูล (Integrity Control) ระบบการจัดการฐานข้อมูลจะต้องควบคุมค่าของจ้อมูลในระบบให้ถูกต้องตามที่ควรจะเป็น
เช่น รหัสสินค้าที่ปรากฏในใบสั่งซื้อสินค้า
จะต้องเป็นรหัสที่มีอยู่ในระเบียนของสินค้าทั้งหมดในโกดัง เป็นต้น
2.5.6 ควบคุมความปลอดภัย (Security Control) ระบบจัดการฐานข้อมูลจะสามารถป้องกันความเสียหายที่อาจเกิดขึ้นกับฐานข้อมูลโดยป้องกันไม่ให้ผู้ที่ไม่มีสิทธิ์ได้เข้ามาเรียกใช้
หรือแก้ไขข้อมูลในส่วนที่ต้องการปกป้องไว้
2.5.7 การสร้างระบบสำรองและการกู้ (Backup and Recovery) ระบบการจัดการฐานข้อมูลจะจัดทำข้อมูลสำรองเมื่อมีปัญหาเกิดขึ้น เช่น
ระบบแฟ้มข้อมูลเสียหายหรือเครื่องเสียหาย
ระบบจัดการฐานข้อมูลก็จะใช้ระบบข้อมูลสำรองนี้ในการกู้สภาพการทำงานของระบบให้เข้าสู่สภาวะปกติได้
2.5.8 ควบคุมภาวการณ์ใช้ข้อมูลพร้อมกันของผู้ใช้ (Concurrency
Control) ระบบจัดการฐานข้อมูลที่มีคุณสมบัติในการควบคุมภาวการณ์ใช้ข้อมูลนี้พร้อมกันนี้
จะทำการควบคุมการใช้ข้อมูลพร้อมกันของผู้ใช้หลายคนในเวลาเดียวกัน เช่น
กรณีถ้าผู้ใช้คนหนึ่งกำลังทำการแก้ไขข้อมูลรายการใดอยู่
ระบบจะไม่อนุญาตให้ผู้ใช้คนอื่นเข้ามาเรียกใช้ข้อมูลรายการนั้นจนกว่าการแก้ไขจะเสร็จเรียบร้อย
เพื่อป้องกันไม่ให้เกิดปัญหาการเรียกใช้ข้อมูลที่ไม่ถูกต้อง
2.6 ผู้บริหารฐานข้อมูล (Database
Administrator: DBA)
ผู้บริหารฐานข้อมูล
เป็นผู้ที่ทำหน้าที่ควบคุมการบริหารของระบบฐานข้อมูลทั้งหมด
เป็นผู้ที่จะต้องตัดสินใจว่าจะรวบรวมข้อมูลใดบ้างเข้าไว้ในระบบ
จะจัดเก็บข้อมูลด้วยวิธีใด ใช้เทคนิคใดในการเรียกใช้ข้อมูล
กำหนดระบบความปลอดภัยและความบูรณภาพของข้อมูล กำหนดแผน
การสร้างระบบข้อมูลสำรองและการกู้ ประสานงานให้คำปรึกษา
และความช่วยเหลือแก่ผู้อื่น ตลอดจนปรับปรุงเมื่อผู้ใช้มีความต้องการที่เปลี่ยนแปลงไปจากเดิม
ผู้บริหารฐานข้อมูลจึงต้องคอยปรับฐานข้อมูลให้เหมาะสมอยู่ตลอดเวลา
ไม่มีความคิดเห็น:
แสดงความคิดเห็น