Trong hướng dẫn này, chúng tôi sẽ thảo luận về các khía cạnh khác nhau của giám sát hiệu suất MongoDB. MongoDB cung cấp một bộ công cụ và tiện ích dòng lệnh để giám sát các phiên bản MongoDB. Nhưng trước tiên, bạn cần biết những số liệu nào cần được theo dõi. Khi bạn hiểu các chỉ số hiệu suất, bạn có thể tạo quy trình công việc và quy trình để kiểm tra sức khỏe và hiệu suất của cụm MongoDB của bạn Show
MongoDB là gì?MongoDB là cơ sở dữ liệu NoSQL hướng tài liệu phổ biến phù hợp cho cả dữ liệu có cấu trúc và phi cấu trúc. Cơ sở dữ liệu NoSQL cung cấp tính linh hoạt hơn RDBMS để lưu trữ dữ liệu phi cấu trúc và bán cấu trúc. MongoDB là một trong những cơ sở dữ liệu NoSQL phổ biến nhất, với lý do chính đáng Nó hỗ trợ ngôn ngữ truy vấn phong phú, tổng hợp dữ liệu và khả năng lọc. Các mô hình dữ liệu được nhúng trong MongoDB giảm mức sử dụng I/O của đĩa dẫn đến hiệu suất cao. Nó cũng hỗ trợ các cụm có tối thiểu ba nút để có tính sẵn sàng cao và cơ sở dữ liệu có thể được chia tỷ lệ theo chiều ngang trên hàng trăm nút Dựa trên trường hợp sử dụng của bạn, bạn có thể chọn bất kỳ một trong ba dịch vụ của MongoDB
MongoDB có thể chạy trên hầu hết các nền tảng, bao gồm Windows, macOS và các phiên bản khác nhau của Linux. Bạn có thể triển khai MongoDB như
Tại sao phải theo dõi MongoDB?Lỗi cơ sở dữ liệu và độ trễ có thể ảnh hưởng xấu đến trải nghiệm người dùng. Quản trị viên cơ sở dữ liệu cần đảm bảo rằng cơ sở dữ liệu đang chạy tốt với tài nguyên cơ sở hạ tầng đầy đủ. MongoDB cung cấp nhiều công cụ và tiện ích tích hợp để truy cập thông tin về tình trạng của phiên bản. Bạn cần theo dõi các phiên bản MongoDB vì những lý do sau
Các chỉ số hiệu suất MongoDB quan trọng cần theo dõiThao tác cơ sở dữ liệuTỷ lệ hoạt động cho biết tốc độ và mức độ hoạt động của cơ sở dữ liệu. Giám sát hoạt động đọc và ghi của bạn có thể giúp bạn lập kế hoạch dung lượng, tránh bão hòa tài nguyên và phát hiện tắc nghẽn hiệu suất. Bạn có thể sử dụng tiện ích MongoDB 6 để truy cập các số liệu hoạt động. Các loại hoạt động cơ sở dữ liệu MongoDB sau đây thường được giám sát
Bạn có thể tổng hợp các chỉ số 8 và 1 để có được tổng số thao tác đọc trên cơ sở dữ liệu. Các thao tác ghi bao gồm 1, 9 và 0Tất cả các số liệu này được theo dõi ở cấp độ phiên bản. Đối với cụm MongoDB, bạn cần theo dõi tốc độ hoạt động của cơ sở dữ liệu cho các nút chính cũng như phụ của mình Thời gian thực hiện thao tácHiệu suất truy vấn có thể được theo dõi bằng cách theo dõi độ trễ trong quá trình thực thi thao tác. Thời gian thao tác đọc và ghi có thể cho biết liệu các truy vấn có cần được tối ưu hóa hơn nữa hay không. Thông thường, thời gian thao tác đọc trên 7 được coi là chậm và có phạm vi để tối ưu hóa truy vấn. Bạn cũng có thể làm việc để tối ưu hóa các truy vấn hoạt động đắt tiềnKhách hàng hoặc kết nốiSố lượng máy khách đang hoạt động thực hiện các thao tác đọc và ghi là một số liệu quan trọng khác để theo dõi. Bạn có thể lấy số lượng máy khách đang hoạt động bằng cách sử dụng lệnh 8 từ trình bao MongoDB. Lệnh 8 cung cấp tài liệu 0 báo cáo về kết nối máy kháchSố lượng khách hàng đang hoạt động được báo cáo ở cấp độ khóa toàn cầu. MongoDB cho phép các hoạt động khóa ở cấp độ toàn cầu, cơ sở dữ liệu hoặc bộ sưu tập để đảm bảo tính nhất quán. Các trường sau trong đầu ra cung cấp thông tin về số lượng kết nối
Sử dụng tài nguyênHoạt động cơ sở dữ liệu tiêu thụ bộ nhớ và lưu trữ dữ liệu cần không gian. Ngay cả khi bạn đang chạy cơ sở dữ liệu của mình trên đám mây, bạn cần tối ưu hóa cơ sở dữ liệu của mình để sử dụng tài nguyên vì tài nguyên tốn tiền. Sau đây là một số số liệu chính mà bạn nên theo dõi về việc sử dụng tài nguyên MongoDB Mức sử dụng đĩa Mức sử dụng bộ nhớ Mức sử dụng CPU hệ thống hàng đợiMongoDB duy trì một hàng đợi cho các thao tác đọc và ghi đang chờ khóa. Độ dài hàng đợi cao trong MongoDB có thể cho biết hoạt động truy vấn không được tối ưu hóa và có thể làm chậm cơ sở dữ liệu. Lệnh 6 cung cấp bản cập nhật kéo dài một giây đối với các thao tác đọc và ghi đang chờ khóaReplication và Oplog MetricsCụm bản sao MongoDB thường bao gồm ba nút với một nút chính và hai nút phụ. Trong các cụm MongoDB, luồng dữ liệu là một chiều. Chỉ có một nút chính trên mỗi cụm gửi dữ liệu đến các nút phụ. Một cụm có thể là một bộ bản sao hoặc một cụm phân đoạn Bộ bản sao Cụm phân đoạn Theo mặc định, MongoDB Atlas cung cấp một cụm có bộ bản sao. Sau đây là các số liệu hiệu suất chính để sao chép Độ trễ sao chép Cửa sổ Oplog Nếu một nút phụ chậm hơn cửa sổ Oplog, thì nút đó sẽ không thể sao chép dữ liệu vì dữ liệu bị ghi đè và sẽ yêu cầu đồng bộ lại toàn bộ. Cửa sổ Oplog không phải là một giá trị cố định và tiếp tục dao động dựa trên các hoạt động của cơ sở dữ liệu. Và đó là lý do tại sao bạn cần theo dõi nó và tốt nhất là đặt cả cảnh báo Người phản đối để sao chép Dung lượng sao chép MongoDB trong các công cụ & tiện ích được xây dựng để theo dõiMongoDB cung cấp một số tiện ích và công cụ để theo dõi tình trạng của cá thể và cụm. Ngoài thông tin về tình trạng của phiên bản, bạn cũng có thể theo dõi các thông số vận hành để nắm được hoạt động của cơ sở dữ liệu. Một khung giám sát mạnh mẽ có thể giúp bạn chẩn đoán trước các lỗi và thực hiện các bước để tránh chúng MongoDB có nhiều loại khác nhau và đôi khi nó có thể gây nhầm lẫn nên sử dụng công cụ hoặc tiện ích nào để theo dõi. Đây là bảng phân tích tất cả các công cụ và tiện ích mà MongoDB cung cấp Giám sát đám mây miễn phíMongoDB cung cấp giám sát đám mây miễn phí cho phiên bản cộng đồng của nó trong phiên bản 4. 0 trở lên. Sau khi được bật, bạn sẽ nhận được một URL duy nhất nơi bạn có thể xem dữ liệu được theo dõi của mình. Dữ liệu bao gồm
Bạn có thể bật giám sát đám mây miễn phí cho MongoDB chạy cục bộ của mình bằng cách chạy lệnh sau từ Mongo shell Bản saoBật tính năng giám sát đám mây miễn phí cho các phiên bản MongoDB cục bộ. Bạn có thể tắt giám sát đám mây bằng lệnh bên dưới. Bản saotiện íchMongoDB cung cấp hai tiện ích mạnh mẽ cung cấp ảnh chụp nhanh hoạt động cơ sở dữ liệu theo thời gian thực. bộ đếm cho loại truy vấn đang được thực thi và hoạt động đọc và ghi trên mỗi bộ sưu tập. Hãy xem xét cả hai tiện ích một cách ngắn gọn
Lệnh cơ sở dữ liệuNgoài các tiện ích trên, bạn có thể chạy một số lệnh cơ sở dữ liệu để lấy số liệu thống kê về cơ sở dữ liệu. Hãy có một cái nhìn tổng quan ngắn gọn về các lệnh này
Các công cụ giám sát MongoDB được lưu trữMongoDB Atlas đi kèm với bộ công cụ giám sát giúp quản lý việc triển khai MongoDB của bạn dễ dàng hơn. Công cụ báo cáo số liệu cho tất cả các nút trong cụm với các biểu đồ hữu ích về tổng số hoạt động, mức sử dụng mạng và kết nối Bộ giám sát MongoDB Atlas (Nguồn. MongoDB)Tương tự, phiên bản MongoDB được lưu trữ trên máy chủ được quản lý có tên là Enterprise Advanced đi kèm với Trình quản lý vận hành giám sát việc triển khai và bật cài đặt cảnh báo trên dữ liệu đã thu thập. Suy nghĩ cuối cùngTrong bài đăng này, chúng tôi đã xem xét một số chỉ số giám sát chính của MongoDB. MongoDB cung cấp một số công cụ tích hợp để truy cập ảnh chụp nhanh hiệu suất. Nó rất hữu ích trong trường hợp đăng ký hoặc gỡ lỗi nhanh. Nhưng bạn cần một hệ thống giám sát chuyên dụng để theo dõi hiệu suất của các phiên bản MongoDB của bạn theo thời gian Một công cụ giám sát cho phép bạn lưu trữ, truy vấn và trực quan hóa các số liệu giám sát MongoDB có thể giúp bạn gỡ lỗi các vấn đề về hiệu suất một cách nhanh chóng. Đối với các ứng dụng hiện đại dựa trên kiến trúc phân tán, điều quan trọng là phải tương quan các chỉ số MongoDB của bạn với phần còn lại của cơ sở hạ tầng ứng dụng Bạn có thể thiết lập giám sát MongoDB bằng APM nguồn mở - SigNoz. SigNoz được xây dựng để hỗ trợ OpenTelemetry, đang trở thành tiêu chuẩn thế giới để thiết lập các ứng dụng dựa trên đám mây Trong bài đăng sau, chúng tôi hướng dẫn bạn cách thiết lập giám sát MongoDB bằng OpenTelemetry và Signoz |