Relational Database (cơ sở dữ liệu quan hệ) là một loại cơ sở dữ liệu dựa trên mô hình dữ liệu quan hệ, trong đó dữ liệu được tổ chức thành các bảng (table) gồm các hàng (row) và cột (column). Mỗi bảng đại diện cho một thực thể (entity) và các mối quan hệ giữa các thực thể được thể hiện thông qua các khóa (key). Ý tưởng về mô hình cơ sở dữ liệu quan hệ được đưa ra bởi nhà khoa học máy tính Edgar F. Codd vào năm 1970. Kể từ đó, Relational Database đã trở thành một chuẩn mực trong việc thiết kế và xây dựng các hệ thống cơ sở dữ liệu.Một số đặc điểm nổi bật của Relational Database bao gồm:
Ưu điểm và nhược điểm của Relational Database
Ưu điểm
Cấu trúc của Relational Database là gì?
Cấu trúc cơ bản của một Relational Database bao gồm các thành phần chính sau:
- Dữ liệu được tổ chức thành các bảng với cấu trúc rõ ràng.
- Sử dụng khóa chính (primary key) để xác định duy nhất mỗi bản ghi trong bảng.
- Sử dụng khóa ngoại (foreign key) để tạo mối liên kết giữa các bảng.
- Hỗ trợ các phép toán quan hệ như hợp (join), chọn (select), chèn (insert), xóa (delete), cập nhật (update).
- Sử dụng ngôn ngữ truy vấn có cấu trúc SQL (Structured Query Language) để tương tác với dữ liệu

Ưu điểm và nhược điểm của Relational Database
Ưu điểm
- Tính nhất quán cao: Relational Database đảm bảo tính nhất quán dữ liệu thông qua việc sử dụng các ràng buộc toàn vẹn (integrity constraint) và giao tác (transaction)
- Truy vấn linh hoạt: Với ngôn ngữ SQL, ta có thể thực hiện các truy vấn phức tạp để lấy ra dữ liệu mong muốn một cách dễ dàng
- Tính bảo mật: RDBMS cung cấp các cơ chế phân quyền và kiểm soát truy cập để đảm bảo an toàn dữ liệu.
- Khả năng mở rộng: Relational Database cho phép mở rộng theo chiều ngang (scale-out) bằng cách thêm các node mới vào cụm máy chủ.
- Hỗ trợ giao dịch ACID: Relational Database tuân thủ các tính chất ACID (Atomicity, Consistency, Isolation, Durability) trong xử lý giao dịch, đảm bảo tính toàn vẹn dữ liệu
- Hiệu năng: Với các bộ dữ liệu lớn và phức tạp, hiệu năng của Relational Database có thể bị giảm sút do chi phí cho việc duy trì các ràng buộc và mối quan hệ.
- Khó mở rộng theo chiều dọc: Việc mở rộng theo chiều dọc (scale-up) bằng cách nâng cấp phần cứng của một node duy nhất có thể gặp giới hạn.
- Không phù hợp với dữ liệu phi cấu trúc: Relational Database được thiết kế cho dữ liệu có cấu trúc, do đó việc lưu trữ và truy vấn dữ liệu phi cấu trúc như văn bản, hình ảnh, video sẽ kém hiệu quả hơn.

Cấu trúc của Relational Database là gì?
Cấu trúc cơ bản của một Relational Database bao gồm các thành phần chính sau:
- Bảng (Table): Đây là đơn vị lưu trữ cơ bản trong Relational Database, mỗi bảng gồm các hàng và cột. Mỗi bảng đại diện cho một thực thể hoặc đối tượng trong thế giới thực.
- Hàng (Row): Mỗi hàng trong bảng tương ứng với một bản ghi dữ liệu cụ thể. Mỗi hàng chứa các giá trị cho từng cột trong bảng.
- Cột (Column): Các cột định nghĩa cấu trúc của bảng, mỗi cột có một tên duy nhất và kiểu dữ liệu xác định. Các cột đại diện cho các thuộc tính của thực thể.
- Khóa chính (Primary Key): Là một hoặc nhiều cột dùng để xác định duy nhất mỗi hàng trong bảng. Khóa chính đảm bảo tính duy nhất và toàn vẹn của dữ liệu.
- Khóa ngoại (Foreign Key): Là một cột hoặc tập hợp các cột trong bảng tham chiếu đến khóa chính của bảng khác. Khóa ngoại thể hiện mối quan hệ giữa các bảng.
- Ràng buộc (Constraint): Là các quy tắc và điều kiện áp dụng cho dữ liệu trong bảng như ràng buộc khóa chính, khóa ngoại, ràng buộc duy nhất, ràng buộc kiểm tra, v.v.
- Chỉ mục (Index): Là cấu trúc dữ liệu bổ sung giúp tăng tốc việc truy vấn và tìm kiếm dữ liệu trong bảng.
Bài viết liên quan
Bài viết mới