วันพฤหัสบดีที่ 16 มิถุนายน พ.ศ. 2554

Database Management System (DBMS)

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

 DBMS หรือ Database Management System คือ โปรแกรมที่ทำหน้าเป็นตัวกลางระหว่างผู้ใช้ (user) กับฐานข้อมูลเพื่อจัดการและควบคุมความถูกต้อง ความซ้ำซ้อน และความสัมพันธ์ระหว่างข้อมูลต่างๆ ภายในฐานข้อมูล ซึ่งต่าง ไปจากระบบแฟ้มข้อมูลคือ หน้าที่เหล่านี้จะเป็นของโปรแกรมเมอร์ ในการต่อฐานข้อมูลไม่ว่าจะด้วยการใช้คำสั่งในกลุ่ม DML หรือ DDLหรือจะด้วยโปรแกรมต่าง ๆ ทุกคำสั่งที่ ใช้กระทำกับฐานข้อมูลจะถูกโปรแกรม DBMS นำไปแปล (Compile) เป็นการกระทำ (Operation) ต่างๆภายใต้คำสั่งนั้นๆ เพื่อนำไปกระทำกับตัวข้อมูลในฐานข้อมูลต่อไปส่วนการทำงานต่าง ๆ ภายในโปรแกรม DBMS ที่ทำหน้าที่ในการแปลคำสั่งไปเป็นการ กระทำต่าง ๆ ดังนี้
     1) Database Manager เป็นส่วนที่ทำหน้าที่กำหนดการกระทำต่าง ๆ ให้กับส่วน File Manager เพื่อไปกระทำกับข้อมูลที่เก็บอยู่ในฐานข้อมูล File Manager เป็นส่วนที่ทำหน้าที่บริหาร และจัดการกับข้อมูลที่เก็บอยู่ในฐานข้อมูลในระดับกายภาพ
     2) Query Process เป็นส่วนที่ทำหน้าที่แปลงประโยคคำสั่งของ Query Language ให้อยู่ในรูปแบบของคำสั่งที่ Database Manager เข้าใจ
     3) Data Manipulation Language Precompiler เป็นส่วนที่ทำหน้าที่แปลประโยคคำสั่งของกลุ่มคำสั่ง DML ให้อยู่ในรูปแบบที่ส่วน Application Programs Object Code จะนำไปเข้ารหัสเพื่อส่งต่อไปยังส่วน Database Manager ในการแปลประโยคคำสั่งของกลุ่มคำสั่ง DML ของ Data Manipulation Language Precompiler นี้ จะต้องทำงานร่วมกับส่วน Query Processor
     4) Data Definition Language Precompiler เป็นส่วนที่ทำหน้าที่แปลประโยคคำสั่งของกลุ่มคำสั่ง DDL ให้อยู่ในรูปแบบของ Meta Data (รายละเอียดที่บอกถึงโครงสร้างต่าง ๆ ของข้อมูล) ที่เก็บอยู่ในส่วน Data Dictionary ของฐานข้อมูล
     5) Application Programs Object Code เป็นส่วนที่ทำหน้าที่แปลงคำสั่งต่าง ๆ ของโปรแกรมรวมทั้งคำสั่งในกลุ่มคำสั่ง DML ที่ส่งต่อมาจากส่วน Data Manipulation Language Precompiler ให้อยู่ในรูปของ Object Code ที่จะส่งต่อไปให้ Database manager เพื่อกระทำกับข้อมูลในฐานข้อมูล
    
     โปรแกรม DBMS ถูกพัฒนาขึ้นเพื่อแก้ไขปัญหาด้าน Data Independence ที่ไม่มีในระบบแฟ้มข้อมูล ทำให้มีความเป็นอิสระจากทั้งส่วนของฮาร์ดแวร์ และข้อมูลภายในฐานข้อมูลกล่าวคือโปรแกรม DBMS นี้จะมีการทำงานที่ไม่ขึ้นอยู่กับรูปแบบ (Platform) ของตัวฮาร์ดแวร์ ที่นำมาใช้กับระบบฐานข้อมูลรวมทั้งมีรูปแบบในการอ้างถึงข้อมูลที่ไม่ขึ้นอยู่กับโครงสร้างทางกายภาพของข้อมูลด้วยการใช้ Query Language ในการติดต่อกับข้อมูลในฐานข้อมูลแทนคำสั่งภาษาคอมพิวเตอร์ในยุคที่ 3 ส่งผลให้ผู้ใช้สามารถเรียกใช้ข้อมูลจากฐานข้อมูลได้โดยไม่จำเป็นต้องทราบถึงประเภทหรือขนาดของข้อมูลนั้นหรือสามารถกำหนดลำดับที่ของฟิลด์ ในการกำหนดการแสดงผลได้โดยไม่ต้องคำนึงถึงลำดับที่จริงของฟิลด์ นั้น

                        หน้าที่ของ DBMS
     โปรแกรม DBMS ได้ถูกพัฒนาขึ้นมาเพื่อแก้ปัญหาทางด้าน Data Independence ที่ไม่มีในระบบแฟ้มข้อมูล ดังนั้นจึงมีความเป็นอิสระจากทั้งตังฮาร์ดแวร์ และตัวข้อมูลภายในฐานข้อมูล กล่าวคือ โปรแกรม DBMS จะมีการทำงานที่ไม่ขึ้นอยู่กับรูปแบบ (Platform) ของตัวฮาร์ดแวร์ ที่นำมาใช้กับระบบฐานข้อมูล รวมทั้งมีรูปแบบในการอ้างถึงข้อมูลที่ไม่ขึ้นอยู่กับ โครงสร้างทางกายภาพของข้อมูล ด้วยการใช้ Query Language ในการติดต่อกับข้อมูลในฐานข้อมูล หน้าที่ของโปรแกรม DBMS โดยสรุปมีดังนี้
          1.) ทำหน้าที่แปลงคำสั่งที่ใช้จัดการกับข้อมูลภายในฐานข้อมูลให้อยู่ในรูปแบบที่ข้อมูลเข้าใจ
          2.) ทำหน้าที่ในการนำคำสั่งต่างๆ ซึ่งได้รับการแปลแล้วไปสั่งให้ฐานข้อมูลทำงาน เช่น การเรียกใช้ข้อมูล (Retrieve) การจัดเก็บข้อมูล (Update) การลบข้อมูล (Delete) หรือ การเพิ่มข้อมูลเป็นต้น (Add) ฯลฯ
          3.) ทำหน้าที่ป้องกันความเสียหายที่จะเกิดขึ้นกับข้อมูลภายในฐานข้อมูล โดยจะคอยตรวจสอบว่าคำสั่งใดที่สามารถทำงานได้และคำสั่งใดที่ไม่สามารถทำได้
          4.) ทำหน้าที่รักษาความสัมพันธ์ของข้อมูลภายในฐานข้อมูลให้มีความถูกต้องอยู่เสมอ
          5.) ทำหน้าที่เก็บรายละเอียดต่าง ๆ ที่เกี่ยวข้องกับข้อมูลภายในฐานข้อมูลไว้ใน Data Dictionary ซึ่งรายละเอียดเหล่านี้มักจะถูกเรียกว่า "ข้อมูลของข้อมูล" (Meta Data)
          6.) ทำหน้าที่ควบคุมให้ฐานข้อมูลทำงานได้อย่างถูกต้องและมีประสิทธิภาพ









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

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