Relational Database là gì?

phanhao

Member
gemgem
Tham gia
18/03/2025
Bài viết
160
Được Like
0
Coin
0
Points
800
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:

  • 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
Một số ví dụ về các hệ quản trị cơ sở dữ liệu quan hệ (RDBMS) phổ biến hiện nay như MySQL, PostgreSQL, Oracle, Microsoft SQL Server

relational-database-la-gi.png


Ư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
Nhược điểm

  • 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.
phan-cung-may-chu-voi-hieu-nang-cao-va-mo-rong-linh-hoat.jpg


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.
 
Top Bottom