12/08/2018, 14:12

NoSQL - MongoDB

Chào các bạn Hôm nay mình sẽ nói về MongoDB, một cơ sở dữ liệu không có quan hệ. Trước hết hãy cùng đi đến khái niệm: cơ sở dữ liệu không quan hệ là gì? Cơ sở dữ liệu không quan hệ hiểu nôm na là chúng ta không cần dùng các phép JOIN bảng để lấy dữ liệu, mà thay vào đó chúng ta sẽ lấy dữ liệu ...

Chào các bạn

Hôm nay mình sẽ nói về MongoDB, một cơ sở dữ liệu không có quan hệ.

Trước hết hãy cùng đi đến khái niệm: cơ sở dữ liệu không quan hệ là gì? Cơ sở dữ liệu không quan hệ hiểu nôm na là chúng ta không cần dùng các phép JOIN bảng để lấy dữ liệu, mà thay vào đó chúng ta sẽ lấy dữ liệu thông qua các "key" của mỗi bảng ghi.

NoSQL là Non-Relational: tạm dịch là không có quan hệ. NoSQL là cơ sở dữ liệu không quan hệ, ràng buộc giữa các Collection (hay còn gọi là bảng trong cơ sở dữ liệu bình thường). Tức là giữa các Collection (Bảng) sẽ không có khóa chính, khóa ngoại như trong cơ sở dữ liệu bình thường.

Mình có một bảng so sánh để các bạn hiểu rõ hơn về CSDL không có quan hệ và CSDL có quan hệ như sau:

Bây giờ hãy đi qua MongoDB để xem nó hỗ trợ NoSQL như thế nào nhé:

NoSQL sẽ lưu dữ liệu thông qua key và value. Vd: 'username' => 'haiho'

Một đoạn dữ liệu MongoDB đơn giản như sau

{
    name: "Hai",
    email: "hoquochaibkdn@gmail.com",
    skill: ["PHP", "Java", "VB.net"],
}

Nhìn qua đoạn code trên, ta sẽ thấy rất dễ dàng trong việc thêm, sửa xóa nội dung của table, thậm chí chúng ta có thể thêm một row rất dễ dàng. Ngoài ra chúng ta không cần quan tâm đến kiểu dữ liệu của mỗi trường là như thế nào.

0