สคีมาฐานข้อมูลคืออะไร

สารบัญ:

สคีมาฐานข้อมูลคืออะไร
สคีมาฐานข้อมูลคืออะไร
Anonim

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

บรรทัดล่าง

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

ทำไมสคีมาจึงสำคัญ

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

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

เครื่องมือจัดการฐานข้อมูลส่วนใหญ่ไม่แสดงรายการสคีมา แต่จะแสดงรายการฐานข้อมูลและผู้ใช้

Image
Image

ตัวอย่างเช่น บริษัทสร้างบัญชีผู้ใช้ (สคีมา) สำหรับบ๊อบและเจน นอกจากนี้ยังสร้างบัญชีสำหรับแผนกต่างๆ เช่น HR และการตลาด จากนั้นให้นักวิเคราะห์ในแต่ละแผนกเข้าถึงบัญชีสคีมาของแผนก

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

การให้สิทธิ์การเข้าถึงด้วยวิธีนี้ เฉพาะบทบาทและผู้ใช้ที่เหมาะสมเท่านั้นที่สามารถอ่าน เขียน หรือแก้ไขข้อมูลในสินทรัพย์ข้อมูลที่มีอยู่ในตัวเองภายในฐานข้อมูลขนาดใหญ่ได้

เครื่องมือฐานข้อมูลทุกตัวใช้สคีมาเป็นวิธีการพื้นฐานในการแยกข้อมูลในสภาพแวดล้อมที่มีผู้ใช้หลายคน

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

การสร้างแบบแผน

สคีมาถูกกำหนดอย่างเป็นทางการโดยใช้ Structured Query Language (SQL) ตัวอย่างเช่น ใน Oracle คุณสร้างสคีมาโดยสร้างบัญชีผู้ใช้ที่เป็นเจ้าของ:

สร้างผู้ใช้บ๊อบ

ระบุโดยชั่วคราว_รหัสผ่าน

ตัวอย่างพื้นที่ตารางเริ่มต้น

QUOTA 10M บนตัวอย่าง

ชั่วคราว TABLESPACE temp

QUOTA 5M บนระบบ

PROFILE app_user

รหัสผ่านหมดอายุ;

ผู้ใช้รายอื่นได้รับสิทธิ์เข้าถึงสคีมาใหม่โดยอาศัยชื่อผู้ใช้หรือบทบาทอย่างน้อยหนึ่งบทบาทที่บัญชีผู้ใช้ถูกเพิ่มเข้าไป

สคีมาเทียบกับโมเดลข้อมูล

สคีมาไม่มีโครงสร้างภายในเพื่อดำเนินการใดๆ เช่นเดียวกับโมเดลข้อมูล แต่เป็นโครงสร้างพื้นฐานเพื่อรองรับการอนุญาตการแบ่งส่วนในฐานข้อมูล

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

Image
Image

ตัวอย่างเช่น แผนกทรัพยากรบุคคลอาจรวมแบบจำลองข้อมูลสำหรับการตรวจทานผลการปฏิบัติงานของพนักงานไว้ในสคีมา แทนที่จะสร้างสคีมาสำหรับการรีวิวเหล่านี้ ตัวแบบข้อมูลสามารถอยู่ในสคีมา HR (พร้อมกับตัวแบบข้อมูลอื่นๆ) และยังคงมีความแตกต่างทางตรรกะผ่านคำนำหน้าของตารางและดูชื่อออบเจกต์ในตัวแบบข้อมูล

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

คำถามที่พบบ่อย

    สคีมาฐานข้อมูลและสถานะฐานข้อมูลแตกต่างกันอย่างไร

    รูปแบบฐานข้อมูลอธิบายฐานข้อมูล สถานะฐานข้อมูลหมายถึงเนื้อหาของฐานข้อมูลในช่วงเวลาหนึ่งและถือได้ว่าเป็นส่วนขยายของสคีมาฐานข้อมูล

    สคีมาเชิงสัมพันธ์ของฐานข้อมูลคืออะไร

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