วันอาทิตย์ที่ 21 พฤศจิกายน พ.ศ. 2553

วิชา การจัดการฐานข้อมูลเบื้องต้น


การบ้านวันที่  17  พฤศจิกายน  2553


คำถามท้ายบทที่  3
1. การแบ่งสถาปัตยกรรมของฐานข้อมูลออกเป็น 3 ระดับ มีไว้เพื่อวัตถุประสงค์ใดเป็นสำคัญ  
ตอบ
1.ผู้ใช้แต่ละคนสามารถนำข้อมูลชุดเดียวกัน มาใช้งานที่แตกต่างกัน และจัดรูปแบบการแสดงผลต่างๆ ให้แตกต่างกันตามความต้องการ ของผู้ใช้แต่ละคนได้ โดยไม่กระทบกับโครงสร้าง ของการจัดเก็บข้อมูลจริง หรือกระทบโครงสร้างในระดับแนวความคิด
      2.เพื่อวิเคราะห์ความต้องการสารสนเทศของผู้ที่ใช้เพื่อจะนำข้อมูลที่ได้ออกแบบฐานข้อมูล ว่าควรจะเก็บข้อมูล  อะไรบ้างและความสัมพันธ์ระหว่างข้อมูลเป็นอย่างไร
      3.ผู้ใช้แต่ละคนสามารถเลือกอ่านข้อมูลเฉพาะที่ตนเองสนใจหรือต้องการใช้เท่านั้น
      4.เพื่อตัดสินใจว่าจะใช้อุปกรณ์ใดเป็นตัวเก็บข้อมูล วิธีการเข้าถึงข้อมูลเพื่อค้นหาหรือปรับปรุงข้อมูลจะใช้วิธีการใด   รวมถึงวิธีการบำรุงรักษา และการเพิ่มประสิทธิภาพของฐานข้อมูล ผู้ใช้งานฐานข้อมูลทั่วไปไม่ต้อง  ยุ่งเกี่ยวกับการจัดการข้อมูลในระดับภายในนี้เลย
/2.ความเป็นอิสระของข้อมูลมีบทบาทสำคัญอย่างไรต่อการจัดการฐานข้อมูล  จงอธิบาย
ตอบ
     ผู้ใช้ไม่จำเป็นต้องแก้ไขโปรแกรมทุกครั้งเมื่อมีการเปลี่ยนแปลงโครงสร้างหรือข้อมูลในระดับแนวคิดและระดับภายใน โดยจะปล่อยให้ DBMS เป็นตัวจัดการเชื่อมข้อมูลระดับภายนอกกับระดับแนวคิด และระดับแนวคิดกับระดับภายในเอง ความอิสระของข้อมูลจะมีอยู่ 2 ชนิด ดังนี้
      1.ความอิสระของข้อมูลทางลอจิคัล (Logical Data Independence) คือ การเปลี่ยนแปลง คือ การเปลี่ยนแปลงในโครงร่างแนวคิด เช่น การเพิ่ม การเปลี่ยนแปลง Attribute หรือ ความสัมพันธ์ใด ๆ จะไม่ส่งผลกระทบต่อโครงร่างภายนอกที่ผู้ใช้ใช้งานอยู่
      2.ความอิสระของข้อมูลทางฟิสิคอล (Physical Data Independence) คือ ผลของการเปลี่ยนแปลงโครงสร้างไฟล์นั้นจะไม่ส่งผลกระทบใด ๆ ต่อ โครงร่างแนวคิดและระดับภายใน เช่น เปลี่ยนโครงสร้างไฟล์แบบเรียงลำดับ เป็นแบบดัชนี, การเปลี่ยนแปลงโครงสร้างการจัดเก็บข้อมูลด้วยการใช้อุปกรณ์จัดเก็บข้อมูลที่แตกต่างไปจากเดิม
3.ปัญหาที่สำคัญของ  Hierarchical  Model  คืออะไร  และเหตุใด  Hierarchical  Model  จึงไม่สามารถลดความซ้ำซ้อนของข้อมูลได้ทั้งหมด
ตอบ
      ฐานข้อมูลแบบลำดับขั้น Hierarchical  Model  เป็นฐานข้อมูลที่นำเสนอข้อมูลและความสัมพันธ์ระหว่างข้อมูลในรูปแบบของ โครงสร้างต้นไม้ (tree structure) เป็นโครงสร้างลักษณะคล้ายต้นไม้เป็นลำดับชั้น ซึ่งแตกออกเป็นกิ่งก้านสาขา  หรือที่เรียกว่า เป็นการจัดเก็บข้อมูลในลักษณะความสัมพันธ์แบบ พ่อ-ลูก (Parent-Child Relationship Type : PCR Type)
