Data Modeling
ภาพที่ 1 การสร้างแบบจำลองข้อมูล
แบบจำลองข้อมูลคือ
?
การสร้างแบบจำลองข้อมูลหรือแบบจำลองฐานข้อมูลจะเป็นขั้นตอนแรกของการออกแบบฐานข้อมูล
ที่ซึ่งจะมุ่งเน้นที่การกำหนดโครงสร้างของฐานข้อมูลที่ซึ่งจะใช้ในการจัดเก็บและจัดการข้อมูลของผู้ใช้งาน
ฐานข้อมูล ในหลาย ๆครั้งการสร้างแบบจำลองฐานข้องมูลอาจ
หมายถึงการระบุถึงแบบจำลองข้อมูสำหรับการกำหนดขอบเขตของปัญหา (problem domain)
ที่เราจะพิจารณา แบบจำลองข้อมูลมักมีลักษณะเป็น
แผนภาพที่ใช้แสดงโครงสร้างที่ซับซ้อนของฐานข้อมูล
มีหน้าที่ในการช่วยให้ผู้ออกแบบฐานข้อมูลสามารถเข้าใจความซับซ้อนของข้อมูลที่ถูกใช้ในองค์กรต่าง
ๆ นอกจากนั้น
แบบจำลองข้อมูลมักจะแสดงถึงโครงสร้างของข้อมูลในฐานข้อมูลและคุณลักษณะของข้อมูลเหล่านั้น
ข้อจำกัดต่าง ๆ การเปลี่ยนแปลง/เปลี่ยนรูปข้อมูล และอื่น ๆ
ที่ซึ่งสามารถสนับสนุนการกำหนดขอบเขตของปัญหา
ส่วนประกอบของแบบจำลองฐำนข้อมูล
โดยส่วนใหญ่ของแบบจำลองฐานข้อมูลมักจะประกอบไปด้วย
เอ็นทิตี้ (entities),
แอทริบิว (attributes), ความสัมพันธ์ (relationships)
และ ข้อจำกัดต่างๆ (constraints)
·
เอ็นทิตี้ - ถูกใช้แทนวัตถุต่างๆ
สามารถเป็นอะไรก็ได้ เช่น คน สถานที่ สิ่งของ หรือเหตุการณ์ ที่ซึ่งจะ
เป็นข้อมูลที่จะถูกจัดเก็บอยู่ในฐานข้อมูล
เนื่องจากเอ็นทิตี้หนึ่งจะใช้แทนข้อมูลชนิดหนึ่ง ๆ ดังนั้นแต่
ละเอ็นทิตี้จะต้องมีความแตกต่างกัน และแต่ละเอ็นทิตี้จะต้องมีความเป็นเอกลักษณ์เสมอ
(มีข้อมูลที่ ไม่ซ้ำกัน) ตัวอย่างเช่น เอ็นทิตี้ของลูกค้าจะมีข้อมูลลูกค้าที่แตกต่างกันหลายคน
โดยที่ลูกค้าคนหนึ่งจะ มีข้อมูลที่มีความแตกต่างลูกค้าคนอื่น ๆ - แดง อินทร์พรม
จะมีชื่อและนามสกุลที่แตกต่างจากตุ๊กตา อารมณ์ดี เป็นต้น
·
แอทริบิว - จะแสดงถึงคุณลักษณะของเอ็นทิตี้
ตัวอย่างเช่น ข้อมูลเอ็นทิตี้ลูกค้าถูกอธิบายด้วยแอทริ บิวต่างๆ เช่น ชื่อ-นามสกุล
เบอร์โทรศัทพ์ ที่อยู่ และเครดิตที่ได้รับจากบริษัท เป็นต้น แอทริบิวใน
ระบบฐานข้อมูลจะมักลักษณะเหมือนกับฟิลด์ในแฟ้มข้อมูล
·
ความสัมพันธ์ - จะแสดงถึงความสัมพันธ์ระหว่างเอ็นทิตี้
ตัวอย่างเช่น ความสัมพันธ์ที่เกิดขึ้นระหว่าง
ลูกค้าและพนักงานขายจะสามารถอธิบายได้ เช่น
พนักงานขายหนึ่งคนสามารถดูแลลูกค้าได้หลายคน และลูกค้าคนหนึ่ง ๆ อาจถูกดูแลโดยพนักงานเพียงคนเดียว
จากความความสัมพันธ์ดังกล่าว เรา สามารถแบ่งรูปแบบความสัมพันธ์ในแบบจ
าลองข้อมูลออกเป็น 3 ชนิดหลัก คือ
1) one-to-many— สามารถเขียนแทนได้เป็น 1:M หรือ 1..*,
2) many-to-many—สามารถเขียนแทนได้เป็น M:N, M:M หรือ *..* และ
3) one-to-one—สามารถเขียนแทนได้เป็น 1:1 หรือ 1..1 ตามล าดับ เพื่อให้มีความ
เข้าใจเกี่ยวกับรูปแบบความสัมพันธ์มากขึ้นลองพิจารณาตัวอย่างดังต่อไปนี้
o
One-to-many
- จิตรกรคนหนึ่งสามารถสร้างสรรค์ผลงานศิลปะได้หลายชิ้น แต่ผลงาน
ศิลปะชิ้นหนึ่งๆจะสามารถถูกเขียนโดยจิตรกรเพียงคนเดียว จากความสัมพันธ์ข้างต้น เราสามารถเข้าใจโดยนัยได้ว่า
จิตรกร (one) จะมีความสัมพันธ์กับผลงานศิลปะหลายชิ้น (many)
ดังนั้น ในการออกแบบฐานข้อมูล เราจะแสดงความสัมพันธ์เกี่ยวกับ
“จิตรกร สร้างสรรค์ผลงานศิลปะ” ได้เป็น “1:M”
o
Many-to
many - พนักงานคนหนึ่งสามารถทำงานได้หลายหน้าที่ และหน้าที่ในการทำงานหนึ่งๆสามารถมีพนักงานหลายคนรับผิดชอบ
ดังนั้น เราสามารถแสดงความสัมพันธ์ เกี่ยวกับ “พนักงานทำงาน” ได้เป็น “M:M”
o
One-to-one
- ในธุรกิจค้าปลีกที่มีร้านค้าหลายสาขา
ที่ซึ่งแต่ละสาขาจะมีผู้จัดการสาขา เพียงหนึ่งคนเท่านั้น ดังนั้น
เราสามารถแสดงความสัมพันธ์เกี่ยวกับ “ผู้จัดการสาขามีหน้าที่รับผิดชอบสาขาหนึ่ง ๆ”
ได้เป็น “1:1”
ข้อจำกัด - จะเป็นข้อจำกัดที่เกี่ยวข้องกับข้อมูลที่ซึ่งจะสามารถช่วยเราได้แน่ใจเกี่ยวกับความสมบูรณ์
ของข้อมูลได้โดยส่วนใหญ่ของข้อจำกัดจะถูกแสดงอยู่ในรูปแบบของกฎต่าง ๆ ตัวอย่างเช่น
เงินเดือน ของพนักงานควรจะมีค่าอยู่ระหว่าง 6,000 ถึง 350,000
บาท หรือ เกรดเฉลี่ยของนักศึกษาควรจะมี ค่าอยู่ระหว่าง 0.00 ถึง 4.00 เป็นต้น
กฎเกณฑ์ทางธุรกิจ
จากส่วนก่อนหน้า เราสามารถเปรียบการออกแบบฐานข้อมูลได้กับการเลือกหรือการกำหนดเอ็นทิตี้
แอทริบิว และความสัมพันธ์ต่าง ๆ ระหว่างเอ็นทิตี้ แต่ก่อนที่จะเริ่มกำหนดสิ่งต่าง ๆ
ข้างต้น ผู้ออกแบบข้อมูลควรจะเข้าใจเกี่ยวกับชนิดของข้อมูลในองค์กร
วิธีในการเรียกใช้ข้อมูล ช่วงเวลาที่มีการเรียกใช้ข้อมูล และยังรวมถึงเข้าใจภาพรวมและวิธีการดำเนินธุรกิจอย่างถ่องแท้
ข้อมูลในฐานข้อมูลจะเป็นข้อมูลที่มีความหมายก็ต่อเมื่อข้อมูลเหล่านั้นสามารถสะท้อนถึงกฎเกณฑ์ทางธุรกิจได้อย่างเหมาะสม
กฎเกณฑ์ทางธุรกิจมักจะสั้น ๆ กะทัดรัด และมีคำอธิบายที่ชัดเจนเกี่ยวนโยบาย ขั้นตอน
หรือหลักการขององค์กร
กฎเกณฑ์ทางธุรกิจที่ถูกกำหนดไว้อย่างถูกต้อง และเหมาะสมจะถูกใช้ในการกำหนดส่วนประกอบต่าง
ๆ ของแบบจำลองฐานข้อมูลซึ่งก็คือ เอ็นทิตี้ แอทริบิว ความสัมพันธ์และข้อจำกัดต่าง ๆ
แต่ในทางกลับกันเมื่อ เราทำการพิจารณาถึงส่วนประกอบต่าง ๆ ในฐานข้อมูล อาทิเช่น
ความสัมพันธ์ระหว่างแอนทิตี้ - พนักงานขาย สามารถดูแลลูกค้าได้หลายคน และลูกค้าจะถูกดูแลโดยพนักงานขายเพียงคนเดียว
– จะทำให้เราทราบถึง กฎเกณฑ์ทางธุรกิจด้วยเช่นกัน
กฎเกณฑ์ทางธุรกิจที่จะช่วยให้สามารถกำหนดเอ็นทิตี้
แอทริบิว ความสัมพันธ์ และข้อจำกัดได้อย่างมี
ประสิทธิภาพจะต้องเข้าใจง่ายและมีการตีความที่เหมือนกัน
ดังแสดงในตัวอย่างดังต่อไปนี้
·
ลูกค้าสามารถสั่งซื้อสินค้าได้หลายครั้ง
·
ใบสั่งซื้อสินค้าจะเกิดจากลูกค้าคนหนึ่ง ๆ
สั่งซื้อสินค้า
·
การเปิดอบรมจะกระทำได้ก็ต่อเมื่อมีพนักงานเข้าร่วมอยู่ระหว่าง
10
– 30 คน
กฎเกณ์ฑ์ทางธุรกิจข้างต้นจะใช้ในการกำหนดเอ็นทิตี้
ความสัมพันธ์ และข้อจำกัดได้ดังนี้
· สำหรับ
2
กฎเกณฑ์ทางธุรกิจแรกจะสามารถใช้ในการกำหนด 2 เอ็นทิตี้
คือ ลูกค้าและใบสั่งซื้อสินค้า โดยทั้งสองเอ็นทิตี้นี้จะมีความสันพันธ์กันแบบ 1:M
· สำหรับกฎเกณฑ์ทางธุรกิจสุดท้ายจะสามารถใช้ในการกำหนด
2
เอ็นทิตี้ คือ พนักงานและการอบรม และยังสามารถใช้กำหนดข้อจำกัดของเอ็นทิตี้การอบรมที่ซึ่งการอบรมครั้งหนึ่ง
ๆ จะต้องมีพนักงานเข้าร่วมระหว่าง 10 – 30 คน ตามลำดับ
กำรปรับเปลี่ยนกฎเกณฑ์ทำงธุรกิจไปเป็นส่วนประกอบของแบบจำลองข้อมูล
หลังจากเราได้รับกฎเกณฑ์ทางธุรกิจจากการสัมภาษณ์พนักงานระดับต่าง
ๆ ในองค์แล้วขั้นตอนต่อไป เราจะต้องทำการปรับเปลี่ยนกฎเกณฑ์ทางธรุกิจไปเป็นเอ็นทิตี้
แอทริบิว ความสัมพันธ์ และข้อจำกัดต่าง ๆ โดย การปรับเปลี่ยนคำนาม คำนามที่ปรากฏอยู่ในแต่ละกฎทางธุรกิจให้เป็นเอ็นทิตี้ของแบบจำนวนลองข้อมูล
และทำการปรับเปลี่ยนคำกริยาที่เกี่ยวข้องกับคำนามที่ปรากฏก่อนหน้าไปเป็นความสัมพันธ์ระหว่างเอนทิตี้
ตัวอย่างเช่น กฎทางธุรกิจ “ลูกค้าคนหนึ่ง ๆ สามารถเขียนใบสั่งของได้หลายใบ”
ที่จะประกอบไปด้วย 2 คำนาม คือ ลูกค้าและใบสั่งของ
และคำกริยา 1 คำ คือ เขียน ตามลำดับ จากกฎทางธุรกิจดังกล่าว
เราสามารถสรุปได้ ว่า
1)
ลูกค้าและใบสั่งของจะเป็นวัตถุที่เราสนใจและสามารถปรับเปลี่ยนให้เป็นเอ็นทิตี้ได้
และ
2) “เขียน”
จะ เป็นความสัมพันธ์ระหว่างลูกค้ากับใบสั่งสินค้า
ในการที่จะระบุถึงความสัมพันธ์ระหว่างเอ็นทิตี้
เราจะต้องทำการพิจารณาความสัมพันธ์ทั้งสองด้าน (bidirectional
relationship) ตัวอย่างเช่น กฎทางธุรกิจ
“ลูกค้าคนหนึ่งๆสามารถเขียนใบสั่งของได้หลายใบ”
จะมีส่วนเติมเต็มอีกกฎทางธุรกิจหนึ่ง คือ
“ใบสั่งสินค้าใบหนึ่งๆจะถูกเขียนโดยลูกค้าคนหนึ่ง ๆ เท่านั้น”
จากกฎทางธุรกิจทั้งสองจะทำให้เราสามารถพิจารณาความสัมพันธ์ได้ทั้งสองด้านของเอ็นทิตี้ลูกค้าและเอ็นทิตี้ใบสั่งได้
โดยรูปแบบความสัมพันธ์จะเป็นแบบ 1:M ด้วยเหตุนี้
การระบุถึงความสัมพันธ์ระหว่าง 2 เอ็นทิตี้ A และ B ใด ๆ ก็ตามเราควรที่จะต้องตั้งคำถาม 2 คำถาม คือ
1) มีข้อมูลในเอ็นทิตี้ A
เป็นจำนวนเท่าไร ที่มีความสัมพันธ์ กับข้อมูลหนึ่งๆในเอ็นทิตี้ B
? และ
2)
ข้อมูลในเอ็นทิตี้ B เป็นจำนวนเท่าไร
ที่มีความสัมพันธ์กับข้อมูลหนึ่ง ๆ ใน เอ็นทิตี้ A ? ตามลำดับ
การตั้งชื่อ
ระหว่างการปรับเปลี่ยนกฎเกณฑ์ทางธุรกิจให้เป็นเอ็นทิตี้
แอทริบิว ความสัมพันธ์ และข้อจำกัดต่างๆ ขั้นตอนการทำงานจะรวมถึงขั้นตอนการตั้งชื่อวัตถุต่าง
ๆ ที่ซึ่งจะทำให้วัตถุที่เราทำการพิจารณามีความเป็น
เอกลักษณ์และแตกต่างจากวัตถุอื่น ๆ ในขอบเขตของปัญหาที่เราพิจารณา ดังนั้น
เราควรจะต้องเอาใจใส่กับ วิธีการในการตั้งชื่อวัตถุต่าง ๆ ที่เราจะทำการพิจารณา
ชื่อของเอ็นทิตี้ควรจะสามารถอธิบายได้ถึงวัตถุที่เราสนใจและควรที่จะใช้คำศัพท์ที่ผู้งานระบบ
ฐานข้อมูลคุ้นเคย ในส่วนของการตั้งชื่อแอทริบิวก็ควรที่จะสามารถอธิบายได้ถึงข้อมูลเช่นกัน
โดยเราอาจทำ การตั้งชื่อด้วยคำนำหน้าของแอทริบิวหรือคำย่อของแอทริบิวนั้น ๆ
ตัวอย่างเช่น ในเอ็นทิตี้ CUSTOMER จะมี
ข้อมูลที่บ่งบอกถึงเครดิตที่ลูกค้าได้รับ (customer’s credit limit) ดังนั้น เราอาจทำการตั้งชื่อด้วยการนำคำ นำหน้าของเอ็นทิตี้มารวมกับข้อมูลหลักที่สำคัญได้เป็น
“CUS_CREDIT_LIMIT” ที่ซึ่งจะทำให้เราสามารถ
เข้าใจความหมายได้โดยง่าย การตั้งชื่อที่เหมาะสมจะเป็นการช่วยพัฒนาให้แบบจำลองที่เราสร้างขึ้นมี
ความสามารถในการสื่อสารกันระหว่างผู้ออกแบบฐานข้อมูล ผู้เขียนโปรแกรม และผู้ใช้ระบบฐานข้อมูลได้ดี
ยิ่งขึ้น
แบบจำลองแบบลำดับชั้นและแบบจำลองแบบเครือข่าย
แบบจำลองแบบลำดับชั้น (hierarchical
model) ถูกพัฒนาขึ้นในยุค 1960 เพื่อจัดการกับข้อมูล
ปริมาณมาก ๆ ของโครงการผลิตที่มีความซับซ้อน อาทิ เช่น
จรวดอพอลโลที่ลงจอดบนดวงจันทร์ในปี 1969 โครงสร้างพื้นฐานของแบบจำลองแบบลำดับชั้นจะสามารถแสดงได้ด้วย
upside-down tree และโครงสร้างลำดับชั้นจะประกอบด้วยลำดับชั้นต่าง
ๆ (level หรือ segment) ที่ซึ่งจะเหมือนกับชนิดของเรคคอร์ดในระบบ
แฟ้มข้อมูล โดยลำดับชั้นหนึ่งๆอาจประกอบไปด้วยหลาย segment ที่ซึ่ง
segment ที่อยู่ระดับบนจะถูก เรียกว่า parent แต่ segment ที่อยู่ถัดลงมาจะเรียกว่า children
ของ parent (หมายเหตุ parent หนึ่ง ๆ สามารถมีได้หลาย child แต่ในทางกลับกัน child
หนึ่งๆจะสามารถมีได้เพียง parent เดียว)
แบบจำลองแบบเครือข่าย
(network
model) ได้ถูกสร้างขึ้นเพื่อเป็นตัวแทนของความสัมพันธ์ของ ข้อมูลที่มีความซับซ้อน
แนวคิดสำหรับการพัฒนาแบบจำลองแบบเครือข่ายก็เพื่อที่จะพัฒนาประสิทธิภาพการ
ทำงานให้เหนือกว่าแบบจำลองแบบหลายลำดับชั้น โดยจะมีการปรับปรุงประสิทธิภาพการทำงานของ
ฐานข้อมูลและการกำหนดมาตรฐานต่าง ๆ ของฐานข้อมูล
แบบจำลองข้อมูลเชิงสัมพันธ์
แบบจำลองข้อมูลเชิงสัมพันธ์ (relational
model) ถูกพัฒนาขึ้นโดย E. F. Codd ในช่วงทศวรรษ
1970 ที่ซึ่งจะสามารถลดปัญหาและอุปสรรคของการสื่อสารระหว่างผู้ออกแบบและผู้ใช้งานระบบฐานข้อมูล
โดยแนวความคิดพื้นฐานของแบบจำลองข้อมูลเชิงสัมพันธ์จะเป็นแนวคิดทางคณิตศาสตร์เรื่องความสัมพันธ์
(relation) ที่ซึ่งเราสามารถพิจารณาความสัมพันธ์เป็นเมทริกซ์หรือตารางของข้อมูลที่ประกอบไปด้วยการ
รวมกันระว่างแถว (rows) และ คอลัมน์ (columns) แต่ละแถวของตารางจะถูกเรียกว่า tuple และแต่ละ
คอลัมน์จะถูกแทนด้วยแอทริบิวต่าง ๆ
การสร้างแบบจำลองข้อมูลเชิงสัมพันธ์จะสามารถดำเนินการผ่านระบบจัดการฐานข้อมูลเชิงสัมพันธ์
(relational
database management system, RDBMS) ที่ซึ่งจะมีความซับซ้อนค่อนข้างสูง
RDBMS จะสามารถดำเนินการฟังก์ชั่นพื้นฐานได้เหมือนกับระบบจัดการฐานข้อมูลแบบลำดับชั้นและแบบเครือข่าย
แต่ RDBMS จะมีการเพิ่มเติมประโยชน์ที่ค่อนข้างสำคัญ คือ
ความสามารถในการปิดบังความซับซ้อนของ แบบจำลองข้อมูลเชิงสัมพันธ์จากผู้ใช้งานฐานข้อมูล
โดย RDBMS จะจัดการเกี่ยวกับการทำงานเชิงกายภาพ ทั้งหมด
(ขั้นตอนการจัดเก็บและเรียกดูข้อมูลทั้งหมด) ที่ซึ่งจะทำให้ผู้ใช้งานจะมองเห็นฐานข้อมูลเชิงสัมพันธ์
เป็นเพียงกลุ่มของตารางข้อมูลที่ใช้ในการจัดเก็บข้อมูลเท่านั้น และเมื่อไรก็ตามที่ผู้ใช้ต้องการที่จะดำเนินการ
กับข้อมูล ไม่ว่าจะเป็นการเพิ่ม ลบ และแก้ไขข้อมูล ก็จะสามารถทำได้โดยง่ายผ่านการเรียกใช้คิวรี
แบบจำลองข้อมูลความสัมพันธ์เอ็นทิตี้
ถึงแม้ว่าแบบจำลองข้อมูลเชิงสัมพันธ์จะถูกพัฒนาเพื่อปรับปรุงการทำงานของแบบจำลองแบบลำดับ
ชั้นและแบบเครือข่าย แต่อย่างไรก็ตามแบบจำลองข้อมูลเชิงสัมพันธ์ยังขาดเค้าโครงที่จะทำให้การสร้าง
เครื่องมือสำหรับออกแบบฐานข้อมูลได้อย่างมีประสิทธิภาพ และด้วยเนื่องจากการแสดงโครงสร้างของ
แบบจำลองด้วยแผนภาพจะทำให้ผู้ออกแบบและผู้ใช้งานฐานข้อมูลสามารถเข้าใจแบบจำลองข้อมูลได้ง่ายกว่า
การใช้ตัวอักษร ด้วยเหตุนี้ แบบจำลองความสัมพันธ์เอ็นทิตี้ (entity
relationship (ER) model, ERM) ได้ถูก คิดค้นและถูกใช้เป็นภาษาฐานในการสร้างแบบจำลองข้อมูลสำหรับการออกแบบฐานข้อมูล
แบบจำลองความสัมพันธ์เอ็นทิตี้ถูกคิดค้นในปี
1976
โดย Peter Chen ที่ซึ่งจะใช้แผนภาพในการ
แสดงถึงเอ็นทีตี้และความสัมพันธ์ต่างๆในโครงสร้างของฐานข้อมูล แบบจำลองความสัมพันธ์จะมักจะแสดงอยู่
ในรูปของแผนผังความสัมพันธ์เอ็นทีตี้ (entity relationship diagram, ERD) ที่ซึ่งจะเป็นแผนภาพที่จะแสดง ส่วนประกอบต่าง ๆ ของแบบจำลองข้อมูล แบบจำลองความสัมพันธ์เอ็นทิตี้จะประกอบไปด้วย
2 ส่วน คือ
·
เอ็นทิตี้ – จะเป็นส่วนที่ใช้สำหรับจัดเก็บข้อมูล
เอ็นทิตี้ใน ERD
จะถูกแสดงด้วยสี่เหลี่ยมและชื่อของ
เอ็นทิตี้มักจะถูกเขียนด้วยตัวอักษรใหญ่อยู่ตรงกลางสี่เหลี่ยม
แต่ละเอ็นทิตี้จะสามารถอธิบายได้ด้วย
เซตของแอทริบิวที่บ่งบอกถึงคุณลักษณะของเอ็นทิตี้นั้น ๆ ตัวอย่างเช่น
เอ็นทิตี้พนักงานจะมีแอทริบิว รหัสพนักงาน หมายเลขบัตรประชาชน ชื่อ
และนามสกุลเป็นคุณลักษณะหรือข้อมูลที่บ่งบอกถึงตัวตน ของพนักงานคนหนึ่ง ๆ
เมื่อเราทำการประยุกต์ใช้ ERD เอ็นทิตี้จะแสดงถึงตารางข้อมูลที่มีการ
เชื่อมโยงความสัมพันธ์ โดยแต่ละแถวในตารางจะเป็นค่าข้อมูลจริง (entity
instance หรือ entity occurrence)
·
ความสัมพันธ์ - จะเป็นสิ่งที่ใช้อธิบายเกี่ยวกับความสัมพันธ์หรือการเชื่อมโยงกันของข้อมูล
ความสัมพันธ์ส่วนใหญ่จะใช้ในการอธิบายความสัมพันธ์ของ 2 เอ็นทีตี้ที่ซึ่งจะแสดงผ่านความสัมพันธ์ ทั้งแบบ one-to-many
(1:M), many-to-many (M:M) และ one-to-one (1:1) ตามลำดับ ใน แบบจำลองข้อมูลความสัมพันธ์เอ็นทิตี้จะมีการกำหนดชื่อความสัมพันธ์เพื่อแสดงถึงการกระทำ
(action) ที่เป็นตัวกลางในการเชื่อมโยงความสัมพันธ์ของเอ็นทิตี้ต่าง
ๆ ตัวอย่างเช่น จิตรกรเขียนภาพ พนักงานเรียนรู้ทักษะต่าง ๆ หรือ
พนักงานจัดการร้านค้าสาขาต่าง ๆ เป็นต้น
แบบจำลองข้อมูลเชิงวัตถุ
แบบจำลองข้อมูลเชิงวัตถุ (object-oriented
data model, OODM) จะทำการจัดเก็บข้อมูลและ
ความสัมพันธ์ต่างๆของข้อมูลไว้ใน object
ในการจัดเก็บข้อมูลต่าง ๆ OODM จะทำการประยุกต์ใช้ระบบ
จัดการฐานข้อมูลเชิงวัตถุ (object-oriented database management system,
OODBMS) ที่ซึ่งจะท าให้
เราสามารถจัดเก็บและเรียกดูข้อมูลได้อย่างสะดวกและรวดเร็ว
OODM จะมีแนวทางในการกำหนดและใช้เอ็นทิตี้ที่แตกต่างจากแบบจำลองข้อมูลอื่น ๆ
โดย object หนึ่ง ๆ จะถูกอธิบายได้ด้วยข้อเท็จจริงหนึ่ง ๆ และยังทำการจัดเก็บความสัมพันธ์ระหว่าง
object ที่พิจารณากับ object อื่น ๆ อีกด้วย
โดยการจัดเก็บข้อเท็จจริงใน object จะทำให้เราทราบถึงความหมายได้มากขึ้นและ
สามารถแสดงถึงข้อมูลที่มีความซับซ้อนได้มากขึ้นด้วยเช่นกัน
ด้วยเหตุนี้เราจึงได้สามารถกล่าวได้ว่า OODM จะเป็นแบบจำลองข้อมูลที่แสดงความหมาย
(semantic data model) เนื่องจากการที่เราได้รับทราบ
ความหมายที่มากขึ้นนั่นเอง นอกจากนั้น OODM ได้มีการพัฒนาให้
object หนึ่ง ๆ สามารถบรรจุไปด้วยการ ดำเนินการทั้งหมดที่สามารถเกิดขึ้นได้กับ
object ได้ แบบจำลองเชิงวัตถุจะประกอบไปด้วยส่วนย่อยต่าง ๆ
แบบจำลองเชิงสัมพันธ์ที่ถูกพัฒนาเพิ่มเติม
เนื่องจากข้อมูลต่าง ๆ มีความซับซ้อนมากขึ้นตามยุคสมัย
ด้วยเหตุนี้จึงทำให้ผู้ผลิตซอร์ฟแวร์ระบบ จัดการฐานข้อมูลมีแนวคิดที่จะพัฒนาขีดความสามารถของแบบจำลองข้อมูลเชิงสัมพันธ์เพิ่มเติม
(extended relational data
model, ERDM) ที่ซึ่งจะทำการเพิ่มคุณลักษณะบางประการของแบบจำลองเชิงวัตถุเพื่อทำ
ให้ฐานข้อมูลเชิงสัมพันธ์สนับสนุนการทำงานเชิงวัตถุ เช่น object การขยายชนิดของข้อมูลภายใต้ แนวความคิดของคลาสและ inheritance เป็นต้น จากการพัฒนาข้างต้นจึงเป็นเหตุให้มีผู้คนให้ความสนใจกับ
ระบบจัดการฐานข้อมูลเชิงวัตถุ/สัมพันธ์ (object/relation database
management system, O/R DBMS) มากขึ้น นอกจากนั้น O/R DBMS ยังจะสามารถสนับสนุนการทำงานร่วมกับเอกสาร XML (eXtensible Markup Language - เป็นมาตราฐานในการแลกเปลี่ยนข้อมูลแบบไม่มีโครงสร้าง กึ่งโครงสร้าง
และแบบมี โครงสร้าง ที่ซึ่งจะทำให้เราสามารถเชื่อมต่อระบบที่ใช้กับระบบต่าง ๆ ที่มีความแตกต่างทางด้านสถาปัตยกรรม
ของระบบได้
สรุปเกี่ยวกับแบบจำลองข้อมูล
วิวัฒนาการของระบบจัดการฐานข้อมูลยังคงมีอย่างต่อเนื่อง
เนื่องจากยังคงมีความต้องการที่จะมี วิธีการสร้างแบบจำลองใหม่ ๆ ที่ซึ่งสามารถเพิ่มการรองรับข้อมูลที่มีความซับซ้อน
โดยบทสรุปของแบบจำลอง ข้อมูลที่ถูกคิดค้นและถูกใช้งานกันอย่างกว้างขวาง
·
แบบจำลองข้อมูลจะต้องสามารถแสดงถึงระดับของความง่ายของกรอบความคิดโดยไม่สูญเสียความ
ครบถ้วนของความหมายของฐานข้อมูล มันอาจจะไม่ถูกต้องนักถ้าเรามีแบบจำลองข้อมูลที่ให้กรอบ
ความคิดที่ค่อนข้างยากกว่าความเป็นจริง
·
แบบจำลองจะต้องสามารถให้กรอบความคิดที่ใกล้เคียงความจริงมากที่สุดเท่าที่จะเป็นไปได้
เป้าหมาย นี้จะสามารถทำได้โดยการเพิ่มความหมาย (semantic) ให้กับการแสดงถึงข้อมูลให้มากขึ้น
(ความหมายจะเกี่ยวข้องกับพฤติกรรมของข้อมูล)
·
การทำการเปลี่ยนแปลง/เปลี่ยนรูปข้อมูลจะต้องเป็นไปตามกฎความสอดคล้องและความสมบูรณ์ของ
ข้อมูล
การคิดหรือออกแบบแบบจำลองข้อมูล
ณ ปัจจุบันจะมุ่งเน้นที่การแก้ไขจุดด้วยของแบบจำลองก่อน หน้า โดยแบบจำลองข้อมูลแบบเครือข่ายถูกคิดค้นเพื่อแทนที่แบบจำลองข้อมูลแบบลำดับชั้น
โดยแบบจำลอง ข้อมูลแบบเครือข่ายจะสามารถทำการปรับเปลี่ยนความสัมพันธ์ที่ซับซ้อนให้มีความง่ายมากขึ้น
ในทางกลับกัน แบบจำลองข้อมูลเชิงสัมพันธ์จะมีประโยชน์ที่มากกว่าแบบจำลองแบบเครือข่ายในหลาย
ๆ แง่มุม เช่น การแสดง ข้อมูลด้วยวิธีการที่ง่าย การลดทอนความไม่สอดคล้องของข้อมูล
และการประยุกต์ใช้ภาษาคิวรีในการเข้าถึง และจัดการกับข้อมูล แบบจำลองเชิงวัตถุได้ถูกพัฒนาขึ้นเพื่อจัดการกับข้อมูลที่มีความซับซ้อนภายใต้
แนวความคิดของการจัดการเกี่ยวกับความหมายของข้อมูล ขณะที่แบบจำลองความสัมพันธ์เชิงวัตถุจะเป็น
แบบจำลองข้อมูลเชิงสัมพันธ์ที่มีการเพิ่มเติมแนวความคิดเชิงวัตถุ ที่ซึ่งจะช่วยให้สามารถจัดการกับข้อมูลที่มี
ความซับซ้อนได้และยังสามารถสนับสนุนการทำงานร่วมกับ XML ได้อีกด้วย จากที่กล่าวข้างต้นเราสามารถ สรุปเกี่ยวกับข้อดี – เสียของแบบจำลองต่างๆ
เขียนโดย 1.นายธันญารัตน์ ทองน้อย
2.นางสาวนภัสวรรณ ประสารศรี
2.นางสาวนภัสวรรณ ประสารศรี
ไม่มีความคิดเห็น:
แสดงความคิดเห็น