แบบจำลองข้อมูลในความหมายของฐานข้อมูล
ก็คือการรวมกันของไฟล์ข้อมูลที่มีความสัมพันธ์กัน
โดยแต่ละความสัมพันธ์จะเชื่อมโยงกันอย่างมีระบบ
ทำให้สามารถเข้าถึงข้อมูลต่างๆภายในระบบได้ ซึ่งเทคโนโลยีฐานข้อมูลแต่ละชนิดก็จะมีการเชื่อมโยงเพื่อการเข้าถึงข้อมูลที่แตกต่างกัน
ดังนั้นก็ต้องเลือกใช้แบบจำลองข้อมูลให้เหมาะสมกับฐานข้อมูลนั้นๆเพื่อให้ง่ายต่อการเข้าถึงข้อมูล
โดยสามารถแบ่งแยกออกเป็น 5 แบบด้วยกัน คือ
1.แบบจำลองข้อมูลฐานลำดับขั้น
(Hierarchical Database Model) ข้อมูลจะถูกจัดเก็บไว้เป็นโครงสร้างแบบนล่าง
ลักษณะคล้ายๆโครงสร้างต้นไม้ (Tree Structure) มีการสืบทอดเป็นลำดับชั้น
โหนดสูงสุดจะเรียกว่าราก (Root) โหนดระดับล่างลงมาจะเรียกว่า
(Leaves) เรียกฐานข้อมูลในระดับนี้อีกชื่อหนึ่งว่าซิกเมนต์ (Segment)
เปรียบได้กับเรคอร์ดในระบบแฟ้มข้อมูล
เซกเมนต์ที่อยู่ระดับล่างลงไปก็คือเซกเมนต์ก่อนหน้า ความสัมพันธ์เป็นแบบ 1:M
กล่าวคือ โหนดบนจะแตกโหนดลูกได้หลายๆโหนด
ในขณะที่โหนดลูกจะมีโหนดบนเพียงโหนดเดียวเท่านั้น
รูปภาพแบบจำลองข้อมูลฐานลำดับขั้น
ข้อดี
- รูปแบบโครงสร้างเข้าใจง่าย
- โครงสร้างซับซ้อนน้อยที่สุด
เหมาะกับข้อมูลที่มีความสัมพันธ์แบบ 1:M
- ป้องกันความปลอดภัยในข้อมูลที่ดี
เนื่องจากต้องอ่านข้อมูลที่เป็นต้นกำเนิดก่อนทำให้ข้อมูลมีความคงสภาพที่ดี
- เหมาะกับข้อมูลที่เรียงลำดับต่อเนื่อง
ข้อเสีย
- ยากต่อการพัฒนา
ผู้พัฒนาต้องมีความเข้าใจโครงสร้างทางกายภาพของข้อมูลที่จัดเก็บอยู่ภายในฐานข้อมูล
- มีข้อจำกัดด้านการนำไปใช้
เช่น ไม่รองรับความสัมพันธ์แบบ M:N
- กรณีโครงสร้างเปลี่ยน
แอปพลิเคชั่นโปรแกรมทั้งหมดก็ต้องเปลี่ยนตามด้วย เนื่องจากขาดอิสระในโครงสร้าง
- การเรียกใช้ข้อมูลต้องผ่าน
Root เสมอ เวลาค้นหาข้อมูลก็ต้องค้นหาทั้งแฟ้ม
- ไม่มีภาษที่ใช้สำหรับจัดการข้อมูลใน
DBMS
- ขาดมาตรฐานการรองรับที่ชัดเจน
2.แบบจำลองข้อมูลเครือข่าย (Network Database
Model) เป็นโครงสร้างคล้ายกับโครงสร้างแบบลำดับขั้น รองรับความสัมพันธ์ของข้อมูลที่ซับซ้อนขึ้น มีประสิทธิภาพสูงกว่าลำดับขั้น โหนดลูกแต่ละโหนดสามารถมีโหนด root ได้หลายโหนด
ข้อดี
- มีหลักการที่ง่าย ใกล้เคียงกับแบบลำดับขั้น
- สนับสนุนความสัมพันธ์แบบ M:N
- การเข้าถึงข้อมูลมีความยืดหยุ่นสูงกว่าแบบลำดับขั้นและแฟ้มข้อมูล
- ความซ้ำซ้อนในข้อมูลเกิดขึ้นน้อยกว่าแบบลำดับขั้น
ข้อเสีย
- การป้องกันความปลอดภัยของข้อมูลมีน้อย เนื่องจากสามารถเข้าถึงเรคอร์ดได้โดยตรง
- ใช้ตัวชี้วัดตำแหน่งแบบพอยต์เตอร์ทำให้สิ้นเปลืองในหน่วยความจำ
- การเปลี่ยนแปลงโครงสร้างมีความยุ่งยาก
3.แบบจำลองฐานข้อมูลเชิงสัมพันธ์ (Relational Database
Model) เป็นแบบจำลองข้อมูลที่ใช้กันอย่างแพร่หลายมากที่สุด ข้อมูลจะจัดเก็บในรูปแบบตาราง 2 มิติ คือ แถว(Row) คอลัมน์(Column) มีการเชื่อมโยงความสัมพันธ์ต่างๆ โดยอาศัยคีย์ในคอลัมน์ที่เหมือนกันของตารางต่างๆ เป็นตัวเชื่อมโยง สามารถกำหนดดัชนีเพื่อเข้าถึงข้อมูลได้อย่างรวดเร็ว
รูปภาพแบบจำลองฐานข้อมูลเชิงสัมพันธ์
ข้อดี
- มีความเป็นอิสระในโครงสร้าง
โดยถ้ามีการเปลี่ยนแปลงโครงสร้างตารางจะไม่ส่งผลกระทบต่อแอปพลิเคชั่นโปรแกรมที่ใช้งาน
- การนำเสนอข้อมูลในรูปแบบตาราง
ทำให้ง่ายต่อการออกแบบฐานข้อมูล การนำไปใช้ และการจัดการ
- การเรียกใช้ข้อมูลสามารถเรียกใช้ได้ด้วยคำสั่ง
SQL
- มีระบบความปลอดภัยที่ดี
เนื่องจากไม่ทราบโครงสร้างของข้อมูลจริงๆในการจัดเก็บ
- DBMS ที่พัฒนาล้วนรองรับ
ข้อเสีย
- มีค่าใช้จ่ายในระบบค่อนข้างสูง
เนื่องจากอุปกรณ์ ฮาร์ดแวร์/ซอฟต์แวร์ ต้องมีประสิทธิภาพ
- การแก้ไขปรับปรุงแฟ้มข้อมูลทำได้ยากเนื่องจากไม่ทราบถึงกระบวนการจัดเก็บข้อมูลภายในฐานข้อมูล
4.แบบจำลองข้อมูลเชิงวัตถุ (Object-Oriented Database
Model) เกิดจากแนวคิดการเขียนโปรแกรมเชิงวัตถุ (Object-Oriented Programming : OOP) สามารถจัดการกับข้อมูลชนิดต่างๆที่ซับซ้อนได้ดี เช่น ภาพ เสียง วิดีโอ เป็นต้น มักนำไปใช้กับหน่วยงานขนาดใหญ่และต้องมีผู้เชี่ยวชาญในการจัดการกับข้อมูลที่ซับซ้อน
ข้อดี
- คุณสมบัติด้านการสืบทอดทำให้ข้อมูลมีความคงสภาพสูง
- สามารถนำกลับมาใช้ใหม่ได้
- การนำเสนอเป็นรูปแบบ Visual ทำให้อธิบายหัวข้อความหมายได้ดี
ข้อเสีย
- ต้องพึ่งพาผู้เชียวชาญโดยเฉพาะ และมีค่าใช้จ่ายเกี่ยวกับระบบค่อนข้างสูง
- ยังไม่มีมาตรฐานรองรับที่ชัดเจนเมื่อเทียบกับแบบจำลองข้อมูลเชิงสัมพันธ์
- ผู้เชียวชาญส่วนใหญ่จะคุ้นกับเทคโนโลยีฐานข้อมูลเชิงสัมพันธ์มากกว่า
5.แบบจำลองข้อมูลแบบมัลติไดแมนซั่น
(Multidimensional Database Model) เป็นแบบจำลองข้อมูลที่ใช้งานกับคลังข้อมูล นำเสนอข้อมูลในรูปแบบหลายมิติ เพื่อทำให้สามารถนำข้อมูลมาวิเคราะห์เพื่อหาปัญหาและสร้างวิธีการ ในการแก้ปัญหาดังกล่าว เช่น การนำเสนอข้อมูลการขายผลิตภัณฑ์ในช่วงเวลาต่างๆของพนักงานแต่ละคน และข้อมูลพื้นที่การขายมาวิเคราะห์
ส่วนประกอบของแบบจำลองข้อมูล
ส่วนที่ 1 ส่วนโครงสร้าง
(Structural) เป็นกลุ่มที่ประอบไปด้วยสัญลักษณ์รวมทั้งกฎระเบียบให้เข้าใจตรงกันในการสร้างฐานข้อมูล
เช่น การจัดเก็บข้อมูลในรูปแบบของตาราง ที่จะต้องประอบไปด้วยไปด้วย แถวและคอลัมน์
ส่วนที่ 2 ส่วนปรับปรุง
(Manipulative) เป็นส่วนที่ใช้ในการกำหนดชนิดของการดำเนินงานต่างๆ
ที่เกี่ยวข้องกับข้อมูล โดยจะประกอบไปด้วย การอัปเดตข้อมูล ปัจจุบันจะใช้คำสั่ง SQL
ในการจัดการข้อมูล
ส่วนที่ 3 ส่วนกฎความคงสภาพ
(a set of integrity rules) เป็นส่วนของกฎที่ใช้ในการควบคุมความถูกต้องของข้อมูล
เพื่อให้เกิดความมั่นใจในความถูกต้องและความแน่นอนของข้อมูลที่บันทึกลงในฐานข้อมูล
ประเภทของแบบจำลองข้อมูล
แบบจำลองข้อมูล คือ
เทคนิคที่นำมาใช้จัดการโครงสร้างและความสัมพันธ์ระหว่างข้อมูลในระบบ แบ่งออกเป็น 2
รูปแบบ คือ
1. แบบจำลองเชิงแนวคิด (Conceptual
Data Models) สำหรับแสดงลักษณะโดยรวมของข้อมูลทั้งหมดในระบบ
นำเสนอข้อมูลในรูปแบบของแผนภาพหรือไดอะแกรม (เอ็นติตี้,ความสัมพันธ์)
จุดประสงค์เพื่อนำเสนอให้ผู้ใช้กับผู้ออกแบบมีความเข้าใจตรงกัน
แบบจำลองจะไม่ขึ้นกับ DBMS สามารถนำไปดัดแปลงให้เข้ากับ DBMS
ได้ในภายหลัง เช่น E-R Diagram
2.แบบจำลองเพื่อการนำไปใช้ (Implementation
Data Models) ใช้อธิบายโครงสร้างข้อมูลของฐานข้อมูล
จะอิงกับระบบจัดการฐานข้อมูลที่ใช้
เทียบได้กับชนิดของภาษาโปรแกรมซึ่งสามารถสร้างด้วยภาษาระดับสูง ภาษาระดับต่ำ หรือ
ภาษาเครื่อง แบ่งออกเป็น 5 ประเภทตารูปแบบของแต่ละโครงสร้างของฐานข้อมูล
คุณสมบัติของแบบจำลองข้อมูล
1.แบบจำลองข้อมูลที่ดีต้องง่ายต่อความเข้าใจ
ควรใช้กฎทั่วๆไป โดยมีข้อมูลแอตตริบิวต์ที่อธิบายในรายละเอียดของแต่ละเอ็นติตี้
2.ต้องมีสาระสำคัญและไม่ซ้ำซ้อน
หมายถึงแอตตริบิวต์ในแต่ละเอ็นติตี้ไม่ควรมีข้อมูลซ้ำซ้อน ซึ่งอาจจะใช้วิธีการสร้างเป็นคีย์นอก
(foreign key) เพื่อใช้ในการอ้างอิงข้อมูลแทน
3.ต้องมีความยืดหยุ่นและง่ายต่อการปรับปรุงในอนาคต
แบบจำลองไม่ควนขึ้นกับตัวแอปพลิเคชั่น โปรแกรม
และสนับสนุนการเปลี่ยนแปลงในโครงสร้างซึ่งจะไม่ส่งผลกระทบต่อโปรแกรมที่ใช้งานอยู่
หรืออาจกล่าวได้ว่าข้อมูลมีความเป็นอิสระ ไม่ยึดติดกับแอปพลิเคชั่น
พื้นฐานการสร้างแบบจำลองข้อมูล (Data Model
Basic Building Blocks)
เอ็นติตี้
(Entities) องค์ประกอบต่างๆที่เกี่ยวข้องกับข้อมูล เช่น
บุคคล สถานที่ สิ่งของ หรือ เหตุการณ์ต่างๆ
โดยจะถูกเก็บรวบรวมไว้เพื่อการจัดเก็บในฐานข้อมูล เอ็นติตี้ ตัวอย่างเช่น
เอ็นติตี้ลูกค้า เอ็นติตี้สินค้า เอ็นติตี้เที่ยวบิน เป็นต้น
แอตตริบิวต์
(Attributes) คือ คุณลักษณะของเอ็นติตี้ เช่น
เอ็นติตี้ลูกค้า ที่ประกอบไปด้วยแอตตริบิวต์ รหัสลูกค้า ชื่อ-นามสกุล ที่อยู่
เบอร์โทรศัพท์ วงเงินเครดิต หรือเป็น ฟิลด์ในระบบไฟล์นั้นเอง
ความสัมพันธ์
(Relationships) คือ ความสัมพันธ์ระหว่างเอ็นติตี้
โดยแบบจำลองข้อมูลจะแบ่งความสัมพันธ์ออกเป็น 3 ชนิดด้วยกัน
คือ
1.ความสัมพันธ์แบบหนึ่งต่อหนึ่ง (one-to-one) เป็นความสัมพันธ์ที่แต่ละเอ็นติตี้A
มีความสัมพันธ์กับข้อมูล B เพียงรายการเดียว
จะใช้สัญลักษณ์ 1:1 เช่น
นักศึกษาจะมีรหัสนักศึกษาได้เพียงรหัสเดียว
ในทางกลับกันรหัสนักศึกษาก็จะเป็นของนักศึกษา ได้เพียงคนเดียวเท่านั้น
2.ความสัมพันธ์แบบหนึ่งต่อกลุ่ม (one-to many) เป็นความสัมพันธืที่แต่ละเอ็นติตี้ A มีความสัมพันธ์กับอีกเอ็นติตี้ B มากกว่าหนึ่งรายการและในทางกลับกัน เอ็นติตี้ B มีความสัมพันธ์กับเอ็นติตี้ A เพียงหนึ่งรายการ จะใช้สัญลักษณ์ 1:M เช่น อาจรย์หนึ่งคนมีนักศึกษาที่ปรึกษาได้หลายคน แต่นักศึกษาในแต่ละคนจะมีอาจารย์ที่ปรึกษาได้เพียงคนเดียว
แสดงความสัมพันธ์แบบ 1:M
3.ความสัมพันธ์แบบกลุ่มต่อกลุ่ม (many-to-many) เป็นความสัมพันธ์ที่แต่ละเอ็นติตี้A
มีความสัมพันธ์กับข้อมูล B มากกว่าหนึ่งรายการและในทางกลับกันเอ็นติตี้
B มีความสัมพันธ์กับเอ็นติตี้A มากกว่าหนึ่งรายการเช่นกัน จะใช้สัญลักษณ์ M:N เช่นนักศึกษาลงทะเบียนเรียนได้หลายวิชาและวิชาหนึ่งวิชาก็มีนักศึกษาลงทะเบียนเรียนได้หลายคน
แสดงความสัมพันธ์แบบ M:N
ข้อบังคับ (Constraints) คือกฎเกณฑ์เพื่อการบรรจุข้อมูล มีวัตถุประสงค์เพื่อที่จะให้การจัดเก็บข้อมูลมีความถูกต้องตรงกับความเป็นจริง ข้อมูลมีความสอดคล้องกัน เช่น นักศึกษาแต่ละคนสามารถลงทะเบียนเรียนได้หลายหน่วยกิต แต่การลงหน่วยกิตรวมต้องไม่เกิน 21 หน่วยกิต
ที่มา
:
http://elearnweb.samitkoyom.com/chapterlearn.php?link=3
ไม่มีความคิดเห็น:
แสดงความคิดเห็น