อินสแตนซ์เปลี่ยนแปลงบ่อยมากในขณะที่สคีมารับการเปลี่ยนแปลงในลักษณะที่ไม่ค่อย
แผนภูมิเปรียบเทียบ
พื้นฐานสำหรับการเปรียบเทียบ | schema | ตัวอย่าง |
---|---|---|
ขั้นพื้นฐาน | คำอธิบายของฐานข้อมูล | สแนปชอตของฐานข้อมูลในช่วงเวลาหนึ่ง |
เปลี่ยนการเกิดขึ้น | หายาก | บ่อย |
สถานะเริ่มต้น | ว่างเปล่า | มีข้อมูลอยู่เสมอ |
ความหมายของสคีมา
สคีมา คือการออกแบบที่สมบูรณ์ของฐานข้อมูลที่รู้จักกันว่าเป็น ความตั้งใจ มันคือชุดของวัตถุที่มีชื่อ ชื่อของตารางคอลัมน์ของแต่ละตารางประเภทข้อมูลทริกเกอร์แพคเกจมุมมองฟังก์ชั่นและวัตถุอื่น ๆ จะรวมอยู่ในสคีมา การเปลี่ยนแปลงใน schema นั้นไม่ได้ใช้บ่อยนัก แต่การเปลี่ยนแปลงในบางครั้งจำเป็นต้องนำมาใช้เป็นข้อกำหนดของการเปลี่ยนแปลงแอปพลิเคชัน การปรับเปลี่ยน schema หรือการเปลี่ยนแปลงเรียกว่า การปฏิวัติ schema
ลองมาตัวอย่างของฐานข้อมูลนักเรียน แผนภาพสคีมาสำหรับฐานข้อมูลนักเรียนอาจมีตารางเกี่ยวกับข้อมูลของนักเรียนเช่นชื่อรายละเอียดหลักสูตรผลการเรียนและข้อมูลอื่น ๆ ในแผนภาพไดอะแกรมด้านล่างเรากำลังสร้างเร็กคอร์ดสองรายการที่ชื่อเป็นนักเรียนและหลักสูตรที่มีคุณลักษณะของพวกเขา
ระบบฐานข้อมูลมี schemata ต่างๆคั่นตามระดับของนามธรรมเช่นทางกายภาพตรรกะและภายนอก / subschema โดยทั่วไปแล้ว DBMS จะช่วยให้มีหนึ่งฟิสิคัลหนึ่งตรรกะและหลายสกีมาย่อย
- ฟิสิ คัลสคีมา เป็นระดับต่ำสุดของสคีมาซึ่งอธิบายวิธีการจัดเก็บข้อมูลบนดิสก์หรือที่เก็บข้อมูลฟิสิคัล
- ตรรกะสคีมา คือระดับกลางของสคีมาซึ่งอธิบายถึงโครงสร้างของฐานข้อมูลให้กับผู้ออกแบบฐานข้อมูล นอกจากนี้ยังระบุความสัมพันธ์ที่มีอยู่ระหว่างข้อมูล
- schema ภายนอก หรือ subschema เป็นระดับสูงสุดของ schema ซึ่งกำหนดมุมมองสำหรับผู้ใช้ปลายทาง
นิยามของอินสแตนซ์
อินสแตนซ์ คือข้อมูลที่รวบรวมในฐานข้อมูลในบางช่วงเวลาและเป็นที่รู้จักกันในชื่อ รัฐ หรือ ส่วนขยาย มันเป็นสแนปช็อตที่สถานะปัจจุบันหรือการเกิดขึ้นของฐานข้อมูลเป็นกรอบในขณะนั้น แต่ละครั้งเมื่อข้อมูลถูกแทรกหรือลบออกจากฐานข้อมูลจะเปลี่ยนสถานะของฐานข้อมูลนั่นคือสาเหตุที่อินสแตนซ์ของฐานข้อมูลเปลี่ยนแปลงบ่อยมาก
สคีมาของฐานข้อมูลถูกระบุไปยัง DBMS เมื่อมีการกำหนดฐานข้อมูลใหม่ในเวลานั้นฐานข้อมูลที่เกี่ยวข้องนั้นว่างเปล่าดังนั้นจึงมีอินสแตนซ์ที่ว่างเปล่า สถานะเริ่มต้นของฐานข้อมูลจะได้รับเมื่อฐานข้อมูลถูกโหลดครั้งแรกด้วยข้อมูลเริ่มต้น จากนั้นเป็นต้นไปทุกครั้งที่มีการอัปเดตข้อมูลเราจะได้รับอินสแตนซ์ฐานข้อมูลใหม่ ณ เวลาใดก็ตามมีสถานะปัจจุบันที่เชื่อมโยงกับฐานข้อมูล DBMS รับผิดชอบบางส่วนสำหรับการยืนยันอินสแตนซ์ที่ถูกต้องของฐานข้อมูลที่อินสแตนซ์มั่นใจโครงสร้างและข้อ จำกัด ที่ระบุในสคีมา
ลองทำตัวอย่างที่คล้ายกันในตัวอย่าง ที่นี่โครงสร้างนักเรียนจะมีเอนทิตีของตนเองในคุณลักษณะ
ความแตกต่างที่สำคัญระหว่างสคีมาและอินสแตนซ์
- สคีมาคือการแสดงการออกแบบของฐานข้อมูลในขณะที่อินสแตนซ์เป็นภาพรวมของฐานข้อมูลในช่วงเวลาหนึ่ง
- อินสแตนซ์เปลี่ยนแปลงบ่อยมากเมื่อใดก็ตามที่ข้อมูลถูกลบหรือเพิ่มในฐานข้อมูล เมื่อเทียบกับการเปลี่ยนแปลงในสคีมาเกิดขึ้นน้อยมาก
- ตัวอย่างเช่นสคีมาและอินสแตนซ์สามารถรับรู้ได้ง่ายโดยการเปรียบเทียบกับโปรแกรม ในช่วงเวลาของการเขียนโปรแกรมในภาษาการเขียนโปรแกรมตัวแปรของโปรแกรมนั้นถูกประกาศในตอนแรกซึ่งคล้ายกับคำจำกัดความของสคี นอกจากนี้ตัวแปรแต่ละตัวในโปรแกรมจะต้องมีค่าบางอย่างที่เกี่ยวข้องในช่วงเวลาหนึ่ง นี่คล้ายกับตัวอย่าง
ข้อสรุป
สคีมาและอินสแตนซ์นั้นสัมพันธ์กันอย่างใดอย่างหนึ่งสคีมาเป็นสถานะเริ่มต้นของฐานข้อมูลที่ฐานข้อมูลได้รับการออกแบบในตอนแรก ในทางตรงกันข้ามอินสแตนซ์เป็นสถานะเมื่อข้อมูลถูกโหลดลงในฐานข้อมูลหรือเมื่อมีการเปลี่ยนแปลงใด ๆ ที่ได้มาจากฐานข้อมูลที่เกี่ยวข้อง สคีมาคือคำอธิบายโดยละเอียดของโครงสร้างของฐานข้อมูลในขณะที่ข้อมูลที่จัดเก็บในช่วงเวลาเฉพาะในฐานข้อมูลนั้นเป็นที่รู้จักกันในชื่ออินสแตนซ์