Cơ sở dữ liệu quan hệ là gì?
Cơ sở dữ liệu quan hệ làm nền tảng cho nhiều ứng dụng và phần mềm, nhưng nó là gì?
Cơ sở dữ liệu quan hệ là một kiểu cơ sở dữ liệu, tại đó, dữ liệu có liên quan đến các thông tin khác trên cơ sở dữ liệu. Chúng được sử dụng để lưu trữ và tổ chức dữ liệu, với các tham chiếu giữa hai hoặc nhiều nguồn. Ở mức độ cơ bản nhất, các cơ sở dữ liệu quan hệ bao gồm một tập hợp các bảng có thể được truy cập và xây dựng lại theo nhiều cách khác nhau mà không phải sắp xếp lại bảng cơ sở dữ liệu.
Sẽ không có gì ngạc nhiên khi các cơ sở dữ liệu quan hệ dựa vào mô hình dữ liệu quan hệ: dữ liệu được tổ chức thành nhiều bảng bao gồm các cột và các hàng. Tất cả các bảng đều chứa thông tin về mối quan hệ, chẳng hạn như một loại sản phẩm. Hàng – được gọi là bản ghi hoặc bộ dữ liệu – được xác định bằng khóa duy nhất. Ví dụ, mỗi hàng là một sản phẩm hoặc một người cụ thể và các cột liệt kê các thuộc tính liên quan đến sản phẩm hoặc người này, chẳng hạn như màu sắc, kích thước, vv cho cơ sở dữ liệu sản phẩm hoặc tên, địa chỉ, số điện thoại cho bảng dữ liệu về người.
Một ứng dụng phổ biến của cơ sở dữ liệu quan hệ là với một cơ sở dữ liệu đơn đặt hàng. Có thể có một bảng cho một khách hàng, một bảng cho một đơn đặt hàng và một bảng cho một sản phẩm. Tất cả chúng liên quan với nhau – ví dụ, khách hàng có liên quan đến đơn đặt hàng, đơn đặt hàng liên quan đến bảng sản phẩm mà họ đã mua.
Một số cơ sở dữ liệu nổi tiếng phổ biến nhất có sẵn hiện nay là Microsoft SQL Server, Oracle Database, MySQL và IBM DB2. Tuy nhiên, cũng có rất nhiều cơ sở dữ liệu dựa trên đám mây như Dịch vụ cơ sở dữ liệu quan hệ Amazon (RDS), Google Cloud SQL, IBM DB2, Cơ sở dữ liệu Microsoft Azure SQL và Dịch vụ đám mây cơ sở dữ liệu Oracle.
Các ràng buộc trong mô hình quan hệ
Các ràng buộc là các điều kiện phải có trên tất cả các trạng thái quan hệ hợp lệ. Có ba loại ràng buộc chính trong mô hình quan hệ: Ràng buộc khóa, ràng buộc miền và ràng buộc toàn vẹn tham chiếu.
Ràng buộc khóa là nơi phải có ít nhất một tập hợp con nhỏ nhất của các thuộc tính trong quan hệ để có thể xác định một bộ dữ liệu duy nhất; một thuộc tính khóa không thể có giá trị NULL. Các ràng buộc khóa còn được gọi là ràng buộc thực thể.
Ràng buộc tên miền giới hạn phạm vi giá trị tên miền của một thuộc tính. Chúng còn xác định tính cá nhân và liệu một thuộc tính có thể có một giá trị null hay không. Nó cũng có thể chỉ định một giá trị mặc định cho một thuộc tính khi không có giá trị nào được cung cấp.
Ràng buộc toàn vẹn tham chiếu nói rằng mối quan hệ bảng phải luôn luôn nhất quán. Nói cách khác, trường khóa ngoài phải phù hợp với khóa chính được khóa ngoại tham chiếu. Bất kỳ thay đổi trường khóa chính nào phải được áp dụng cho tất cả các khoá ngoại, hoặc không gì cả.
Lịch sử ngắn gọn về cơ sở dữ liệu quan hệ
Khái niệm cơ sở dữ liệu quan hệ lần đầu tiên được nhà khoa học máy tính người Anh E. F. Codd đề xuất vào năm 1970. Ông đã phát minh ra mô hình quan hệ để quản lý cơ sở dữ liệu và cơ sở lý thuyết cho cơ sở dữ liệu quan hệ cùng với hệ thống quản lý cơ sở dữ liệu quan hệ trong khi làm việc cho IBM.
Codd cũng đã định nghĩa 12 quy tắc cấu thành một cơ sở dữ liệu quan hệ cũng như mười hai luật về xử lý phân tích trực tuyến (một thuật ngữ do chính ông đặt ra).
Ưu điểm và nhược điểm của cơ sở dữ liệu quan hệ
Cơ sở dữ liệu quan hệ có một số ưu điểm so với cơ sở dữ liệu truyền thống.
Chúng có tính toàn vẹn dữ liệu, người dùng chỉ cần thay đổi dữ liệu tại một trong các bảng và sau đó nó sẽ tự động cập nhật.
Dư thừa dữ liệu – một cơ sở dữ liệu quan hệ sẽ đảm bảo không có thuộc tính nào được lặp lại. Nó cũng đảm bảo tính nhất quán, một thuộc tính không thể được lưu trữ ở định dạng khác trong một tập tin khác.
Tuy nhiên, điều quan trọng cần nhớ là cơ sở dữ liệu quan hệ có thể chậm và không thể mở rộng được.