Biết về Node.js và MongDB (phần 18)

Giới thiệu MongoDB, một CSDL tài liệu

MongoDB, tại thời điểm viết, là CSDL NoSQL thông dụng nhất.Không giống các CSDL Structured Query Language (SQL)
(như MySQL hay PostgreSQL), NoSQL có nghĩa rằng CSDL cụ thể không dùng SQL để truy vấn CSDL. Thay vào, các CSDL
NoSQL có các cách thức khác nhau để truy vấn CSDL và thường có một cấu trúc khác nhau lớn về dữ liệu được lưu
giữ và truy vấn như thế nào.
Các dạng chính sau của các CSDL NoSQL tồn tại:
+ Nơi lưu giữ key-value (ví dụ, Valkey/Redis)
+ Các CSDL hướng cột (ví dụ, Amazon Redshift)
+ Các CSDL dựa trên Graph (ví dụ, Neo4j)
+ Các CSDL dựa trên tài liệu (ví dụ, MongoDB)
CSDL
MongoDB là một CSDL dựa trên tài liệu, cái có nghĩa rằng mỗi entry trong CSDL được lưu giữ nhưu một tài liệu. Trong
MongoDB, các tài liệu này về cơ bản là các JSON objects (bên trong thì, chúng được lưu giữ như BSON – một hình thức
JSON nhị phân để tiết kiệm không gian và cải thiện hiệu suất, giữa những ưu điểm khác). Thay vào, các CSDL SQL lưu
giữ dữ liệu như các dòng trong bảng. Vậy thì, MongoDB cung cấp nhiều tính linh động. Các trường có thể thêm tự do
hay bỏ ra trong các tài liệu. Nhược điểm của một cấu trúc như vậy là rằng chúng ta không có một schema ổn định
cho các tài liệu. Tuy nhiên, cái này có thể được giải quyết bằng cách sử dụng các thư viện, như Mongoose, cái chúng
ta sẽ học trong các học phần sau.

Chia sẻ