Re: performance issues filtering a query with a long

From: Wan Bachtiar <wan.bachtiar@xxxxxxxxxxx>
To: mongodb-user <mongodb-user@xxxxxxxxxxxxxxxx>
Date: Thu, 5 May 2016 22:19:01 -0700 (PDT)
Why ads?


Hi, 

Depending on your use case and application, one solution is to segment off 
the data - a similar approach to the hybrid schema design 
<https://docs.mongodb.com/ecosystem/use-cases/storing-comments/#hybrid-schema-design>. 
You could try to use either time or application pagination to segment and 
reduce the searchable dataset. For example, search only articles from the 
past 3 days to reduce the amount of data to be filtered.

Worth noting that $nin 
<https://docs.mongodb.com/manual/reference/operator/query/nin/#nin> is not 
very selective since it often matches a large portion of the index 
<https://docs.mongodb.com/manual/indexes/>. As a result, a $nin query with 
an index may perform no better than a $nin query that must scan all 
documents in a collection. 

If possible, it is preferable to change the document structure such that 
queries can be performed on values that exist, instead of documents that 
don’t contain specific values. In addition, you can add other selective 
filters (i.e. date/timestamp) to increase the selectivity of $nin.

You may also find Socialite: Feed Service 
<https://github.com/mongodb-labs/socialite/blob/master/docs/feed.md#feed-service
a useful resource. 

Regards, 

Wan.


-- 
You received this message because you are subscribed to the Google Groups "mongodb-user"
group.

For other MongoDB technical support options, see: https://docs.mongodb.org/manual/support/
--- 
You received this message because you are subscribed to the Google Groups "mongodb-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mongodb-user+unsubscribe@xxxxxxxxxxxxxxxx.
To post to this group, send email to mongodb-user@xxxxxxxxxxxxxxxx.
Visit this group at https://groups.google.com/group/mongodb-user.
To view this discussion on the web visit https://groups.google.com/d/msgid/mongodb-user/bef532ab-f3d5-4fe3-9a57-a1529ede4454%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Why ads?