Video: So sánh CSDL NoSQL và SQL (Bài 1.5) 2025
Cơ sở dữ liệu NoSQL không giới hạn trong cách tiếp cận hàng và cột. Chúng được thiết kế để xử lý nhiều dữ liệu khác nhau, bao gồm dữ liệu có cơ cấu thay đổi theo thời gian và mối liên hệ của chúng chưa được biết đến.
Cơ sở dữ liệu NoSQL có bốn loại chính - một cho mỗi loại dữ liệu mà cơ sở dữ liệu dự kiến sẽ quản lý:
-
Cột: Mở rộng tới các cấu trúc bảng truyền thống. Hỗ trợ tập các cột thay đổi (các họ của cột) và được tối ưu hóa cho các hoạt động trên cột (như số, tổng và trung bình).
-
Giá trị khóa: Một cấu trúc rất đơn giản. Đặt khoá được đặt tên và giá trị của chúng, thường là một đoạn dữ liệu không được giải thích. Đôi khi giá trị đơn giản trên thực tế có thể là một tài liệu JSON hoặc binary.
-
Ba: Một thực thể duy nhất được thể hiện bởi ba phần tử:
-
Chủ đề mà bạn mô tả
-
Tên của tài sản hoặc mối quan hệ của nó với chủ thể khác
-
Giá trị - hoặc giá trị nội tại (chẳng hạn như một số nguyên) hoặc ID duy nhất của một chủ đề khác (nếu đó là mối quan hệ)
Ví dụ, Adam thích Cheese. Adam là đối tượng, thích là vị ngữ, và Cheese là đối tượng.
-
-
Tài liệu: XML, JSON, văn bản hoặc blob nhị phân. Bất kỳ cấu trúc treelike nào cũng có thể được đại diện như là một tài liệu XML hoặc JSON, bao gồm những thứ như một đơn đặt hàng bao gồm địa chỉ giao hàng, chi tiết thanh toán, và một danh sách các sản phẩm và số lượng.
Một số tài liệu Cơ sở dữ liệu NoSQL hỗ trợ lưu trữ một danh sách riêng biệt (hoặc tài liệu) của tài sản về tài liệu, quá.
Hầu hết các vấn đề về dữ liệu có thể được mô tả dưới dạng các cấu trúc dữ liệu trước đó. Thật vậy, gần như tất cả các chương trình máy tính bao giờ viết rơi vào các loại này. Vì vậy, điều quan trọng là phải hiểu cách bạn có thể lưu trữ, truy xuất và truy vấn dữ liệu đó tốt nhất.
Tin vui là bây giờ có một bộ cơ sở dữ liệu để quản lý đúng cách từng loại dữ liệu khác nhau, do đó bạn không phải chia dữ liệu vào một lược đồ quan hệ cố định (nghĩa là phân chia các cấu trúc dữ liệu phức tạp thành các cấu trúc bảng đơn giản) với các mối quan hệ, mà luôn luôn có vẻ như là điều sai trái để làm).
Ngoài các kiểu dữ liệu NoSQL trước đây, đây là hai phát triển khác đáng nói đến:
-
Công cụ tìm kiếm: Nếu bạn đang lưu trữ thông tin có cấu trúc biến đổi hoặc văn bản phong phú, bạn cần một cách phổ biến cấu trúc để tìm thông tin liên quan, mà công cụ tìm kiếm cung cấp.
-
Cơ sở dữ liệu Hybrid NoSQL: Các cơ sở dữ liệu này cung cấp một sự kết hợp của các tính năng cốt lõi của nhiều loại cơ sở dữ liệu NoSQL - chẳng hạn như khóa-giá trị, tài liệu và ba cửa hàng - tất cả trong cùng một sản phẩm.
Một số công cụ tìm kiếm và cơ sở dữ liệu lai áp dụng các chủ đề chung có trong các sản phẩm NoSQL - cụ thể là, cho phép các loại dữ liệu biến đổi và có thể mở rộng theo chiều ngang trên phần cứng hàng hóa. Các thiết kế nội bộ của công cụ tìm kiếm và các cơ sở dữ liệu NoSQL lai cũng tương tự và bổ sung.