หน่วยที่ 2 การวิเคราะห์และออกแบบฐานข้อมูล
ประเภทของการออกแบบฐานข้อมูล
หน่วยที่ 2 การวิเคราะห์และออกแบบฐานข้อมูล
ประเภทของการออกแบบฐานข้อมูล
ประเภทของการออกแบบฐานข้อมูล แบ่งออกเป็น 3 ประเภท ดังนี้
1. ฐานข้อมูลแบบเชิงสัมพันธ์ (Relational Database)
2. ฐานข้อมูลแบบลำดับชั้น (Hierarchical Database)
3. ฐานข้อมูลแบบเครือข่าย (Network Database)
1. ฐานข้อมูลแบบเชิงสัมพันธ์ (Relational Database)
ฐานข้อมูลแบบเชิงสัมพันธ์ประกอบด้วยกลุ่มของเอนทิตี้ที่มีความสัมพันธ์กัน โดยข้อมูลของแต่ละเอนทิตี้จะถูกจัดเก็บข้อมูลในรูปแบบของตาราง 2 มิติในแนวแถว (Row) และแนวคอลัมน์(Column) โดยบรรทัดแรกของตารางคือ ชื่อแอททริบิวต์ แสดงดังรูปที่ 1.1
รูปที่ 1.1 แสดงตัวอย่างข้อมูลในรูปแบบฐานข้อมูลเชิงสัมพันธ์
ในการเชื่อมโยงข้อมูลระหว่างตาราง จะเชื่อมโยงโดยใช้แอททริบิวต์ที่มีอยู่ในทั้งสองตารางเป็นตัวเชื่อมโยงข้อมูลกัน ฐานข้อมูลเชิงสัมพันธ์เป็นรูปแบบที่ง่ายและนิยมใช้ในปัจจุบัน ตัวอย่างรูปแบบฐานข้อมูลเชิงสัมพันธ์ของพนักงานบริษัทแห่งหนึ่งประกอบด้วย 3 ตาราง แสดงดังตารางที่ 1.2 ตารางที่ 1.3 และตารางที่ 1.4
1.1 ข้อดีของฐานข้อมูลแบบเชิงสัมพันธ์
1. เป็นรูปแบบของฐานข้อมูลที่เข้าใจง่าย ฐานข้อมูลเชิงสัมพันธ์เป็นกลุ่มของรีเลชั่นหรือตารางที่ข้อมูลถูกจัดเก็บเป็นแถวและคอลัมน์ซึ่งทำให้ผู้ใช้เห็นภาพของข้อมูลได้ง่าย
2. มีเครื่องมือที่ช่วยให้ผู้ใช้สามารถจัดการกับข้อมูลได้ด้วยคำสั่งง่ายๆ โดยผู้ใช้ไม่ต้องรู้ว่ามีรายละเอียดของการจัดเก็บข้อมูลอย่างไร
3. สามารถใช้ภาษาที่ง่ายในการเรียกดูข้อมูล เช่น ภาษา SQL เป็นภาษาที่มีลักษณะคล้ายภาษาอังกฤษ และไม่จำเป็นต้องเขียนเป็นลำดับขั้นตอนของคำสั่งอย่างในภาษาอื่น ๆ
4. การเรียกใช้หรือเชื่อมโยงข้อมูลทำได้ง่าย โดยการใช้ Operator ทางคณิตศาสตร์โดยไม่จำเป็นต้องใช้พอยท์เตอร์ (Pointer)
1.2 ข้อจำกัดของฐานข้อมูลแบบเชิงสัมพันธ์
1. มีค่าใช้จ่ายในระบบค่อนข้างสูง เนื่องจากอุปกรณ์ ฮาร์ดแวร์/ซอฟต์แวร์ ต้องมีประสิทธิภาพ
2. การแก้ไขปรับปรุงแฟ้มข้อมูลทำได้ยากเนื่องจากไม่ทราบถึงกระบวนการจัดเก็บข้อมูลภายในฐานข้อมูล
2. ฐานข้อมูลแบบลำดับชั้น (Hierarchical Database)
เป็นฐานข้อมูลที่นําเสนอข้อมูลและความสัมพันธ์ระหว่างข้อมูลในรูปแบบของโครงสร้างต้นไม้ (Tree Structure) เป็นโครงสร้างลักษณะคล้ายต้นไม้เป็นลำดับขั้น ซึ่งแตกออกเป็นกิ่งก้านสาขา ผู้ที่คิดค้นฐานข้อมูลแบบนี้คือ North American Rockwell โดยใช้แนวความคิดของโปรแกรม Generalized Update Access Method (GUAM)
โครงสร้างของฐานข้อมูลแบบลำดับขั้นจะมีโครงสร้างของข้อมูลเป็นลักษณะความสัมพันธ์แบบพ่อลูก คือ พ่อ (Parent) 1 คนมีลูก (Child) ได้หลายคน แต่ลูกมีพ่อได้คนเดียว (ความสัมพันธ์แบบ 1 ต่อ n) หรือแบบพ่อคนเดียวมีลูก 1 คน (ความสัมพันธ์แบบ 1 ต่อ 1) ซึ่งจัดแยกออกเป็นลำดับขั้น โดยระดับขั้นที่ 1 จะมีเพียงแฟ้มข้อมูลเดียว คือ พ่อ ในระดับขั้นที่ 2 และระดับขั้นที่ 3 จะมีกี่แฟ้มข้อมูลก็ได้โดยในโครงสร้างข้อมูลแบบลำดับขั้นแต่ละกรอบจะมีตัวชี้ (Pointers) หรือหัวลูกศรวิ่งเข้าหาได้ไม่เกิน 1 หัว
กฎควบคุมความถูกต้อง คือ เรคอร์ดพ่อสามารถมีเรคอร์ดลูกได้หลายเรคอร์ดแต่เรคอร์ดลูกแต่ละเรคอร์ดจะมีเรคอร์ดพ่อได้เพียงเรคอร์ดเดียวเท่านั้น
รูปที่ 2.1 ตัวอย่างฐานข้อมูลแบบลำดับชั้น
จากรูปที่ 2.1 ข้างต้น แสดงตัวอย่างฐานข้อมูลแบบลำดับชั้น ประกอบด้วย
1. เรคคอร์ด 3 เรคคอร์ด คือแผนก นักเรียน และหลักสูตรแต่ละรายวิชา
2. ความสัมพันธ์แบบ PCR 2 ประเภท คือความสัมพันธ์ของข้อมูลแผนกนักเรียนและความสัมพันธ์ของข้อมูลแผนกกับหลักสูตร โดยมีแผนกเป็นเรคคอร์ดประเภทพ่อ - แม่ ส่วนนักเรียนและหลักสูตรเป็นเรคคอร์ดประเภทลูก ความสัมพันธ์ของทั้ง 2 ประเภทแบบหนึ่งต่อกลุ่ม ตัวอย่างข้อมูล เช่น
รูปที่ 2.2 ตัวอย่างข้อมูลฐานข้อมูลแบบลำดับชั้น
2.1 ข้อดีของฐานข้อมูลแบบลำดับขั้น
- เป็นระบบฐานข้อมูลที่มีระบบโครงสร้างซับซ้อนน้อยที่สุด
- มีค่าใช้จ่ายในการจัดสร้างฐานข้อมูลน้อย
- ลักษณะโครงสร้างเข้าใจง่าย
- เหมาะสำหรับงานที่ต้องการค้นหาข้อมูลแบบมีเงื่อนไขเป็นระดับและออกงานแบบเรียงลำดับต่อเนื่อง
- ป้องกันระบบความลับของข้อมูลได้ดี เนื่องจากต้องอ่านแฟ้มข้อมูลที่เป็นต้นกำเนิดก่อน
2.2 ข้อจำกัดของฐานข้อมูลแบบลำดับขั้น
- มีโอกาสเกิดความซ้ำซ้อนมากที่สุดเมื่อเทียบกับระบบฐานข้อมูลแบบโครงสร้างอื่น
- ขาดความสัมพันธ์ระหว่างแฟ้มข้อมูลในรูปเครือข่าย
- มีความคล่องตัวน้อยกว่าโครงสร้างแบบอื่น ๆ เพราะการเรียกใช้ข้อมูลต้องผ่านทางต้นกำเนิด (root) เสมอ ถ้าต้องการค้นหาข้อมูลซึ่งปรากฏในระดับล่าง ๆ แล้วจะต้องค้นหาทั้งแฟ้ม
2.3 สรุปเป็นคุณสมบัติของฐานข้อมูลแบบลำดับชั้น ได้ดังนี้
1. หากเรคคอร์ดใดเป็นประเภทพ่อ-แม่ แล้วจะมีคุณสมบัติเป็นประเภทลูกไม่ได้
2. ทุกเรคคอร์ดยกเว้นเรคคอร์ดที่เป็นพ่อ-แม่ สามารถมีความสัมพันธ์กับเรคคอร์ดที่เป็นประเภทพ่อ - แม่ได้ 1 ความสัมพันธ์
3. ทุกเรคคอร์ดสามารถมีคุณสมบัติเป็นเรคคอร์ดประเภทพ่อ-แม่ได้
4. ถ้าเรคคอร์ดหนึ่งมีเรคคอร์ดลูกมากกว่าหนึ่งเรคคอร์ดแล้ว การลำดับความสัมพันธ์ของเรคคอร์ดที่เป็นลูกจะลำดับจากซ้ายไปขวา
3. ฐานข้อมูลแบบเครือข่าย (Network Database)
ฐานข้อมูลแบบเครือข่าย จะเป็นการรวมเรคคอร์ดต่าง ๆ และความสัมพันธ์ระหว่างเรคคอร์ดแต่จะต่างกับฐานข้อมูลเชิงสัมพันธ์ คือ ในฐานข้อมูลเชิงสัมพันธ์จะแฝงความสัมพันธ์เอาไว้ โดยเรคคอร์ดที่มีความสัมพันธ์กัน จะต้องมีค่าของข้อมูลในแอททริบิวต์หนึ่งเหมือนกัน แต่ในฐานข้อมูลแบบเครือข่ายจะแสดงความสัมพันธ์อย่างชัดเจน โดยแสดงไว้ในโครงสร้างตัวอย่าง เช่น
รูปที่ 3.1 แสดงการออกแบบฐานข้อมูลแบบเครือข่าย
จากรูปที่ 3.1 จะเห็นได้ว่า กรอบสี่เหลี่ยมแสดงถึงชนิดของเรคคอร์ดในฐานข้อมูล โดยมีเส้นทางแสดงถึงความสัมพันธ์ระหว่างข้อมูล เป็นการแสดงความสัมพันธ์แบบกลุ่มต่อกลุ่ม จากรูป พบว่าในแต่ละสาขามีหลักสูตรมากกว่า 1 รายวิชา และในแต่ละวิชาพบว่า มีนักศึกษาลงทะเบียนเรียนมากว่า 1 คน และนักศึกษา 1 คนก็สามารถลงทะเบียนได้มากกว่า 1 วิชา
3.1 ข้อดีของฐานข้อมูลแบบเครือข่าย
1. สามารถรองรับข้อมูลที่มีความสัมพันธ์แบบกลุ่มต่อกลุ่ม (Many to Many) ได้
2. การเข้าถึงข้อมูลมีความยืดหยุ่นสูงกว่าแบบลำดับขั้นและแฟ้มข้อมูล
3. ความซ้ำซ้อนในข้อมูลเกิดขึ้นน้อยกว่าแบบลำดับขั้น
3.2 ข้อจำกัดของฐานข้อมูลแบบเครือข่าย
1. การป้องกันความปลอดภัยของข้อมูลมีน้อย เนื่องจากสามารถเข้าถึงเรคอร์ดได้โดยตรง
2. ใช้ตัวชี้วัดตำแหน่งแบบพอยต์เตอร์ทำให้สิ้นเปลืองในหน่วยความจำ
3. การเปลี่ยนแปลงโครงสร้างมีความยุ่งยาก
จัดทำโดย
นางสาวทิพย์สุคนธ์ พันธ์กิ่ง (ครูกั้ง) กลุ่มสาระวิทยาศาสตร์และเทคโนโลยี (คอมพิวเตอร์)
โรงเรียนบุญวัฒนา สำนักงานเขตพื้นที่การศึกษามัธยมศึกษานครราชสีมา