ข้อเสียของ  Hierarchical  Model
     1.Record ลูก ไม่สามารถมี record พ่อหลายคนได้ เช่น นักศึกษาสามารถลงทะเบียนได้มากกว่า 1 วิชา
     2.มีความยืดหยุ่นน้อย เพราะการปรับโครงสร้างของ Tree ค่อนข้างยุ่งยาก
     3.หากข้อมูลมีจำนวนมาก การเข้าถึงข้อมูลจะใช้เวลานานในการค้นหา เนื่องจากจะต้องเข้าถึงที่ต้นกำเนิดของข้อมูล
4.เหตุใด  Network  Model  ซึ่งสามารถแก้ปัญหาความซ้ำซ้อนของข้อมูลได้จึงไม่เหมาะกับการนำมาใช้งาน
ตอบ
Ø  ลักษณะฐานข้อมูลนี้จะคล้ายกับลักษณะฐานข้อมูลแบบลำดับชั้น จะมีข้อแตกต่างกันตรงที่ในลักษณะฐานข้อมูลแบบเครือข่ายนี้สามารถมีต้นกำเนิดของข้อมูลได้มากกว่า 1  และยินยอมให้ระดับชั้นที่อยู่เหนือกว่าจะมีได้หลายแฟ้มข้อมูลถึงแม้ว่าระดับชั้นถัดลงมาจะมีเพียงแฟ้มข้อมูลเดียว
Ø  ลักษณะโครงสร้างระบบฐานข้อมูลแบบเครือข่ายจะมีโครงสร้างของข้อมูลแต่ละแฟ้มข้อมูลมีความสัมพันธ์คล้ายร่างแห
ข้อเสียของ Network  Model
Ø  ความสัมพันธ์ข้อมูลที่เชื่อมโยงกันไปมาทำให้ยากต่อการใช้งาน
Ø  ผู้ใช้ต้องเข้าใจโครงสร้างของฐานข้อมูล
Ø  เหมาะสำหรับโปรแกรมเมอร์ที่คุ้นเคย ไม่เหมาะสำหรับผู้ใช้งานทั่วไป
Ø มีค่าใช้จ่ายและสิ้นเปลืองพื้นที่ในหน่วยความจำเพราะจะเสียพื้นที่ในอุปกรณ์เก็บข้อมูลสำหรับตัวบ่งชี้มาก
Ø  โครงสร้างแบบเครือข่ายเป็นโครงสร้างที่ง่ายไม่ซับซ้อนเนื่องจากไม่ต้องอ่านแฟ้มข้อมูลที่เป็นต้นกำเนิดก่อน  จึงทำให้ป้องกันความลับของข้อมูลได้ยาก
5.สิ่งที่ทำให้  Relational  Model  ได้รับความนิยมอย่างมากมาย  คืออะไร  จงอธิบาย
ตอบ
     เป็นการจัดข้อมูลในรูปแบบของตาราง 2 มิติ คือมี  แถว (Row) และ คอลัมน์ (Column)   โดยการเชื่อมโยงข้อมูลระหว่างตาราง จะใช้ Attribute ที่มีอยู่ทั้งสองตารางเป็นตัวเชื่อมโยงข้อมูล
ข้อดีของ Relational  Model
Ø  เหมาะกับงานที่เลือกดูข้อมูลแบบมีเงื่อนไขหลายคีย์ฟิลด์ข้อมูล
Ø  ป้องกันข้อมูลถูกทำลายหรือแก้ไขได้ดี เนื่องจากโครงสร้างแบบสัมพันธ์นี้ผู้ใช้จะไม่ทราบว่าการเก็บข้อมูลในฐานข้อมูลอย่างแท้จริงเป็นอย่างไร จึงสามารถป้องกันข้อมูลถูกทำลายหรือถูกแก้ไขได้ดี
Ø  การเลือกดูข้อมูลทำได้ง่าย มีความซับซ้อนของข้อมูลระหว่างแฟ้มต่าง ๆ น้อยมาก อาจมีการฝึกฝนเพียงเล็กน้อยก็สามารถใช้ทำงานได้
Ø  เมื่อผู้ใช้ต้องการข้อมูลในตารางจะใช้วิธีเปรียบเทียบค่าของข้อมูลแทน โดยไม่ต้องรู้ว่าข้อมูลนั้นเก็บอย่างไร โดยแค่บอกกับ DBMS ว่าต้องการข้อมูลจากตารางใด ที่มีค่าในคอลัมน์ใด เป็นต้น
Ø  ง่ายในการทำความเข้าใจ



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

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