Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> SQL

โมเดลเครือข่าย


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

มีสองแนวคิดพื้นฐานของโมเดลเครือข่าย -

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

บันทึกอาจทำหน้าที่เป็นเจ้าของในชุดจำนวนเท่าใดก็ได้และสมาชิกในชุดจำนวนเท่าใดก็ได้

ป.ล. เซตต้องไม่สับสนกับเซตทางคณิตศาสตร์

ชุดได้รับการออกแบบด้วยความช่วยเหลือของรายการที่เชื่อมโยงแบบวงกลม โดยที่ประเภทระเบียนหนึ่งรายการ เจ้าของชุดนั้นเรียกอีกอย่างว่าผู้ปกครอง ปรากฏขึ้นหนึ่งครั้งในแต่ละวงกลม และประเภทระเบียนที่สอง หรือที่เรียกว่า ผู้ใต้บังคับบัญชาหรือเด็ก อาจปรากฏขึ้นหลายครั้งในแต่ละแวดวง

มีการสร้างลำดับชั้นระหว่างประเภทระเบียนสองประเภทโดยที่ประเภทหนึ่ง (A) เป็นเจ้าของประเภทอื่น (B) ในเวลาเดียวกัน สามารถพัฒนาชุดอื่นได้ โดยชุดหลัง (B) เป็นเจ้าของชุดเดิม (A) ในรูปแบบนี้ ความเป็นเจ้าของถูกกำหนดโดยทิศทาง ดังนั้นชุดทั้งหมดจึงประกอบด้วยกราฟกำกับทั่วไป การเข้าถึงระเบียนได้รับการพัฒนาโดยโครงสร้างการจัดทำดัชนีของรายการที่เชื่อมโยงแบบวงกลม

โมเดลเครือข่ายมีคุณสมบัติหลักดังต่อไปนี้ -

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

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

โมเดลเครือข่าย

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

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

โมเดลเครือข่าย

แผนภาพด้านบนแสดงไดอะแกรมของโครงสร้างชุดพื้นฐาน สามารถกำหนดหนึ่งชุดขึ้นไป (การเชื่อมต่อ) ระหว่างคู่ของโหนดเฉพาะ และโหนดเดียวยังสามารถเกี่ยวข้องกับชุดอื่นๆ กับโหนดอื่นๆ ในฐานข้อมูลได้

ข้อมูลสามารถเข้าถึงได้ง่ายภายในโมเดลเครือข่ายโดยใช้โครงสร้างชุดที่เหมาะสม ไม่มีข้อจำกัดในการเลือกโหนดรูท ข้อมูลสามารถเข้าถึงได้ผ่านโหนดใดๆ และทำงานย้อนกลับหรือไปข้างหน้าด้วยความช่วยเหลือของชุดที่เกี่ยวข้อง

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

ข้อดี

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

ข้อเสีย

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