An Architecture for a Database System

Summary lecture in 2110671 – Database Management System class, 06/22/2008

  • มองได้สามระดับ ได้แก่ Internal level, Conceptual level, External level
  • [Slide 21-27 ตามไม่ทัน]
  • [Slide 28] ส่วนประกอบของ DBMS (Components of a DBMS) มีดังต่อไปนี้
    • ในส่วนของ Database Administrator (DBA) จะเข้ามายุ่งอยู่สองส่วน คือ DDL Statements กับ Privileged Commands DDL จะเกี่ยวกับการ setup structure ของ DB เช่น CREATE, DROP, ALTER [1]
    • DDL Compiler จะทำหน้าที่แปลคำสั่ง
    • [สรุปต่อที่ slide 28]
  • [Slide 29] DB System มีโมเดลดังต่อไปนี้
    • Hierarchical model
    • Network model
    • Relational model
    • Entity-relationship
    • Object-Relational model
    • Object model
  • เริ่มจากยุคของ hierarchical data model [2] เกิดจากการเก็บข้อมูลเลียนแบบ tree structure ซึ่งปรากฎใน Operating System หลักการคือ parent มีได้หลาย children ในขณะที่หนึ่ง child มีได้เพียงหนึ่ง parent (1:N mapping / one-to-many relationships) นึกภาพความสัมพันธ์ระหว่าง folder กับ file
  • Network data model เปลี่ยนคอนเซ็ปต์นิดนึง ให้ child มีได้หลาย parent ผลที่เกิดคือ graph model – เป็นสเป็คที่เกิดจาก Conference on Data Systems Languages (CODASYL) ซึ่งปัจจุบันไม่ค่อยมีคนใช้กันแล้ว
  • Object Relational คือการเก็บ data แบบ relational ทั่วไป แต่ตัว data type ที่เก็บเป็น Object

  • ส่วนประกอบของ Database Environment มีดังนี้
    • Database Management System
    • Data
    • Database Administrator
    • Application Programmers
    • Users

Why Relational Database?

จากโมเดลอย่าง hierarchical ถึง network จะเห็นว่ายังไม่ตอบโจทย์เรื่องความง่าย (simplicity) ง่ายในที่นี้คือง่ายต่อการเข้าใจของมนุษย์ และความยืดหยุ่นในการใช้งาน (flexibility) จึงเกิดคอนเซ็ปต์ของ relational ขึ้นมา

Relational อาศัย “ความสัมพันธ์” ระหว่างข้อมูล โดยมีสมมุติฐานว่าข้อมูลใดๆก็ตามสามารถแสดงผลทางคณิตศาสตร์ในรูปของ n-ary relations ด้วย Cartesian product of n domains

รายละเอียดทางทฤษฎี [3]

References

[1] Data Definition Language: Wikipedia article
http://en.wikipedia.org/wiki/Data_Definition_Language
[2] Hierarchical model: Wikipedia article
http://en.wikipedia.org/wiki/Hierarchical_model
[3] Relational Model
http://en.wikipedia.org/wiki/Relational_model

One Comment

  1. Hana
    Posted June 23, 2008 at 11:47 am | #

    เขียนเป็นตุเป็นตะเลยแฮะ ^^
    พิมพ์เร็วค่อด ๆ

One Trackback

  1. By Why Relational Database? | [T]issues 2.0 on June 29, 2008 at 3:35 pm

    [...] ต่อจาก เล็คเชอร์ที่แล้ว… [...]

Post a Comment

Your email is never published nor shared. Required fields are marked *

*
*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>