บทที่ 2 การจัดการระบบฐานข้อมูล


2.1  ระดับของข้อมูล 
ระบบฐานข้อมูล มีการจัดแบ่งระดับของข้อมูลเป็น 3 ระดับ
            ผลการค้นหารูปภาพสำหรับ ระดับของข้อมูล 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
ผลการค้นหารูปภาพสำหรับ ระดับของข้อมูล 3 ระดับ
รูปที่ 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)
          ผู้บริหารฐานข้อมูล เป็นผู้ที่ทำหน้าที่ควบคุมการบริหารของระบบฐานข้อมูลทั้งหมด เป็นผู้ที่จะต้องตัดสินใจว่าจะรวบรวมข้อมูลใดบ้างเข้าไว้ในระบบ จะจัดเก็บข้อมูลด้วยวิธีใด ใช้เทคนิคใดในการเรียกใช้ข้อมูล กำหนดระบบความปลอดภัยและความบูรณภาพของข้อมูล กำหนดแผน การสร้างระบบข้อมูลสำรองและการกู้ ประสานงานให้คำปรึกษา และความช่วยเหลือแก่ผู้อื่น ตลอดจนปรับปรุงเมื่อผู้ใช้มีความต้องการที่เปลี่ยนแปลงไปจากเดิม ผู้บริหารฐานข้อมูลจึงต้องคอยปรับฐานข้อมูลให้เหมาะสมอยู่ตลอดเวลา


ไม่มีความคิดเห็น:

แสดงความคิดเห็น