MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Hiệu suất bị suy giảm nghiêm trọng với các điều kiện tham gia khác trong $ lookup (sử dụng đường ống dẫn)

Phiên bản thứ hai thêm một quá trình thực thi đường ống tổng hợp cho mỗi tài liệu trong bộ sưu tập đã kết hợp .

Tài liệu nói:

Đường dẫn được thực thi cho từng tài liệu trong bộ sưu tập, không phải cho từng tài liệu phù hợp.

Tùy thuộc vào dung lượng của bộ sưu tập (cả số lượng tài liệu và kích thước tài liệu), điều này có thể xuất hiện trong một khoảng thời gian thích hợp.

Có lý - tất cả các tài liệu bổ sung do bị loại bỏ giới hạn cũng phải có quy trình tổng hợp được thực thi cho chúng.

Có thể việc thực thi đường ống tổng hợp trên mỗi tài liệu không được tối ưu hóa như nó có thể. Ví dụ:nếu đường dẫn được thiết lập và chia nhỏ cho từng tài liệu, có thể dễ dàng có nhiều chi phí hơn trong that so với các điều kiện đối sánh $.

Việc thực thi một đường dẫn tổng hợp cho mỗi tài liệu được kết hợp cung cấp thêm tính linh hoạt. Nếu bạn cần sự linh hoạt này, việc thực thi đường ống có thể hợp lý, mặc dù hiệu suất cần được xem xét. Nếu không, bạn nên sử dụng một cách tiếp cận hiệu quả hơn.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Sử dụng $ stdDevSamp hoặc $ stdDevPop với Spring Mongo

  2. Tác động đến hiệu suất của kiểu dữ liệu chỉ mục trong MongoDB?

  3. Tôi nên sử dụng cơ sở dữ liệu NoSQL nào để ghi nhật ký?

  4. Di chuyển từ MongoDB sang HBase

  5. Mongoid - truy vấn theo tài liệu được tham chiếu