ความหมายของสถาปัตยกรรม และแบบจำลองระบบฐานข้อมูล (Database Architecture And Database Model)
สถาปัตยกรรมฐานข้อมูล (Database Architecture) เป็นมุมมองแนวความคิด ที่ใช้ในการอธิบายถึงรูปแบบและโครงสร้าง ของข้อมูลในระบบฐานฐานข้อมูลโดยไม่ข้ึนอยู่กับโครงสร้างจริงของระบบฐานข้อมูล ผู้ใช้ฐานข้อมูลนั้นๆ จะมองขอ้มูลน้ีในแง่มุมหรือวิวที่ แตกต่างกันไปตามจุดประสงค์ของการประยุกต์ใช้งาน โดยไม่จำเป็นตอ้งสนใจว่ามีลกัษณะการจัดเก็บข้อมูลแท้จริง เช่นไร ระบบฐานขอ้มูลจะทา การ ซ่อนรายละเอียดไว้
สถาปัตยกรรม คือ รูปแบบการอธิบายภายใต้บริบทใดบริบทหนึ่งที่เห็นถึงความสัมพันธ์ขององค์ประกอบ กระบวนการต่างๆ เป็นการแสดงโครงสร้างทั้งบริบทของสิ่งนั้นๆ ในรูปแบบที่มนุษย์เข้าใจ เพื่อให้ง่ายต่อการศึกษา เปรียบเทียบ และเข้าใจถึงความสัมพันธ์ต่างๆ เพื่อนำไปใช้ประโยชน์ในด้านต่างๆ
สถาปัตยกรรมฐานข้อมูล คือ โครงสร้างและแบบจำลองการออกแบบระบบจัดการฐานข้อมูล (DBMS) กับแอปพลิเคชัน แบ่งออกเป็น 3 ระดับตามมาตรฐาน ANSI/SPARC เพื่อแยกอิสระระหว่างข้อมูลและโปรแกรม พร้อมทั้งกำหนดการเชื่อมต่อเครือข่าย
สถาปัตยกรรมระบบฐานข้อมูล คือ โครงสร้างและการจัดองค์ประกอบของระบบฐานข้อมูลที่อธิบายการทำงานร่วมกันระหว่างผู้ใช้งาน โปรแกรมประยุกต์ ระบบจัดการฐานข้อมูล (DBMS) และฐานข้อมูล เพื่อให้สามารถจัดเก็บ ค้นหา แก้ไข และบริหารข้อมูลได้อย่างมีประสิทธิภาพ
วัตถุประสงค์ของสถาปัตยกรรมฐานข้อมูล (Objective of Database Architecture)
- ลดความซ้ำซ้อนของข้อมูล
- เพิ่มความถูกต้องและความสอดคล้องของข้อมูล
- เพิ่มความปลอดภัยของข้อมูล
- รองรับผู้ใช้งานหลายคนพร้อมกัน
- เพิ่มประสิทธิภาพในการจัดการข้อมูล
สถาปัตยกรรมโครงสร้างฐานข้อมูล 3 ระดับ (3-Schema Architecture)
- ระดับภายนอก (External Level / View Level)
- ระดับแนวคิด (Conceptual Level)
- ระดับภายใน (Internal Level / Physical Level)
สถาปัตยกรรมระบบ (System Architecture)
- แบบศูนย์กลาง (Centralized Database)
- แบบกระจาย (Distributed Database)
- แบบไคลเอนต์-เซิร์ฟเวอร์ (Client-Server Architecture)
องค์ประกอบหลักของสถาปัตยกรรมระบบฐานข้อมูล (Component of Database Architecutre)
- ผู้ใช้งาน (Users) ได้แก่ ผู้ใช้งานทั่วไป ผู้ดูแลระบบ ผู้ใช้งานฐานข้อมูล ผู้บริหารฐานข้อมูล เป็นต้น
- โปรแกรมประยุกต์ (Application) ได้แก่ เว็บไซต์ แอปพลิเคชั่น โปรแกรมประยุกต์ อื่นๆ
- ระบบจัดการฐานข้อมูล (DBMS) ได้แก่ ระบบบริหารฐานข้อมูล Oracal, SQL Server, MySQL, Postgresql อื่นๆ
- ฐานข้อมูล (Database) ระดับการจัดเก็บข้อมูลภายใน ได้แก่ คอมพิวเตอร์ Server Cloude Distribultion การจัดเก็บข้อมูลแบบเครือข่ายแบบกระจาย Edge Computing หรืออุปกรณ์ฝั่งตัว IoT ต่างๆ
แบบจำลองระบบฐานข้อมูล (Database Model)
- Hierarchical Database Model ลักษณะเป็นโครงสร้างต้นไม้ (Tree)
- Network Database Model ลักษณะเป็นโครงข่าย (Network)
- Relational Database Model ลักษณะเป็นความสัมพันธ์ของสองอย่าง (Relational)
- Object-Oriented Database Model ลักษณะเป็นเชิงวัตถุ (Objects)
- Object-Relational Database Model ลักษณะเป็นความสัมพันธ์ของวัตถุ
- NoSQL Database Model ลักษณะเป็นแบบไม่มีโครงสร้างตายตัว หรือกิ่งโครงสร้าง (ปัจจุบันใช้มาก กับข้อมูลขนาดใหญ่ BigData)
1. Hierarchical Database Model (แบบจำลองฐานข้อมูลแบบลำดับชั้น)
1.1 ลักษณะสำคัญของ Hierarchical Database Model
- ข้อมูลจัดเรียงเป็นโครงสร้างต้นไม้ (Tree)
- Parent 1 รายการ สามารถมี Child ได้หลายรายการ
- Child แต่ละรายการมี Parent ได้เพียงรายการเดียว
- การค้นหาข้อมูลรวดเร็ว หากค้นหาตามลำดับชั้น
- เหมาะกับข้อมูลที่มีโครงสร้างแน่นอนและเป็นลำดับ
1.2 ข้อดี
- เข้าใจง่าย เพราะมีโครงสร้างเหมือนต้นไม้
- ค้นหาข้อมูลตามลำดับชั้นได้รวดเร็ว
- เหมาะกับข้อมูลที่มีความสัมพันธ์แบบ Parent–Child
- มีประสิทธิภาพสำหรับข้อมูลที่มีโครงสร้างตายตัว
1.3 ข้อเสีย
- Child มี Parent ได้เพียงหนึ่งเดียว ทำให้ข้อมูลซ้ำเมื่อข้อมูลต้องอยู่หลายตำแหน่ง
- การเปลี่ยนโครงสร้างทำได้ยาก
- ไม่เหมาะกับข้อมูลที่มีความสัมพันธ์ซับซ้อน เช่น Many-to-Many
- ความยืดหยุ่นต่ำเมื่อเทียบกับฐานข้อมูลเชิงสัมพันธ์ (Relational Datab
1.4 ตัวอย่างการใช้งานจริง
- โครงสร้างองค์กร (Organization Chart) เป็นแผนผังอธิบายโครงสร้างการทำงานหรือตำแหน่งในองค์กร
- ระบบแฟ้มข้อมูล (File System) การจัดเก็บเป็นระบบระเบียบอย่างเป็นหมวดหมู่ของระบบจัดการแฟ้มข้อมูล
- แผนผังเว็บไซต์ (Website Sitemap) โครงสร้างของเว็บไซต์ทั้งหมดตั้งแต่หน้าแรก และหน้าอื่นๆ เชื่อมโยงกัน
- หมวดหมู่สินค้า (Product Categories) การจัดหมวดหมู่สินค้า กลุ่มสินค้า ประเภทสินค้า
- สายการบังคับบัญชา (Chain of Command) โครงสร้างการบังคับบัญชาขององค์กรเพื่ดให้ทราบถึงระดับการทำงาน และการสั่งการ
2. Network Database Model (แบบจำลองฐานข้อมูลแบบโครงข่าย)
ลักษณะสำคัญของ Network Database Model
- ข้อมูลจัดเก็บเป็นโครงข่าย (Network)
- Record หนึ่งรายการสามารถเชื่อมโยงกับหลาย Record ได้
- Child สามารถมี Parent ได้มากกว่าหนึ่งรายการ
- รองรับความสัมพันธ์แบบ Many-to-Many (M:N)
- ค้นหาข้อมูลได้รวดเร็วผ่านการเชื่อมโยงระหว่างข้อมูล
3. Relational Database Model (แบบจำลองฐานข้อมูลเชิงสัมพันธ์)
ลักษณะสำคัญของ Relational Database Model (แบบจำลองฐานข้อมูลเชิงสัมพันธ์)
- จัดเก็บข้อมูลในรูปแบบ ตาราง (Table)
- แต่ละแถว (Row หรือ Record) แทนข้อมูล 1 รายการ
- แต่ละคอลัมน์ (Column หรือ Field) แทนคุณลักษณะของข้อมูล
- ใช้ Primary Key (PK) เพื่อระบุข้อมูลแต่ละรายการไม่ให้ซ้ำกัน
- ใช้ Foreign Key (FK) เพื่อเชื่อมโยงข้อมูลระหว่างตาราง
- ใช้ภาษา SQL (Structured Query Language) ในการเพิ่ม แก้ไข ลบ และค้นหาข้อมูล
ความสัมพันธ์
4. Object-Oriented Database Model (แบบจำลองฐานข้อมูลเชิงวัตถุ)
ลักษณะสำคัญ Object-Oriented Database Model (แบบจำลองฐานข้อมูลเชิงวัตถุ)
- จัดเก็บข้อมูลในรูปแบบ วัตถุ (Object)
- วัตถุถูกสร้างจาก คลาส (Class)
- เก็บทั้ง ข้อมูล (Attributes) และ พฤติกรรม (Methods) ไว้ในวัตถุเดียวกัน
- รองรับ Inheritance (การสืบทอดคุณสมบัติ)
- รองรับ Polymorphism (การใช้งานหลายรูปแบบ)
- รองรับ Encapsulation (การห่อหุ้มข้อมูล)
4. Object-Relational Database Model (แบบจำลองฐานข้อมูลเชิงวัตถุ–เชิงสัมพันธ์)
คุณลักษณะสำคัญของ Object-Relational Database Model (แบบจำลองฐานข้อมูลเชิงวัตถุ–เชิงสัมพันธ์)
- จัดเก็บข้อมูลหลักในรูปแบบ ตาราง (Table)
- รองรับ Object Types (ชนิดข้อมูลเชิงวัตถุ)
- เชื่อมโยงข้อมูลด้วย Primary Key (PK) และ Foreign Key (FK) เช่นเดียวกับ Relational Database
- รองรับ User-Defined Types (UDT) หรือชนิดข้อมูลที่ผู้ใช้กำหนดเอง
- สามารถจัดเก็บข้อมูลที่ซับซ้อน เช่น รูปภาพ เสียง วิดีโอ และข้อมูลเชิงพื้นที่ (Spatial Data)
- ใช้ภาษา SQL พร้อมส่วนขยายสำหรับการทำงานกับข้อมูลเชิงวัตถุ
ข้อดี
- รวมข้อดีของ Relational Database และ Object-Oriented Database
- รองรับข้อมูลที่มีโครงสร้างซับซ้อนได้ดี
- ยังสามารถใช้ SQL ในการจัดการข้อมูล
- ลดความแตกต่างระหว่างโปรแกรมเชิงวัตถุกับฐานข้อมูล
- เหมาะสำหรับระบบที่ต้องจัดการทั้งข้อมูลทั่วไปและข้อมูลเชิงวัตถุ
ข้อเสีย
- โครงสร้างซับซ้อนกว่า Relational Database
- ต้องใช้ความรู้ทั้งด้าน SQL และแนวคิดเชิงวัตถุ
- การออกแบบฐานข้อมูลอาจใช้เวลามากขึ้น
- บางคุณสมบัติอาจแตกต่างกันในแต่ละระบบฐานข้อมูล
NoSQL Database Model (แบบจำลองฐานข้อมูลแบบไม่มีโครงสร้างตายตัว)
คุณลักษณะสำคัญ NoSQL Database Model (แบบจำลองฐานข้อมูลแบบไม่มีโครงสร้างตายตัว)
- ไม่มี Schema (รูปแบบโครงสร้าง)ที่ตายตัว (Schema-less หรือ Flexible Schema)
- รองรับข้อมูลปริมาณมหาศาล (Big Data)
- ออกแบบมาเพื่อระบบ Cloud และ Distributed Database
- ขยายระบบแบบแนวนอน (Horizontal Scaling) ได้ง่าย
- รองรับข้อมูลหลายรูปแบบ เช่น JSON, XML และ BSON
- ประสิทธิภาพสูงสำหรับการอ่านและเขียนข้อมูลจำนวนมาก
ประเภทของ NoSQL Database
- Key-Value Database จัดเก็บข้อมูลในรูปแบบ คีย์ (Key) และ ค่า (Value)
- Document Database จัดเก็บข้อมูลในรูปแบบเอกสาร เช่น JSON หรือ BSON
- Column-Family Database จัดเก็บข้อมูลเป็นกลุ่มของคอลัมน์ เหมาะกับข้อมูลขนาดใหญ่และการวิเคราะห์ข้อมูล
- Graph Database จัดเก็บข้อมูลเป็น โหนด (Nodes) และ ความสัมพันธ์ (Edges)

ความคิดเห็น
แสดงความคิดเห็น