Khối lượng công việc MongoDB
Bài đăng trên blog này đã được cập nhật vào ngày 17 tháng 11 năm 2022 với kết quả điểm chuẩn mới nhất cho InfluxDB v1. 8. 10 và MongoDB v5. 0. 6. Để cung cấp cho bạn những phát hiện mới nhất, blog này được cập nhật thường xuyên với các số liệu điểm chuẩn mới nhất Show Tại InfluxData, một trong những câu hỏi phổ biến mà chúng tôi thường xuyên nhận được từ các nhà phát triển và kiến trúc sư trong vài tháng qua là, “Làm thế nào để InfluxDB so sánh với MongoDB về khối lượng công việc theo chuỗi thời gian?” . Đầu tiên, nếu họ đang bắt đầu một dự án hoàn toàn mới và thực hiện thẩm định đánh giá trực tiếp một vài giải pháp, thì việc tạo lưới so sánh của họ có thể hữu ích. Thứ hai, họ có thể đã sử dụng MongoDB để nhập dữ liệu trong một ứng dụng hiện có, nhưng bây giờ họ muốn xem cách họ có thể tích hợp bộ sưu tập số liệu vào hệ thống của mình và tin rằng có thể có giải pháp tốt hơn MongoDB cho tác vụ này Trong vài tuần qua, chúng tôi đã bắt đầu so sánh hiệu suất và các tính năng của InfluxDB và MongoDB đối với các khối lượng công việc theo chuỗi thời gian phổ biến, cụ thể là xem xét tốc độ nhập dữ liệu, nén dữ liệu trên đĩa và hiệu suất truy vấn. InfluxDB vượt trội so với MongoDB trong cả ba bài kiểm tra với 1. Thông lượng ghi lớn hơn 9 lần, trong khi sử dụng 7. Dung lượng ổ đĩa ít hơn gấp 3 lần và mang lại hiệu suất cao hơn gấp 5 lần khi nói đến tốc độ truy vấn Để đọc chi tiết đầy đủ về điểm chuẩn và phương pháp, hãy tải xuống “Đánh giá điểm chuẩn InfluxDB so với. Bài báo kỹ thuật về MongoDB cho Quản lý số liệu và dữ liệu chuỗi thời gian” hoặc xem hội thảo trên web được ghi lại Mục tiêu quan trọng nhất của chúng tôi là tạo ra một so sánh nhất quán, cập nhật, phản ánh những phát triển mới nhất trong cả InfluxDB và MongoDB với phạm vi phủ sóng sau này của các cơ sở dữ liệu và giải pháp chuỗi thời gian khác. Chúng tôi sẽ định kỳ chạy lại các điểm chuẩn này và cập nhật tài liệu kỹ thuật chi tiết với những phát hiện của chúng tôi. Tất cả mã cho các điểm chuẩn này đều có sẵn trên Github. Vui lòng mở các vấn đề hoặc lấy yêu cầu trên kho lưu trữ đó hoặc nếu bạn có bất kỳ câu hỏi, nhận xét hoặc đề xuất nào Bây giờ, chúng ta hãy xem kết quả… Phiên bản thử nghiệmInfluxDB v1. 8. 10 InfluxDB là một cơ sở dữ liệu chuỗi thời gian mã nguồn mở được viết bằng Go. Cốt lõi của nó là một công cụ lưu trữ được xây dựng tùy chỉnh có tên là Cây hợp nhất theo cấu trúc thời gian (TSM), được tối ưu hóa cho dữ liệu chuỗi thời gian. Được kiểm soát bởi một ngôn ngữ truy vấn giống như SQL tùy chỉnh có tên là InfluxQL, InfluxDB cung cấp hỗ trợ vượt trội cho các hàm toán học và thống kê trong các khoảng thời gian và hoàn hảo cho việc theo dõi tùy chỉnh và thu thập số liệu, phân tích thời gian thực, cùng với dữ liệu cảm biến và IoT MongoDB v5. 0. 6 MongoDB là một cơ sở dữ liệu hướng tài liệu mã nguồn mở, thường được gọi là cơ sở dữ liệu NoSQL, được viết bằng C và C++. Mặc dù nó thường không được coi là cơ sở dữ liệu chuỗi thời gian thực, nhưng những người tạo ra nó thường thúc đẩy việc sử dụng nó cho khối lượng công việc chuỗi thời gian. Nó cung cấp các nguyên mẫu mô hình hóa ở dạng dấu thời gian và nhóm, cung cấp cho người dùng khả năng lưu trữ và truy vấn dữ liệu chuỗi thời gian Về điểm chuẩnKhi xây dựng bộ điểm chuẩn đại diện, chúng tôi đã xác định các đặc điểm được đánh giá phổ biến nhất để làm việc với dữ liệu chuỗi thời gian. Chúng tôi đã xem xét hiệu suất trên ba vectơ
Về tập dữ liệuĐối với điểm chuẩn này, chúng tôi tập trung vào tập dữ liệu mô hình hóa trường hợp sử dụng chỉ số và giám sát DevOps phổ biến, trong đó một nhóm máy chủ báo cáo định kỳ các chỉ số ứng dụng và hệ thống theo khoảng thời gian đều đặn. Chúng tôi đã lấy mẫu 100 giá trị trên 9 hệ thống con (CPU, bộ nhớ, đĩa, đĩa I/O, kernel, mạng, Redis, PostgreSQL và Nginx) cứ sau 10 giây. Để so sánh chính, chúng tôi đã xem xét tập dữ liệu đại diện cho 100 máy chủ trong khoảng thời gian 6 giờ, thể hiện mức độ triển khai tương đối khiêm tốn
Đây chỉ là một tập hợp con của toàn bộ bộ điểm chuẩn, nhưng nó là một ví dụ đại diện. Nếu bạn quan tâm đến chi tiết bổ sung, bạn có thể đọc thêm về phương pháp thử nghiệm trên GitHub Viết hiệu suấtInfluxDB vượt trội hơn MongoDB 1. 9x khi nhập dữ liệu Nén trên đĩaInfluxDB vượt trội so với MongoDB bằng cách cung cấp 7. Nén tốt hơn gấp 3 lần Hiệu suất truy vấnInfluxDB vượt trội hơn MongoDB gấp 5 lần khi nói đến tốc độ truy vấn Tóm lượcCác bài kiểm tra điểm chuẩn và dữ liệu kết quả đã chứng minh rằng InfluxDB vượt trội so với MongoDB trong việc nhập dữ liệu và lưu trữ trên đĩa với một biên độ đáng kể. Đặc biệt
Cũng cần lưu ý rằng việc định cấu hình MongoDB để hoạt động với dữ liệu chuỗi thời gian không hề đơn giản. Nó yêu cầu các quyết định trước về cách cấu trúc các bộ sưu tập và loại dữ liệu của bạn, điều này có thể rất tốn thời gian và sẽ có tác động lâu dài đến cách bạn có thể tương tác với dữ liệu của mình và loại truy vấn nào bạn có thể chạy. Mặt khác, InfluxDB sẵn sàng sử dụng cho khối lượng công việc theo chuỗi thời gian mà không cần cấu hình bổ sung Tóm lại, chúng tôi rất khuyến khích các nhà phát triển và kiến trúc sư tự chạy các tiêu chuẩn này để xác minh độc lập kết quả trên phần cứng và bộ dữ liệu mà họ lựa chọn. Tuy nhiên, đối với những người đang tìm kiếm một điểm khởi đầu hợp lệ mà ở đó công nghệ sẽ cung cấp hiệu suất truy vấn, nén và nhập dữ liệu chuỗi thời gian tốt hơn “vượt trội”, InfluxDB rõ ràng là người chiến thắng trên nhiều phương diện, đặc biệt là khi các bộ dữ liệu trở nên Làm cách nào để tối ưu hóa hiệu suất MongoDB?Tối ưu hóa hiệu suất truy vấn . Tạo chỉ mục để hỗ trợ truy vấn Giới hạn số lượng kết quả truy vấn để giảm nhu cầu mạng Sử dụng phép chiếu để chỉ trả lại dữ liệu cần thiết Sử dụng $hint để chọn một chỉ mục cụ thể Sử dụng toán tử gia tăng để thực hiện thao tác phía máy chủ MongoDB có tính sẵn sàng cao không?Bộ bản sao MongoDB đảm bảo sao chép được thực thi bằng cách cung cấp dự phòng dữ liệu và tính sẵn sàng cao trên nhiều máy chủ MongoDB.
Cô lập khối lượng công việc là gì?Cách ly khối lượng công việc có nghĩa là tài nguyên được dành riêng cho một nhóm khối lượng công việc . Cách ly khối lượng công việc đạt được bằng cách định cấu hình tham số MIN_PERCENTAGE_RESOURCE lớn hơn 0 trong cú pháp CREATE WORKLOAD GROUP.
MongoDB có thể xử lý dữ liệu lớn không?MongoDB có tốt cho dữ liệu lớn không? . MongoDB rất tốt cho các tập dữ liệu lớn. MongoDB Atlas có thể xử lý các truy vấn được liên kết trên bộ lưu trữ đối tượng (e. g. , Amazon S3) và lưu trữ tài liệu. Yes, it most certainly is. MongoDB is great for large datasets. MongoDB Atlas can handle federated queries across object storage (e.g., Amazon S3) and document storage. |