Tôi nên sử dụng MongoDB Atlas hay cục bộ?

Cơ sở dữ liệu SQL được coi là cơ sở dữ liệu quan hệ. Họ lưu trữ dữ liệu liên quan trong các bảng riêng biệt. Khi cần dữ liệu, nó được truy vấn từ nhiều bảng để nối dữ liệu lại với nhau

MongoDB là cơ sở dữ liệu tài liệu thường được gọi là cơ sở dữ liệu phi quan hệ. Điều này không có nghĩa là dữ liệu quan hệ không thể được lưu trữ trong cơ sở dữ liệu tài liệu. Nó có nghĩa là dữ liệu quan hệ được lưu trữ khác nhau. Một cách tốt hơn để gọi nó là cơ sở dữ liệu không phải dạng bảng

MongoDB lưu trữ dữ liệu trong các tài liệu linh hoạt. Thay vì có nhiều bảng, bạn chỉ cần giữ tất cả dữ liệu liên quan của mình cùng nhau. Điều này làm cho việc đọc dữ liệu của bạn rất nhanh

Bạn vẫn có thể có nhiều nhóm dữ liệu. Trong MongoDB, thay vì các bảng, chúng được gọi là các bộ sưu tập


Cơ sở dữ liệu cục bộ và đám mây

MongoDB có thể được cài đặt cục bộ, điều này sẽ cho phép bạn lưu trữ máy chủ MongoDB của riêng mình trên phần cứng của bạn. Điều này yêu cầu bạn quản lý máy chủ, nâng cấp và mọi hoạt động bảo trì khác

Bạn có thể tải xuống và sử dụng miễn phí Máy chủ cộng đồng mã nguồn mở MongoDB trên phần cứng của mình

Tuy nhiên, đối với khóa học này, chúng tôi sẽ sử dụng MongoDB Atlas, một nền tảng cơ sở dữ liệu đám mây. Điều này dễ dàng hơn nhiều so với việc lưu trữ cơ sở dữ liệu cục bộ của riêng bạn

Để có thể thử nghiệm với các ví dụ mã, bạn sẽ cần quyền truy cập vào cơ sở dữ liệu MongoDB

Đăng ký tài khoản MongoDB Atlas miễn phí để bắt đầu


Tạo một cụm

Sau khi bạn đã tạo tài khoản của mình, hãy thiết lập "Cụm chia sẻ" miễn phí, sau đó chọn khu vực và nhà cung cấp đám mây ưa thích của bạn

Theo mặc định, MongoDB Atlas bị khóa hoàn toàn và không có quyền truy cập từ bên ngoài

Bạn sẽ cần thiết lập người dùng và thêm địa chỉ IP của mình vào danh sách địa chỉ IP được phép

Trong "Truy cập cơ sở dữ liệu", tạo người dùng mới và theo dõi tên người dùng và mật khẩu

Tiếp theo, trong "Truy cập mạng", hãy thêm địa chỉ IP hiện tại của bạn để cho phép truy cập từ máy tính của bạn


Cài đặt MongoDB Shell (mongosh)

Có nhiều cách để kết nối với cơ sở dữ liệu MongoDB của bạn

Chúng ta sẽ bắt đầu bằng cách sử dụng MongoDB Shell, mongosh

Sử dụng hướng dẫn chính thức để cài đặt mongosh trên hệ điều hành của bạn

Để xác minh rằng nó đã được cài đặt đúng cách, hãy mở thiết bị đầu cuối của bạn và gõ

Bạn sẽ thấy rằng phiên bản mới nhất đã được cài đặt

Phiên bản được sử dụng trong hướng dẫn này là v1. 3. 1


Kết nối với cơ sở dữ liệu

Để kết nối với cơ sở dữ liệu của bạn, bạn sẽ cần chuỗi kết nối dành riêng cho cơ sở dữ liệu của mình

Trong bảng điều khiển MongoDB Atlas, bên dưới "Cơ sở dữ liệu", nhấp vào nút "Kết nối" cho Cụm của bạn

Tiếp theo, chọn "Kết nối với MongoDB Shell"

Sao chép chuỗi kết nối của bạn

Thí dụ

Chuỗi kết nối của bạn sẽ trông giống như thế này

mongosh "mongodb+srv. //cụm0. ex4ht. mongodb. net/myFirstDatabase" --apiVersion 1 --tên người dùng YOUR_USER_NAME

Tự mình thử »

Dán chuỗi kết nối của bạn vào thiết bị đầu cuối của bạn và nhấn enter

Bạn sẽ được nhắc nhập mật khẩu người dùng cơ sở dữ liệu mà bạn đã tạo trước đó

Bây giờ bạn đã được kết nối với cơ sở dữ liệu


Tiếp theo là gì?

Trong các phần sau, chúng tôi sẽ sử dụng 'mongosh' để tạo, đọc, cập nhật và xóa (CRUD) các mục trong cơ sở dữ liệu của bạn

Sau khi tìm hiểu những điều cơ bản, chúng tôi sẽ chuyển sang sử dụng MongoDB với các công nghệ phụ trợ khác như Node. js

Có thể bạn đang lưu trữ MongoDB của mình trên một nhà cung cấp dịch vụ đám mây đáng tin cậy, chẳng hạn như Atlas vì bạn thực sự muốn tập trung vào ý tưởng của mình và ủy thác tất cả các lĩnh vực quản lý chính tinh vi như kết nối mạng, lưu trữ, truy cập, v.v.

Tất cả ban đầu có vẻ tốt cho đến khi ý tưởng nhỏ của bạn bắt đầu trở thành một doanh nghiệp và chi phí bắt đầu tăng vọt. Ngay cả khi đó không phải là trường hợp, bài đăng này…

Đặc biệt nếu bạn dự định lưu trữ trong AWS hoặc Azure, thì điểm gọi đầu tiên của bạn phải là cơ sở dữ liệu PaaS (Nền tảng dưới dạng Dịch vụ) do các nhà cung cấp này cung cấp, vì bạn sẽ thấy mình cần ít nỗ lực hơn rất nhiều để hỗ trợ họ.

Câu hỏi của bạn liên quan đến 'Mối quan hệ hay không' rõ ràng là quan trọng và bạn cần xem xét cả cấu trúc dữ liệu bắt buộc cũng như các yêu cầu ACID của mô hình ứng dụng của bạn, cũng như các yêu cầu phi chức năng về khả năng mở rộng, khả năng phục hồi, liệu . - tuy nhiên, xin đừng rơi vào cái bẫy coi 'NoSQL' là một danh mục duy nhất. MongoDB, với giải pháp loại lưu trữ tài liệu, là một mô hình rất khác so với lưu trữ cặp khóa-giá trị (như AWS DynamoDB) hoặc lưu trữ cột (như AWS RedShift) hoặc đối với các mối quan hệ dữ liệu phức tạp hơn, Cửa hàng biểu đồ thực thể (như AWS Neptune)

Cũng quan trọng trong tất cả những điều này là có bao nhiêu mục bạn tin rằng bạn cần lập chỉ mục theo. Các kho lưu trữ RDBMS/SQL rất phù hợp để có bao nhiêu chỉ mục tùy thích, ngoài tốc độ ghi chậm lại, trong khi các cơ sở dữ liệu như Amazon DynamoDB cung cấp hiệu suất đọc/ghi cực nhanh, nhưng rất hạn chế về khả năng lập chỉ mục chính

Có vẻ như bạn có hầu hết kinh nghiệm với các công nghệ SQL/RDBMS, vì vậy, để có lộ trình tìm hiểu đơn giản nhất và nếu ứng dụng của bạn phù hợp, thì cá nhân tôi sẽ bắt đầu bằng cách xem AWS Aurora https. //aws. amazon. com/rds/aurora/

MongoDB Atlas hay MongoDB cái nào tốt hơn?

MongoDB được chấp thuận rộng rãi hơn , được đề cập trong 2189 ngăn xếp của công ty và 2225 ngăn xếp của nhà phát triển; .

Phiên bản MongoDB nào là tốt nhất?

Một đóng góp đáng kể cho việc này là việc phát hành MongoDB 5. 0 Tháng bảy 2021. MongoDB 5. 0 có nhiều tính năng mới giúp cơ sở dữ liệu mạnh mẽ và an toàn hơn

Một số lợi ích khi sử dụng MongoDB Atlas là gì?

MongoDB mang lại nhiều lợi thế so với cơ sở dữ liệu quan hệ truyền thống. .
Nền tảng dữ liệu dành cho nhà phát triển dựa trên đám mây đầy đủ
Lược đồ tài liệu linh hoạt
Truy cập dữ liệu gốc và được hỗ trợ rộng rãi
Thiết kế thân thiện với thay đổi
Truy vấn và phân tích mạnh mẽ
Dễ dàng mở rộng theo chiều ngang với sharding
Cài đặt đơn giản
hiệu quả về chi phí

MongoDB Atlas có đủ miễn phí không?

Các cụm Bậc miễn phí của MongoDB Atlas - còn được gọi là M0 Sandboxes - chỉ giới hạn ở 512 MB dung lượng lưu trữ nhưng thế là quá đủ cho một dự án thú cưng hoặc để tìm hiểu về MongoDB với . .