วันอาทิตย์ที่ 8 กรกฎาคม พ.ศ. 2555

Data Model


Data Model

                                                     แบบจำลองฐานข้อมูล (Data Model)

1. ฐานข้อมูลแบบลำดับชั้น (Hierarchical Model) เป็นฐานข้อมูลที่นำเสนอข้อมูลและความสัมพันธ์ระหว่างข้อมูลในรูปแบบของ โครงสร้างต้นไม้ (tree structure) เป็นโครงสร้างลักษณะคล้ายต้นไม้เป็นลำดับชั้น ซึ่งแตกออกเป็นกิ่งก้านสาขา หรือที่เรียกว่า เป็นการจัดเก็บข้อมูลในลักษณะความสัมพันธ์แบบ พ่อ-ลูก (Parent-Child Relationship Type : PCR Type)
คุณสมบัติของฐานข้อมูลแบบลำดับขั้น
1. Record ที่อยู่ด้านบนของโครงสร้างหรือพ่อ(Parent Record) นั้นสามารถมีลูกได้มากกว่าหนึ่งคน แต่ลูก (Child Record) จะไม่สามารถมีพ่อได้มากกว่า 1 คนได้
2. ทุก Record สามารถมีคุณสมบัติเป็น Parent Record(พ่อ) ได้
3. ถ้า Record หนึ่งมีลูกมากกว่าหนึ่ง Record แล้ว การลำดับความสัมพันธ์
ของ Child Record จะลำดับจากซ้ายไปขวา
ลักษณะเด่น
• เป็นระบบฐานข้อมูลที่มีระบบโครงสร้างซับซ้อนน้อยที่สุด
• มีค่าใช้จ่ายในการจัดสร้างฐานข้อมูลน้อย
• ลักษณะโครงสร้างเข้าใจง่าย
• เหมาะสำหรับงานที่ต้องการค้นหาข้อมูลแบบมีเงื่อนไขเป็นระดับและออกงานแบบเรียงลำดับต่อเนื่อง
• ป้องกันระบบความลับของข้อมูลได้ดี เนื่องจากต้องอ่านแฟ้มข้อมูลที่เป็นต้นกำเนิดก่อน
ข้อเสีย
• Record ลูก ไม่สามารถมี record พ่อหลายคนได้ เช่น นักศึกษาสามารถลงทะเบียนได้มากกว่า 1 วิชา
• มีความยืดหยุ่นน้อย เพราะการปรับโครงสร้างของ Tree ค่อนข้างยุ่งยาก
• มีโอกาสเกิดความซ้ำซ้อนมากที่สุดเมื่อเทียบกับระบบฐานข้อมูลแบบโครงสร้างอื่น
• หากข้อมูลมีจำนวนมาก การเข้าถึงข้อมูลจะใช้เวลานานในการค้นหา เนื่องจากจะต้องเข้าถึงที่ต้นกำเนิดของข้อมูล

2. ฐานข้อมูลแบบเครือข่าย (Network Model) - ลักษณะฐานข้อมูลนี้จะคล้ายกับลักษณะฐานข้อมูลแบบลำดับชั้น จะมีข้อแตกต่างกันตรงที่ในลักษณะฐานข้อมูลแบบเครือข่ายนี้สามารถมีต้นกำเนิดของข้อมูลได้มากกว่า 1 และยินยอมให้ระดับชั้นที่อยู่เหนือกว่าจะมีได้หลายแฟ้มข้อมูลถึงแม้ว่าระดับชั้นถัดลงมาจะมีเพียงแฟ้มข้อมูลเดียว
- ลักษณะโครงสร้างระบบฐานข้อมูลแบบเครือข่ายจะมีโครงสร้างของข้อมูลแต่ละแฟ้มข้อมูลมีความสัมพันธ์คล้ายร่างแห
ข้อดี
• ช่วยลดความซ้ำซ้อนของข้อมูลได้ทั้งหมด
• สามารถเชื่อมโยงข้อมูลแบบไป-กลับ ได้
• สะดวกในการค้นหามากกว่าลักษณะฐานข้อมูลแบบลำดับชั้น เพราะไม่ต้องไปเริ่มค้นหาตั้งแต่ข้อมูลต้นกำเนิดโดยทางเดียว และการค้นหาข้อมูลมีเงื่อนไขได้มากและกว้างกว่าโครงสร้างแบบลำดับชั้น

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

4. ฐานข้อมูลเชิงวัตถุ (Object Oriented Model)

• ใช้ในการประมวลผลข้อมูลทางด้านมัลติมีเดีย คือ มีข้อมูลภาพ และเสียง หรือข้อมูลแบบมีการเชื่อมโยงแบบเว็บเพจ ซึ่งไม่เหมาะสำหรับ Relation Model
• มองสิ่งต่างๆ เป็น วัตถุ (Object)

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


ประเภทของแบบจำลองข้อมูล


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

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

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