NoSQL Là Gì? So sánh RDBMS và NoSQL

Nosql Là Gì? Bài viết này sẽ giới thiệu bạn về Nosql. Nếu bạn cần hỗ trợ, xin vui lòng liên hệ VinaHost qua Hotline 1900 6046 ext.3, email về support@vinahost.vn hoặc chat với VinaHost qua livechat https://livechat.vinahost.vn/chat.php

NoSQL Là Gì?

NoSQL là một thuật ngữ thường được sử dụng để mô tả bất kỳ hệ thống quản lý cơ sở dữ liệu nào sử dụng mô hình dữ liệu không quan hệ. Bảng sau liệt kê một số mô hình dữ liệu NoSQL và ví dụ một số cơ sở dữ liệu mã nguồn mở phổ biến để triển khai chúng.

Mô hình cơ sở dữ liệu hoạt động

Các DBMS mẫu

Key-value store

Redis, MemcacheDB

Columnar database

Cassandra, Apache HBase

Document store

MongoDB, Couchbase, Elasticsearch

Graph database

OrientDB, Neo4j

Các mô hình dữ liệu khác nhau này có thể cho phép tạo ra tính linh hoạt cao hơn nhiều so với cấu trúc cứng nhắc do cơ sở dữ liệu quan hệ (RDBMS) áp đặt. Do tính linh hoạt của chúng, cơ sở dữ liệu NoSQL nổi tiếng là lựa chọn tốt hơn để lưu trữ dữ liệu bán cấu trúc và phi cấu trúc, trái ngược với dữ liệu có cấu trúc chuẩn hóa theo yêu cầu của cơ sở dữ liệu quan hệ. Vì cơ sở dữ liệu NoSQL không đi kèm với một lược đồ xác định trước, nên thường tùy thuộc vào các nhà phát triển hoặc quản trị viên cơ sở dữ liệu để xác định cách dữ liệu nên được tổ chức và truy cập sao cho phù hợp nhất với ứng dụng của họ.

So sánh giữa RDBMS (Relational Database Management System) và NoSQL

NoSQL là gì

RDBMS

  • Dữ liệu có cấu trúc và tổ chức.
  • Sử dụng ngôn ngữ SQL để truy vấn dữ liệu.
  • Dữ liệu và các mối quan hệ của nó được lưu trữ trong các bảng riêng biệt.
  • Có tính chặt chẽ.

NoSQL

  • Không sử dụng SQL.
  • Không khai báo ngôn ngữ truy vấn dữ liệu.
  • Không định nghĩa schema.
  • Có 1 số nhóm dạng: Key-Value Storage, Column Store, Document Store, Graph Databases.
  • Dữ liệu phi cấu trúc và không thể đoán trước.
  • Ưu tiên cho hiệu năng cao, tính sẵn sàng cao và khả năng mở rộng.

Khi nào cần sử dụng NoSQL?

VinaHost đã giới thiệu đến bạn khái niệm “NoSQL Là Gì”, vậy khi nào thì cần sử dụng NoSQL?

  • Khi không cần hỗ trợ ACID.
  • Dữ liệu cần lược đồ linh hoạt.
  • Các ràng buộc và logic xác thực không bắt buộc phải được thực hiện trong cơ sở dữ liệu.
  • Ghi nhật ký dữ liệu từ các nguồn được phân phối.
  • Nó nên được sử dụng để lưu trữ dữ liệu tạm thời như giỏ mua hàng, danh sách mong muốn và dữ liệu phiên.
18/03/2021
Was this article helpful?