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

วิชา ฐานข้อมูลเบื้องต้น

วิชาฐานข้อมูลเบื้องต้น
การบ้านบทที่ 3 ประจำวันที่ 17 พ.ย. 2553


1.การแบ่งสถาปัตยกรรมของฐานข้อมูลออกเป็น ระดับ มีไว้เพื่อวัตถุประสงค์ใดเป็นสำคัญ
ตอบ
            1. ผู้ใช้งานไม่จำเป็นต้องสนใจในรายละเอียดเกี่ยวกับโครงสร้างการจัดเก็บข้อมูล ไม่ว่าจะจัดเก็บแบบเรียงลำดับแบบดัชนี จะปล่อยให้เป็นหน้าที่ของ DBMS เป็นตัวจัดการ
            2. ผู้ใช้งานแต่ละคนสามารถเข้าถึงข้อมูลชุดเดียวกัน และแสดงข้อมูลเพียงบางส่วนเท่าที่จำเป็น โดยไม่ต้องแสดงข้อมูลให้ดูทั้งหมด
            3. ความอิสระของข้อมูล คือ ไม่ต้องทำการแก้ไขโปรแกรมทุกครั้งเมื่อมีการเปลี่ยนแปลงโครงสร้างของข้อมูล

2.ความเป็นอิสระของข้อมูลมีบทบาทสำคัญอย่างไรต่อการจัดการฐานข้อมูล จงอธิบาย
ตอบ
            ความเป็นอิสระของข้อมูล คือ การที่ผู้ใช้สามารถเปลี่ยนแปลงข้อมูลในระดับแนวความคิด หรือระดับภายในได้โดยไม่กระทบกับโปรแกรมที่ เรียกใช้ ผู้ใช้ยังมองเห็นโครงสร้างข้อมูลในระดับ ภายนอกเหมือนเดิมและใช้งานได้ตามปกติ โดยมี DBMS เป็นตัวจัดการในการเชื่อมต่อข้อมูล ในระดับภายนอกกับระดับแนวความคิด และเชื่อมข้อมูลระดับแนวความคิดกับระดับภายใน หมายถึงการเปลี่ยนแปลงข้อมูลในระดับที่ต่ำกว่า จะไม่กระทบกับข้อมูลที่อยู่ในระดับที่สูงกว่า ซึ่งความเป็นอิสระของข้อมูลแบ่งออกเป็น 2ลักษณะ คือ 
3.1 ความเป็นอิสระของข้อมูลเชิงตรรกะ (Logical Data Independce) คือ การเปลี่ยนแปลงแก้ไขโครงสร้างของข้อมูลในระดับแนวความคิด จะไม่มีผลกระทบต่อโครงสร้างข้อมูลในระดับภายนอกที่ผู้ใช้งานใช้อยู่ เช่น ในการเขียนโปรแกรมเพื่อแสดงข้อมูลของพนักงาน ซึ่งใช้ข้อมูลในระดับภายนอก หากในระดับแนวความคิด มีการเปลี่ยนแปลง โดยการเพิ่มแอตทริบิวส์บางตัวเข้าไปในรายละเอียดข้อมูลของพนักงาน จะไม่มีผลกระทบกับโปรแกรมเดิมที่ทำงานอยู่       
3.2 ความเป็นอิสระของข้อมูลเชิงกายภาพ (Physical Data Independce) คือ การเปลี่ยนแปลงแก้ไขโครงสร้างของข้อมูลในระดับภายในจะไม่มีผลกระทบต่อโครงสร้างข้อมูลในระดับแนวความคิด หรือระดับภายนอก เช่น ในระดับภายในมีการเปลี่ยนวิธีการจัดเก็บข้อมูลจากแบบเรียงลำดับ (sequential) ไปเป็นแบบดัชนี (indexed) ในระดับภายใน ในระดับแนวคิดนั้นจะไม่มีผลกระทบต่อการเปลี่ยนแปลงดังกล่าว หรือ โปรแกรมประยุกต์ที่เขียน ในระดับภายนอกก็ไม่จำเป็นต้องแก้ไขโปรแกรมตามวิธีการจัดเก็บที่เปลี่ยนแปลงไป

3.ปัญหาที่สำคัญของ Hierarchical Model คืออะไร และเหตุใด Hierarchical Model จึงไม่สามารถลดความซ้ำซ้อนของข้อมูลได้ทั้งหมด
ตอบ
            ปัญหาที่สำคัญของ Hierarchical Model คือ ถ้าความสัมพันธ์ของข้อมูลเป็นแบบลูกมีพ่อได้หลายคน จะใช้โครงสร้างฐานข้อมูลแบบลำดับชั้นไม่ได้ เช่น ความสัมพันธ์ระหว่างลูกจ้างกับงานที่ทำ งานชิ้นหนึ่งอาจทำโดยลูกจ้างหลายคนได้ โครงสร้างฐานข้อมูลแบบลำดับชั้นจะไม่สามารถออกแบบลักษณะข้อมูลแบบนี้ได้ ปัญหาเช่นนี้ทำให้ไม่ค่อยมีผู้นิยมใช้ ฐานข้อมูลแบบลำดับชั้น เนื่องจากความสัมพันธ์ของข้อมูลที่จะเก็บไว้ในฐานข้อมูลเป็นแบบพ่อ-ลูกเท่านั้น

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

5.สิ่งที่ทำให้ Relational Model ได้รับความนิยมอย่างมากคืออะไร จงอธิบาย
ตอบ
            - ง่ายในการทำความเข้าใจ
            เหมาะกับการที่เลือกดูข้อมูลแบบมีเงื่อนไขหลายคีย์ฟิลด์ข้อมูล
            - การเลือกดูข้อมูลทำให้ได้ง่ายมีความซับซ้อนของข้อมูลระหว่างแฟ้มต่างๆน้อยมาก อาจมีการฝึกฝนเพียงเล็กน้อยก็สามมารถใช้ทำงานได้
            - เมื่อผู้ใช้ต้องการข้อมูลในตารางจะใช้วิธีเปรียบเทียบค่าของข้อมูลแทน โดยไม่ต้องรู้ว่าข้อมูลนั้นเก็บอย่างไร โดยแค่บอกกับ DBMS ว่าต้องการข้อมูลจากตารางใด ที่มีค่าในคอลัมน์ใด เป็นต้น
            ป้องการข้อมูลถูกทำลายหรือแก้ไขได้ดี เนื่องจากโครงสร้างแบบสัมพันธ์นี้ผู้ใช้จะไม่ทราบว่าการเก็บข้อมูลในฐานข้อมูลอย่างแท้จริงเป็นอย่างไร จึงสามารถป้องกันข้อมูลที่ถูกทำลายหรือถูกแก้ไขได้

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

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