สถาปัตยกรรม ของระบบ ฐานขอ้ มูล
สถาปัตยกรรม (ANSI/SPARC) สถาปัตยกรรมฐานขอ้ มลู เป็นมมุ มองแนวความคดิ ทใ่ี ชใ้ นการ อธบิ ายถงึ รูปแบบและโครงสรา้ ง ของขอ้ มลู ในระบบฐานขอ้ มลู โดยไม่ขน้ึ อย่กู บั โครงสรา้ งจรงิ ของระบบฐานขอ้ มูลนัน้ ๆ ผใู้ ช้ ฐานขอ้ มลู จะมองขอ้ มลู น้ีในแงม่ ุมหรอื ววิ ทแ่ี ตกต่างกนั ไปตาม จดุ ประสงคข์ องการประยกุ ต์ใชง้ าน โดยไมจ่ าเป็นตอ้ งสนใจว่า มลี กั ษณะการจดั เกบ็ ขอ้ มลู แทจ้ รงิ เป็นเช่นไร ระบบฐานขอ้ มลู จะทาการ ซ่อนรายละเอียดไว้ โดยจดั แบ่งระดบั ของข้อมูล ออกเป็นระดบั ชนั้
ระดบั ชนั้ ของขอ้ มลู 1. ระดบั ภายนอก (External Level) เป็นระดบั ทอ่ี ยสู่ งู สดุ เป็นมมุ มองของผใู้ ชแ้ ต่ละคนทม่ี ตี ่อขอ้ มลู วา่ มกี ารจดั เกบ็ หรอื มขี อ้ มลู ใดอยบู่ า้ ง ซง่ึ ไมใ่ ชร่ ปู รา่ งหรอื โครงสรา้ งของขอ้ มลู ท่ี แทจ้ รงิ ทงั้ หมด เป็นเพยี งบางสว่ นของขอ้ มลู ทจ่ี ดั เกบ็ อยจู่ รงิ ในฐานขอ้ มลู โดยผใู้ ชแ้ ต่ละคนจะมคี วามตอ้ งการใชง้ าน หรอื มี มมุ มองของขอ้ มลู ทแ่ี ตกต่างกนั ออกไป
ระดบั ชนั้ ของขอ้ มูล 2. ระดบั แนวความคดิ (External Level) เป็นระดบั ทอ่ี ยถู่ ดั ขน้ึ มาไดแ้ ก่ ระดบั ของการมองความสมั พนั ธ์ ของขอ้ มลู ในระบบฐานขอ้ มลู วา่ มกี าร จดั เกบ็ ขอ้ มลู อยา่ งไร มคี วามสมั พนั ธก์ บั ขอ้ มลู อ่นื อย่างไรบา้ ง รวมทงั้ กฎเกณฑต์ ่าง ๆ เกย่ี วกบั ขอ้ มลู เชน่ กฎเกณฑข์ องตวั ขอ้ มูล ความ ปลอดภยั (Security) และความคงสภาพของขอ้ มลู (Integrity) ซง่ึ ยงั ไมใ่ ชร่ ปู แบบหรอื วธิ กี ารจดั เกบ็ จรงิ ในในสอ่ื บนั ทกึ ขอ้ มูล เป็นเพยี งแค่ มมุ มองในแนวความคดิ วา่ ขอ้ มลู จะมกี ารจดั เกบ็ อยา่ งไรเทา่ นัน้ ผทู้ ม่ี ี สทิ ธจิ ะใช้ ขอ้ มลู ในระดบั น้ี คอื โปรแกรมเมอร์ (Programmer) หรอื ผบู้ รหิ ารฐานขอ้ มลู (Database Administrator)
ระดบั ชน้ั ของขอ้ มูล 3. ระดบั ภายใน (Internal Level) เป็นระดบั ท่ี มองถงึ วธิ กี ารจดั เกบ็ ขอ้ มลู ในระดบั ฟิสคิ อล (เชงิ กายภาพ) วา่ มรี ปู แบบและโครงสรา้ งการ จดั เกบ็ ขอ้ มลู อยา่ งไร
การแบ่งระดับของข้อมูล
ประโยชน์ของการจดั แบง่ ขอ้ มลู ออกเป็นลาดบั ชนั้ ผใู้ ชง้ านไมจ่ าเป็นตอ้ งสนใจรายละเอยี ดของโครงสรา้ ง ในการจดั เกบ็ ขอ้ มลู วา่ จะตอ้ ง จดั เกบ็ ขอ้ มลู ในระดบั กายภาพอยา่ งไร เพยี งแตอ่ อกแบบฐานขอ้ มลู ในระดบั แนวความคดิ วา่ ขอ้ มลู มี ความสมั พนั ธก์ นั อยา่ งไร มี ขอ้ มลู อยา่ งไรบา้ ง DBMS จะเป็นตวั จดั การจดั เกบ็ ขอ้ มลู ในอุปกรณ์ เกบ็ ขอ้ มลู เอง
ประโยชน์ของการจดั แบ่งขอ้ มลู ออกเป็นลาดบั ชนั้ ผใู้ ชแ้ ตล่ ะคนสามารถนาขอ้ มลู ชดุ เดยี วกนั มาใชง้ าน ทแ่ี ตกต่างกนั และจดั รปู แบบการแสดง ผลต่าง ๆ ให้ แตกตา่ งกนั ตามความตอ้ งการของผใู้ ชแ้ ต่ละคนได้ โดยไมก่ ระทบกบั โครงสรา้ ง ของการจดั เกบ็ ขอ้ มลู จรงิ หรอื กระทบโครงสรา้ งในระดบั แนวความคดิ
ประโยชน์ของการจดั แบ่งขอ้ มลู ออกเป็นลาดบั ชนั้ มคี วามเป็นอสิ ระของขอ้ มลู กบั ตวั โปรแกรม คอื สามารถแกไ้ ข เปลย่ี นแปลงโครงสรา้ ง ของขอ้ มลู ได้ โดยไมต่ อ้ งทาการแกไ้ ข โปรแกรม เช่น การเพม่ิ ขอ้ มลู บางแอตทรบิ วิ ตเ์ ขา้ ไปใน ฐานขอ้ มลู ของพนกั งาน โดยไมต่ อ้ งทาการแกไ้ ขโปรแกรม หรอื แกไ้ ขความยาวของการเกบ็ ชอ่ื ของพนกั งาน ซง่ึ จะ ไม่ สง่ ผลกระทบใด ๆ เน่อื งจากมคี วามเป็นอสิ ระของขอ้ มลู ในแต่ ละระดบั นนั่ เอง
ความเป็ นอสิ ระของขอ้ มลู (Data Independence) ความเป็ นอสิ ระของขอ้ มูลคอื การทผี่ ูใ้ ชส้ ามารถ เปลยี่ นแปลงขอ้ มูลในระดบั แนวความคดิ หรอื ระดบั ภายในไดโ้ ดยไม่กระทบกบั โปรแกรมทเี่ รยี กใช ้ ผูใ้ ชย้ งั มองเห็นโครงสรา้ งขอ้ มูลในระดบั ภายนอกเหมอื นเดมิ และใชง้ านไดต้ ามปกติ โดยมี DBMS เป็ นตวั จดั การในการเชอื่ มตอ่ ขอ้ มูลในระดบั ภายนอกกบั ระดบั แนวความคดิ และ เชอื่ มขอ้ มูลระดบั แนวความคดิ กบั ระดบั ภายใน น่ันหมายถงึ การ เปลยี่ นแปลงขอ้ มูลในระดบั ทตี่ ่ากวา่ จะไม่กระทบกบั ขอ้ มูล ทอี่ ยูใ่ นระดบั ทสี่ งู กวา่
ความเป็นอสิ ระ ของขอ้ มลู 1. ความเป็นอสิ ระของขอ้ มูลเชงิ กายภาพ (Physical Data Independence) คอื การเปลย่ี นแปลงแกไ้ ขโครงสรา้ งของ ขอ้ มลู ในระดบั ภายใน จะไมม่ ผี ลกระทบต่อ โครงสรา้ ง ข้อมลู ในระดับแนวความคิด หรือระดับภายนอก เช่น ในระดับ ภายในมกี ารเปลย่ี นวธิ กี าร จดั เกบ็ ขอ้ มลู จากแบบเรียงลาดบั (sequential) ไปเป็ นแบบดัชนี (indexed) ในระดับ ภายใน ในระดับแนวคิดนั้นจะไม่มีผลกระทบต่อการ เปลย่ี นแปลงดงั กลา่ ว หรอื โปรแกรมประยุกต์ทเ่ี ขยี น ในระดบั ภายนอกกไ็ ม่จาเป็นต้องแก้ไขโปรแกรมตามวธิ กี ารจดั เกบ็ ท่ี เปลย่ี นแปลงไป
ความเป็นอสิ ระ ของขอ้ มลู 2. ความเป็นอสิ ระของข้อมูลเชิงตรรกะ (Logical Data Independence) คอื การเปลย่ี นแปลงแก้ไขโครงสรา้ งของ ข้อมูลในระดับแนวความคิด จะไม่มีผลกระทบต่อ โครงสรา้ งขอ้ มูลในระดบั ภายนอกทผ่ี ใู้ ชง้ านใชอ้ ยู่ เช่น ใน การเขยี นโปรแกรมเพ่อื แสดงข้อมูลของ พนักงาน ซ่งึ ใช้ ขอ้ มูลในระดบั ภายนอก หากในระดบั แนวความคดิ มกี าร เปล่ียนแปลง โดยการ เพ่ิมแอตทริบิวส์บางตวั เข้าไปใน รายละเอียดข้อมูลของพนักงาน จะไม่มีผลกระทบกับ โปรแกรมเดมิ ทท่ี างานอยู่
สคมี า (Schema) และ อนิ สแตนซ์ (Instance) สคมี า (Schema) ของระบบฐานขอ้ มลู คอื รายละเอยี ดโครงสรา้ งของฐานขอ้ มลู รวมถงึ ความ สมั พนั ธข์ องขอ้ มลู ในแต่ละเอน็ ทติ ้ี วา่ มคี วามสมั พนั ธก์ นั อยา่ งไร
สคมี า (Schema) 1) โครงร่างระดบั ภายใน (Internal Schema) เป็นโครงร่างทแ่ี สดงรายละเอยี ดถงึ ลกั ษณะการจดั เกบ็ ขอ้ มลู ในหน่วยความจาสารอง การอนิ เดก็ ซเ์ พอ่ื เพมิ่ ความเรว็ ในการเขา้ ถงึ ขอ้ มลู รายละเอยี ดทเ่ี กย่ี วขอ้ งกบั ทางดา้ นกายภาพ ในการจดั เกบ็ ขอ้ มลู
สคมี า (Schema) 2) โครงร่างแนวระดบั ความคดิ (Conceptual Schema) เป็นโครงร่างทแ่ี สดงรายละเอยี ดของฐานขอ้ มลู ทงั้ หมด ว่ามี ขอ้ มลู อะไรบา้ ง แต่ละขอ้ มลู มี คณุ สมบตั อิ ยา่ งไร และมี ความสมั พนั ธก์ บั ขอ้ มลู อน่ื ๆ อย่างไร เชน่ รายละเอยี ดของ เอนทติ ้ี โครงสรา้ ง ขอ้ มลู ความสมั พนั ธ์ และขอ้ กาหนดต่าง ๆ ของฐานขอ้ มลู
สคมี า (Schema) 3) โครงรา่ งระดบั ภายนอก (External Schema หรอื View) เป็นโครงรา่ งระดบั ภายนอกทแ่ี สดงถงึ มมุ มอง ของผใู้ ชแ้ ตล่ ะคน วา่ ตอ้ งการขอ้ มลู อยา่ งไรบา้ ง ซง่ึ มมุ มองของแต่ละคนอาจแตกต่าง หรอื เหมอื นกนั ได้
สคมี า (Schema)
อนิ สแตนซ์ (Instances) คอื คาทใ่ี ชเ้ รยี กขอ้ มลู จรงิ ๆ ทม่ี อี ยู่ในฐานขอ้ มลู เช่น มกี ารเพม่ิ ขอ้ มลู ใหมเ่ ขา้ ไปในฐานขอ้ มลู กจ็ ะ เรยี กวา่ เป็น อนิ สแตนซข์ องฐานขอ้ มลู (Database Instances)
การแปลงรปู (Mapping) การแปลงรปู (Mapping) คอื การถ่ายทอดมมุ มองจาก สถาปัตยกรรมในระดบั ทส่ี งู กวา่ ไปยงั ระดบั ทต่ี ่ากวา่ ซง่ึ แบง่ เป็น 2 ลกั ษณะคอื - การแปลงรปู ระหวา่ งระดบั ภายนอกกบั ระดบั แนวความคดิ - การแปลงรปู จากระดบั แนวความคดิ กบั ระดบั ภายใน การแปลงรปู ทงั้ 2 ลกั ษณะน้จี ะเป็นหน้าทข่ี อง DBMS ในการ จดั การแปลงรปู ให้ ทาใหม้ มุ มอง ในแตล่ ะระดบั นนั้ สามารถแยก ออกเป็นอสิ ระจากกนั ได้ โดยจะมี DBMS เป็นตวั จดั การเชอ่ื ม ความสมั พนั ธใ์ นแต่ละระดบั ให้
1. การแปลงรปู ระหว่างระดบั ภายนอกกบั ระดบั แนวความคดิ (External/Conceptual Mapping) การแปลงรปู ระหวา่ งระดบั ภายนอกกบั ระดบั แนวคดิ (external/conceptual mapping) เป็นการ กาหนดความสอดคลอ้ ง กนั ระหวา่ งมมุ มองในระดบั ภายนอกและระดบั แนวคดิ โดยถา่ ยทอด มมุ มอง ทม่ี ตี อ่ ขอ้ มลู ในระดบั ภายนอก ไปยงั ระดบั แนวความคดิ เพอ่ื ใหผ้ ใู้ ชฐ้ านขอ้ มลู สามารถมมี มุ มอง ของขอ้ มลู ในแตล่ ะระดบั ท่ี แตกตา่ งกนั ได้ โดยสามารถเปลย่ี นแปลงแกไ้ ขขอ้ มลู ในระดบั แนวความคดิ เชน่ มกี ารเปลย่ี นแปลงชนดิ ขอ้ มลู ของแอตทรบิ วิ ต์ เพม่ิ หรอื ลดแอตทรบิ วิ ต์ เป็นตน้ โดยไมก่ ระทบกบั โครงสรา้ งฐานขอ้ มลู (สคมี า) ในระดบั ภายนอก ซง่ึ ถอื วา่ ขอ้ มลู มคี วามเป็นอสิ ระของขอ้ มลู ในระดบั ตรรกะนนั่ เอง
2. การแปลงรปู ระหวา่ งระดบั แนวความคดิ กบั ระดบั ภายใน (Conceptual/Internal Mapping) เป็นการกาหนดความสอดคลอ้ งกนั ระหว่างมมุ มองในระดบั แนวคิดกบั ระดบั ภายใน โดยถ่าย ทอดมุมมองทม่ี ตี ่อขอ้ มลู ในระดบั แนวคิดไปยงั ระดบั ภายใน ทาใหส้ ามารถเปลย่ี นแปลงโครงสรา้ ง ของขอ้ มลู ในระดบั ภายใน เช่น เปล่ียนแปลงรูปแบบในการจดั เก็บ เปล่ียนโครงสร้าง ของเรคอรด์ หรอื ฟิลดท์ ใ่ี ชเ้ กบ็ ขอ้ มลู เป็นตน้ โดยไมส่ ่งผลกระทบกบั โครงสร้างข้อมูลในระดบั แนวความคิด ซ่งึ ถือว่า ข้อมูลมีความเป็น อสิ ระของขอ้ มลู ในระดบั กายภาพนนั่ เอง
ความเป็ นอสิ ระของขอ้ มูลในแตล่ ะดบั ว่าเกย่ี วขอ้ งกบั การแปลง โครงรา่ งในแตล่ ะระดบั อย่างไร
สรปุ สถาปัตยกรรมของฐานขอ้ มลู ไดแ้ บง่ ระดบั ของขอ้ มลู ไว้ 3 ระดบั คอื ระดบั ภายนอก (External Level) เป็นมมุ มองของผใู้ ชท้ ม่ี ตี อ่ ฐานขอ้ มลู หรอื ทเ่ี รยี กวา่ ววิ ระดบั แนวความคดิ (Conceptual Level) เป็นมมุ มองโครงรา่ งของ ฐานขอ้ มลู ในแนวความคดิ ซง่ึ ไมใ่ ชโ่ ครงรา่ งจรงิ ทถ่ี กู สรา้ งในอุปกรณ์เกบ็ ขอ้ มลู ระดบั ภายใน (Internal Level) เป็นมมุ มองทางกายภาพของการ จดั เกบ็ วา่ จะจดั เกบ็ ขอ้ มลู ในอุปกรณ์เกบ็ ขอ้ มลู อยา่ งไร การแบง่ ขอ้ มลู ออกเป็นระดบั แยกอสิ ระออกจากกนั จะทาใหเ้ กดิ ความเป็น อสิ ระของขอ้ มลู ซง่ึ ทาใหก้ ารใชง้ านฐานขอ้ มลู มคี วามยดื หยุ่นมากยง่ิ ขน้ึ
ภาษาฐานขอ้ มลู (Data Language) ปัจจุบนั มกี ารพฒั นา DBMS ขน้ึ มาหลายชนดิ เชน่ DB2 เป็น DBMS ท่ี ใชภ้ าษาการจดั การขอ้ มลู ทเ่ี รยี กวา่ SQL และ QBE ใชเ้ ฉพาะ โครงสรา้ งฐานขอ้ มลู แบบ เชงิ สมั พนั ธ์ หรอื FoxPro เป็น DBMS ทใ่ี ชภ้ าษาในการจดั การขอ้ มลู ทเ่ี ป็นของตนเอง 1. DDL : Data Definition Language (ภาษาสาหรบั นยิ ามขอ้ มลู ) 2. DML : Data Manipulation Language (ภาษาสาหรบั ดาเนินการกบั ขอ้ มลู ) 3. DCL : Data Control Language (ภาษาสาหรบั การควบคมุ ขอ้ มลู )
DDL : Data Definition Language เป็นภาษาทใ่ี ชส้ าหรบั การนิยามขอ้ มลู ไดแ้ ก่ รูปแบบ ลกั ษณะ คุณสมบตั ขิ องขอ้ มลู เป็นลกั ษณะการนิยามอย่ใู นรูปกลุ่มของ ตารางข้อมูลท่ีอธิบายข้อมูลในไฟล์ เรียกว่า (พจนานุกรม ขอ้ มลู Data Dictionary) จะเกบ็ ขอ้ มลู เกย่ี วกบั โครงสรา้ งของ ข้อมูลท่ีได้จากการออกแบบฐานข้อมูล เช่น ช่ือ Field โครงสรา้ งขอ้ มลู ของ Field ขนาดและความยาวของขอ้ มลู
DML : Data Manipulation Language เป็นภาษาสาหรบั การใชห้ รอื การจดั การขอ้ มลู เป็น ภาษาทใ่ี ชใ้ นการเรยี กดงึ ขอ้ มลู มาใชแ้ ละจะตอ้ งทาการ เขยี นคาสงั่ ขน้ึ มาใชง้ าน แลว้ นาคาสงั่ ไป Compile จงึ จะเป็นรหสั ทใ่ี ชง้ านได้
DCL : Data Control Language เป็นภาษาสาหรบั การใชใ้ นการควบคมุ ความถกู ตอ้ งของ ขอ้ มลู คาสงั่ ควบคุมภาวะ การใชข้ อ้ มลู พรอ้ มกนั จาก ผใู้ ชห้ ลายคนในเวลาเดยี วกนั และคาสงั่ ควบคุมความ ปลอดภยั ของขอ้ มลู การใหส้ ทิ ธอิ านาจแก่ผใู้ ชแ้ ตล่ ะคน ในการเรยี กดหู รอื ปรบั ปรงุ ขอ้ มลู
หน้าทข่ี องระบบจดั การฐานขอ้ มลู 1. กาหนดและเกบ็ โครงสรา้ งฐานขอ้ มลู 2. รบั และเกบ็ ขอ้ มลู ในฐานขอ้ มลู 3. ดแู ลรกั ษาขอ้ มลู 4. ตดิ ตอ่ กบั ตวั จดั การระบบแฟ้มขอ้ มลู 5. ควบคมุ ความบรู ณภาพของขอ้ มลู 6. ควบคมุ ความปลอดภยั 7. การสรา้ งระบบสารองและการกู้ 8. ควบคมุ ภาวการณ์ใชข้ อ้ มลู พรอ้ มกนั ของผใู้ ช้
ผบู้ รหิ ารฐานขอ้ มลู Database Administrator, DBA. ผู้บ ริห า ร ฐ า น ข้อ มู ล ( Database Administrator- DBA) คอื คนหรอื กลุ่มคนทท่ี าหน้าทด่ี แู ลและบรหิ ารการใชง้ านระบบ ฐานขอ้ มูล ซ่งึ หน้าทต่ี ่างๆ หมายรวมถงึ ประสานงานกับผใู้ ช้ กาหนดสทิ ธกิ ารใชง้ านขอ้ มลู ใหแ้ ก่ผใู้ ชแ้ ต่ละคน กาหนดพน้ื ท่ี ในการสรา้ งฐานขอ้ มลู ทาการสารองขอ้ มลู และฟ้ืนสภาพขอ้ มลู ดูแลความปลอดภัย และดูแลประสิทธิภาพของระบบ ฐานขอ้ มลู
ผบู้ รหิ ารฐานขอ้ มลู Database Administrator, DBA. ผบู้ รหิ ารฐานขอ้ มลู ควรจะเป็นบคุ ลากรทม่ี คี วามรดู้ า้ นเทคนคิ มคี วาม เขา้ ใจระบบทงั้ ในดา้ นฮารด์ แวรซ์ อฟตแ์ วรร์ ะบบปฏบิ ตั กิ าร ซอฟตแ์ วร์ ระบบบรหิ ารฐานขอ้ มลู ซอฟตแ์ วรส์ รา้ งแอปพลเิ คชนั่ อยา่ งลกึ ซง้ึ เพอ่ื สามารถแกป้ ัญหาทเ่ี กดิ ได้ ควรจะมมี นุษยส์ มั พนั ธด์ ี เน่ืองจากจะตอ้ ง ตดิ ตอ่ ประสานงานกบั บคุ ลากรอ่นื ๆ เชน่ รบั ทราบความตอ้ งการของผใู้ ช้ และควรจะมคี วามเป็นผนู้ าและเป็นนกั บรหิ าร เน่อื งจากจะตอ้ งกาหนด ลกั ษณะ คาอธบิ าย วธิ กี ารเขา้ ถงึ ขอ้ มลู และตอ้ งตดั สนิ ใจในการเปลย่ี น โครงสรา้ งหรอื วธิ กี ารซง่ึ อาจจะมผี ลกระทบต่อผใู้ ชบ้ างกลมุ่
Search
Read the Text Version
- 1 - 30
Pages: