Phân cụm MongoDB là gì?
Cụm trong MongoDB là một thuật ngữ được sử dụng để mô tả các cụm bị phân mảnh hoặc cụm bị phân mảnh. Mục đích của việc tạo một cụm về cơ bản là để mở rộng quy mô đọc và ghi trong một số nút. Và vì nó bị phân mảnh nên một nút đơn lẻ không phải xử lý tất cả dữ liệu và do đó, bạn có thể tách dữ liệu cùng với nhiều nút của phân đoạn để xử lý hiệu quả và nhanh hơn Show
Nếu bạn muốn tìm hiểu thêm về MongoDB, hãy xem hướng dẫn MongoDB và nếu bạn muốn được chứng nhận, hãy xem khóa học cấp chứng chỉ MongoDB từ Intellipaat. Xem video mới nhất về Kiến trúc MongoDB để giúp bạn bắt đầu với cơ sở dữ liệu NoSQL này MongoDB là một chương trình cơ sở dữ liệu định hướng tài liệu đa nền tảng nguồn có sẵn để lưu trữ khối lượng lớn. Được phân loại là chương trình cơ sở dữ liệu NoSQL, MongoDB sử dụng các tài liệu giống như JSON với các lược đồ tùy chọn Bạn có thể tạo cụm cơ sở dữ liệu MongoDB bất kỳ lúc nào từ menu Tạo bằng cách chọn Cơ sở dữ liệu. Thao tác này sẽ đưa bạn đến trang Tạo cơ sở dữ liệu Trong menu tạo, nhấp vào Cơ sở dữ liệu để mở trang tạo cụm cơ sở dữ liệu. Đây là nơi bạn chọn cấu hình cụm cơ sở dữ liệu của mình, như số lượng và kích thước của các nút cũng như vùng trung tâm dữ liệu Chọn một trung tâm dữ liệuTrong phần Chọn trung tâm dữ liệu, hãy chọn trung tâm dữ liệu cho cụm cơ sở dữ liệu của bạn Trang này liệt kê các trung tâm dữ liệu mà bạn hiện có nhiều tài nguyên nhất. Số lượng tài nguyên bạn có trong mỗi trung tâm dữ liệu được liệt kê ở bên phải dưới dạng tài nguyên X. Di chuột qua văn bản này để xem các tài nguyên cụ thể mà bạn có trong trung tâm dữ liệu đó Để có hiệu suất tốt nhất, hãy tạo cơ sở dữ liệu của bạn trong cùng một trung tâm dữ liệu với các tài nguyên DigitalOcean khác của bạn. Sau khi tạo, bạn không thể di chuyển cụm của mình sang trung tâm dữ liệu khác Mỗi khu vực có một hoặc nhiều trung tâm dữ liệu, mỗi trung tâm có một mạng VPC khác nhau. Bằng cách bao gồm các tài nguyên trong cùng một trung tâm dữ liệu, tất cả chúng đều có quyền truy cập vào cùng một giao diện mạng riêng, giúp giảm độ trễ và giữ cho lưu lượng truy cập giữa chúng không bị định tuyến qua internet công cộng Chọn một công cụ cơ sở dữ liệuTrong phần Chọn công cụ cơ sở dữ liệu, chọn MongoDB Chúng tôi hiện đang hỗ trợ phiên bản 4. 4 và 5. 0. Bạn không thể thay đổi phiên bản MongoDB sau khi tạo cụm Chọn cấu hình cụmTrong phần Chọn cấu hình cụm, hãy chọn loại máy cũng như số lượng và kích thước của các nút cơ sở dữ liệu. Mỗi tùy chọn liệt kê chi phí kết hợp hàng tháng, chi phí hàng giờ tương đương và thông số kỹ thuật của nút. Để có thêm tùy chọn, hãy nhấp vào Gói sản phẩm bổ sung Bạn cũng có thể thêm tối đa hai nút dự phòng vào cụm của mình. Các nút dự phòng đảm bảo rằng dữ liệu của bạn luôn khả dụng bằng cách cung cấp cho cụm của bạn tính sẵn sàng cao và chuyển đổi dự phòng Bạn có thể tăng số lượng hoặc kích thước của các nút cơ sở dữ liệu bất cứ lúc nào. Tuy nhiên, do rủi ro về tính toàn vẹn của dữ liệu, bạn không thể giảm kích thước các nút Hoàn thiện và tạoTrong phần cuối cùng, Hoàn thiện và Tạo, hãy chọn tên cho cụm, dự án để thêm vào và bất kỳ thẻ nào bạn muốn sử dụng Có ba tiêu đề phụ trong phần này
Sau khi tạo, bạn luôn có thể chỉnh sửa các thẻ của cơ sở dữ liệu hoặc chuyển nó sang một dự án khác; Khi bạn đã sẵn sàng, hãy nhấp vào nút Tạo cụm cơ sở dữ liệu Các cụm thường mất năm phút trở lên để cung cấp, nhưng bạn có thể hoàn thành các tác vụ cấu hình quan trọng như hạn chế các kết nối gửi đến trong khi chờ đợi MongoDB là một hệ thống quản lý cơ sở dữ liệu mở rộng phi quan hệ NoSQL được sử dụng bởi một số ứng dụng web để lưu trữ dữ liệu. Nó được phân loại là cơ sở dữ liệu toàn diện vì nó có thể mở rộng dễ dàng bằng cách thêm nhiều tài nguyên hơn vào máy chủ (chia tỷ lệ theo chiều dọc) hoặc thêm nhiều máy chủ (chia tỷ lệ theo chiều ngang) vào hệ thống phân tán MongoDB lưu trữ dữ liệu dưới dạng tài liệu giống như JSON với các lược đồ động. Mỗi cơ sở dữ liệu MongoDB bao gồm các bộ sưu tập các tài liệu khác nhau và mỗi bộ sưu tập và tài liệu có một ObjectID duy nhất do MongoDB cung cấp hoặc do lập trình viên tạo ra. Do đó, MongoDB loại bỏ các lược đồ và bảng cố định được sử dụng trong các hệ thống quản lý cơ sở dữ liệu quan hệ MongoDB có thể trùng lặp dữ liệu, nhưng nó mang lại tốc độ nhanh hơn, cho phép người dùng truy cập dữ liệu. Nó có sẵn trong các phiên bản cộng đồng (miễn phí sử dụng), doanh nghiệp (gói trả phí) và Atlas (đám mây). MongoDB Atlas là một dịch vụ dựa trên đám mây cho phép các nhà phát triển xây dựng các ứng dụng hiện đại. Nhà phát triển có thể triển khai cơ sở dữ liệu đám mây được quản lý trên nhiều nền tảng đám mây công cộng Cách cài đặt MongoDBBạn có thể cài đặt MongoDB trên Windows, Mac OS hoặc Ubuntu. Vì MongoDB sử dụng rất nhiều RAM, tốt hơn hết là bạn nên chạy MongoDB trên Ubuntu hoặc Mac OS. Hệ điều hành Windows có thể cạnh tranh với RAM và do đó làm chậm ứng dụng Trong hướng dẫn này, chúng ta sẽ xem cách cài đặt MongoDB trên Ubuntu 20. 04 Cài đặt MongoDB trên Ubuntu 20. 04Để cài đặt MongoDB trên Ubuntu 20. 04, bạn phải có Ubuntu 20. 04 với người dùng quản trị không phải root và tường lửa được định cấu hình UFW. Bạn có thể nhanh chóng lấy MongoDB từ kho gói chính thức của Ubuntu. Tuy nhiên, kho lưu trữ này có thể chứa phiên bản lỗi thời. Để đảm bảo bạn nhận được phiên bản MongoDB mới nhất, bạn phải bao gồm kho lưu trữ gói chuyên dụng của MongoDB trong các nguồn APT của mình. Điều này sẽ cho phép bạn cài đặt MongoDB-org, một gói hướng đến phiên bản MongoDB mới nhất MongoDB 5. 0 là phiên bản mới nhất, với các tính năng mới thú vị như bộ sưu tập chuỗi thời gian, toán tử tổng hợp mới như $dateAdd, $dateSubtract và $getField, v.v. Để bắt đầu, chúng tôi sẽ bắt đầu bằng cách cập nhật chỉ mục gói APT và cài đặt các phụ thuộc bằng dòng lệnh sau
Tải xuống và nhập khóa GPG công khai cho bản phát hành MongoDB mới nhất bằng lệnh sau
Ngoài ra, sử dụng
Lệnh này sẽ trả về OK nếu khóa được thêm thành công Tiếp theo, bạn phải thêm kho lưu trữ MongoDB thông qua đoạn mã sau
Sau khi chạy lệnh này, bước tiếp theo là cài đặt các gói cập nhật MongoDB
Nhấn phím 'Y' và 'ENTER' để chấp nhận lời nhắc cài đặt. Thao tác này sẽ cài đặt MongoDB trên hệ thống của bạn. Tuy nhiên, nó vẫn chưa sẵn sàng để sử dụng. Bạn phải khởi động Mongo thông qua lệnh sau
Kiểm tra trạng thái MongoDB để đảm bảo rằng nó đang chạy
Đầu ra sẽ giống như thế này Nguồn. https. //www. fosslinux. com/50185/install-mongodb-ubuntu. htmSau đó, kích hoạt MongoDb để khởi động khi khởi động thông qua lệnh sau ________số 8Khi hoàn tất, bạn có thể định cấu hình bảo mật, cho phép truy cập từ xa, tạo Người dùng và Cơ sở dữ liệu, gán vai trò quản trị viên cho người dùng, v.v. Bạn cũng có thể điều chỉnh MongoDB để đảm bảo hiệu suất tối ưu mọi lúc Bây giờ bạn đã cài đặt MongoDB, chúng ta sẽ xem cách định cấu hình cụm MongoDB Cụm MongoDB là gì?Một cụm đề cập đến một tập hợp các máy chủ MongoDB hoạt động cùng nhau. Một cụm MongoDB có thể đề cập đến một “bộ bản sao” hoặc một “cụm phân đoạn. ” Một số máy chủ mang một bản sao của cùng một dữ liệu trong một bộ bản sao. Một bộ bản sao thường bao gồm ba nút. Một nút chính nhận tất cả các thao tác đọc và ghi từ ứng dụng khách và hai nút phụ bảo vệ khỏi lỗi Nếu nút chính bị lỗi, MongoDB sẽ tự động chỉ định một nút phụ để thay thế nó, trở thành nút chính mới chịu trách nhiệm cho các thao tác đọc và ghi. Các bộ bản sao đảm bảo tính sẵn sàng cao vì luôn có sẵn cùng một bộ dữ liệu Một số máy chủ trong cụm phân đoạn mang một đoạn của toàn bộ dữ liệu, cho phép hoạt động hiệu quả hơn và lưu trữ dữ liệu lớn hơn. Về cơ bản, một cụm phân đoạn là một tập hợp các bộ bản sao; . Khi ứng dụng khách thực hiện thao tác đọc/ghi, yêu cầu sẽ chuyển qua bộ định tuyến xác thực phân đoạn nào chứa dữ liệu được yêu cầu. Yêu cầu sau đó được gửi đến phân đoạn Theo truyền thống, các cụm MongoDB được gọi là cụm phân mảnh nhưng hiện được sử dụng cho cả hai cấu hình. Kiến trúc cụm Sharded cho phép khả năng mở rộng theo chiều ngang dễ dàng Thiết lập cụm MongoDBỞ đây, chúng ta sẽ xem xét việc thiết lập cụm MongoDB được phân đoạn. Kiến trúc sharded trông như thế này Nguồn. https. //dba. giao dịch cổ phiếu. com/câu hỏi/82551/data-distribution-in-mongodb-with-shards-and-replica-setsKiến trúc cụm Shard bao gồm ba thành phần
Thiết lập cụm MongoDB yêu cầu bạn chạy từng thành phần này dưới dạng các quy trình riêng biệt Quy trình thiết lập cụmBạn sẽ cần một hệ thống khác để thiết lập từng thành phần trong môi trường sản xuất. Tuy nhiên, chúng tôi sẽ đặt tất cả các quy trình trên một máy chủ cho mục đích này Bước 1. Tạo các thư mục để đại diện cho các phân đoạn và máy chủ cấu hìnhBước đầu tiên là tạo các thư mục khác nhau. Đầu tiên, tạo ba thư mục cấu hình cho các máy chủ cấu hình, sau đó tạo ba thư mục phân đoạn cho các bộ bản sao riêng lẻ. Mã sẽ trông giống như thế này
(mỗi chữ cái đại diện cho một mảnh khác nhau) Khi bạn nhập cái này, bạn sẽ nhận được một con trỏ truy vấn; Bước 2. Khởi động máy chủ cấu hìnhSử dụng lệnh sau 0Vì chúng tôi chạy mọi quy trình trên cùng một máy chủ, điều quan trọng là phải chỉ định một cổng khác cho các phiên bản MongoDB. Sau khi thiết lập máy chủ cấu hình đầu tiên, bạn sẽ nhập mã tương tự cho các máy chủ cấu hình còn lại, thay đổi cổng, dbpath và logpath trong từng trường hợp Sau cùng, các máy chủ cấu hình đã bắt đầu, hãy đăng nhập vào máy chủ đầu tiên trên cổng 26050 1Sau đó bắt đầu sao chép cho máy chủ bằng cách sử dụng 2Sau đó thêm các máy chủ cấu hình còn lại trong bản sao bằng cách sử dụng 3Chúng tôi đã sử dụng các địa chỉ cổng liên tiếp cho các máy chủ khác nhau. Bạn có thể kiểm tra trạng thái của các máy chủ cấu hình của mình trong vỏ mongo bằng cách sử dụng; 4Bạn sẽ thấy tất cả ba máy chủ được thêm id, tên, sức khỏe, trạng thái, v.v. Sau đó, thoát khỏi cấu hình nghiêm trọng bằng cách sử dụng 5Bước 3. Bắt đầu phân đoạnBắt đầu phiên bản phân đoạn đầu tiên bằng lệnh sau 6Sau đó, bắt đầu các phiên bản khác trong bản sao được đặt trên một cổng khác với logpath và dbpath phù hợp. Lặp lại quá trình tương tự cho các mảnh khác Khi tất cả các phiên bản được thiết lập và chạy, hãy khởi động phân đoạn và bắt đầu sao chép phân đoạn Đầu tiên, đăng nhập vào phiên bản a0, sau đó bắt đầu sao chép 7Sau đó thêm hai máy chủ khác 8Lặp lại quy trình tương tự cho các phiên bản b0, c0 và d0 và thêm các bộ bản sao Bước 4. Bắt đầu phiên bản MongosBước tiếp theo là bắt đầu mongos. Mongo đóng vai trò là giao diện giữa máy khách và môi trường được phân đoạn. Bắt đầu phiên bản mongos thông qua dòng sau 9Chúng tôi có thể chạy nhiều phiên bản mongos để tăng tính khả dụng của mongos cho khách hàng. Điều này sẽ được thiết lập bằng một lệnh tương tự nhưng thay đổi logpath và cổng 0Tiếp theo, đăng nhập vào phiên bản mongos 1Từ phiên bản mongos này, bạn có thể thêm các phiên bản bộ bản sao khác nhau (a, b, c, d) dưới dạng phân đoạn bằng cách sử dụng lệnh 2Sau đó, thêm bộ bản sao bằng cách sử dụng cùng một mã, nhưng gán cổng chính cho bộ b, sau đó là c và d Để kiểm tra trạng thái của môi trường sharded của bạn, bạn có thể chạy lệnh 3Nó sẽ hiển thị cho bạn các phân đoạn a, b, c và d khác nhau và các bộ bản sao trong mỗi Thêm cơ sở dữ liệu và bộ sưu tập vào phân đoạn 4Hiển thị cho bạn các cơ sở dữ liệu có sẵn, bao gồm cơ sở dữ liệu cấu hình, mydb và quản trị viên. Kết quả có thể trông như thế này quản trị viên 0. 000GB cấu hình 0. 002GB mydb 0. 000GB Để phân mảnh bất kỳ cơ sở dữ liệu nào trong số này. Ví dụ, để phân đoạn cơ sở dữ liệu mydb, bạn nhập mã 5Lệnh này sẽ thêm quản trị viên vào cơ sở dữ liệu được phân đoạn và bạn có thể thấy điều đó khi nhập sh. tình trạng() Sau khi bạn đã phân mảnh cơ sở dữ liệu, bạn có thể kích hoạt phân mảnh cho các bộ sưu tập. Tham số thứ hai (_id. 1) xác định khóa phân đoạn bạn muốn giữ cho bộ sưu tập mongos> hiển thị bộ sưu tập sản phẩm bán hàng mongo> sh. shardCollection(“mydb. đã bán”), (_id. 1) Khi bạn chạy sh. trạng thái, bạn sẽ thấy một cái gì đó như thế này mydb. bán hàng chìa khóa mảnh. {"_Tôi". 1} độc nhất. sai thăng bằng. thật miếng, mảnh nhỏ. d1 { "_Tôi". { “$minkey”. 1}} –>> { “_id”. { “$minkey”. 1}} bật. d Dấu thời gian(1, 0) Các khối giá trị hiển thị phân vùng dữ liệu thành các khối. Từ phần trên, chúng tôi thấy rằng dữ liệu chỉ nằm trên phân đoạn d vì nó là tối thiểu. Tuy nhiên, khi dữ liệu tăng lên, nó sẽ được chia thành nhiều phần và được đặt vào các phân đoạn khác nhau Phần kết luậnỞ đây, chúng tôi đã xem xét cách thiết lập cụm MongoDB trên một máy chủ. Trong một cụm sản xuất, mỗi phân đoạn sẽ nằm trên một máy khác nhau và máy chủ cấu hình và mongos cũng sẽ nằm trên các máy khác Để tìm hiểu thêm về lưu trữ cụm máy chủ và lưu trữ cơ sở dữ liệu, hãy liên hệ với chúng tôi tại ServerMania và chúng tôi sẽ giúp bạn chọn các hệ thống phù hợp cho ứng dụng của mình Làm cách nào để sử dụng cụm trong MongoDB?Đăng nhập vào tài khoản MongoDB Atlas của bạn tại https. //đám mây. mongodb. com. Bấm vào nút “Tạo”. Chọn loại cụm của bạn (chuyên dụng, không có máy chủ, dùng chung). Chọn nhà cung cấp đám mây và khu vực của bạn
Cách MongoDB theo dõi dữ liệu cụm?Môngos theo dõi dữ liệu trên phân đoạn đó bằng cách lưu siêu dữ liệu từ máy chủ cấu hình vào bộ đệm ẩn . Người Mông Cổ sử dụng siêu dữ liệu để định tuyến các hoạt động từ các ứng dụng và máy khách đến các phiên bản mongodb. Một mongos không có trạng thái liên tục và tiêu tốn tài nguyên hệ thống tối thiểu.
Chúng ta có thể tạo bao nhiêu cụm trong MongoDB?Bạn chỉ có thể triển khai một cụm miễn phí cho mỗi dự án Atlas.
Cụm NoSQL là gì?Tạo cụm MongoDB nhiều nút. MongoDB là một cơ sở dữ liệu tài liệu NoSQL có kiến trúc chủ-tớ . Khi tạo một cụm và nhân rộng nó, bạn phải tạo và quản lý một cụm được phân đoạn và một bộ sao chép, đây là tên gọi khác của cụm sao chép. |