CSDL Quan hệ (Relational Database)
Định nghĩa
Cơ sở dữ liệu Quan hệ (Relational Database - RDB) là loại hình cơ sở dữ liệu phổ biến nhất, dựa trên mô hình quan hệ (relational model) do E.F. Codd đề xuất.
Trong mô hình này, dữ liệu được tổ chức thành các bảng (tables) gồm các hàng (rows) và cột (columns). Các bảng này có thể được liên kết (related) với nhau thông qua các khóa (keys).
Đặc điểm Cốt lõi
- Bảng (Table): Dữ liệu được lưu trữ trong các bảng hai chiều.
- Cột (Column / Attribute): Đại diện cho một thuộc tính (ví dụ: Tên khách hàng, Mã sản phẩm).
- Hàng (Row / Record / Tuple): Đại diện cho một bản ghi cụ thể (ví dụ: thông tin của một khách hàng).
- Khóa chính (Primary Key): Một (hoặc nhiều) cột dùng để định danh duy nhất cho mỗi hàng trong bảng (ví dụ: Mã sinh viên, Số CMND).
- Khóa ngoại (Foreign Key): Một cột trong bảng này, dùng để tham chiếu (link) đến khóa chính của một bảng khác, tạo ra mối quan hệ giữa hai bảng.
- SQL: Ngôn ngữ SQL được sử dụng để truy vấn và thao tác dữ liệu.
- ACID: Các giao dịch trong RDB thường tuân thủ thuộc tính ACID (Atomicity, Consistency, Isolation, Durability) để đảm bảo tính toàn vẹn dữ liệu.
Ưu điểm
- Tính toàn vẹn Dữ liệu (Integrity): Mô hình quan hệ và các ràng buộc (khóa chính/ngoại) giúp đảm bảo dữ liệu chính xác và nhất quán.
- Linh hoạt (Flexibility): Dễ dàng truy vấn và kết hợp dữ liệu từ nhiều bảng bằng SQL.
- Tính trưởng thành (Maturity): Công nghệ rất phổ biến, ổn định, có nhiều công cụ hỗ trợ.
Nhược điểm
- Khả năng Mở rộng (Scalability): Khó mở rộng theo chiều ngang (horizontal scaling) so với NoSQL.
- Xử lý Dữ liệu Phi cấu trúc: Không phù hợp để lưu trữ dữ liệu phi cấu trúc (văn bản, hình ảnh).