Community

MarkLogic 10 and Data Hub 5.0

Latest MarkLogic releases provide a smarter, simpler, and more secure way to integrate data.

Read Blog →

Company

Stay On Top Of Everything MarkLogic

Be the first to know! News, product information, and events delivered straight to your inbox.

Sign Me Up →

 
Knowledgebase: Performance Tuning
Fast searches: resolving from the indexes vs. filtering
13 March 2012 05:01 PM

Summary

Executing searches as "unfiltered" is an important performance optimization, particularly for large result sets. This article describes how "filtered" and "unfiltered" searches work, and what tradeoffs each option entails. In general, unfiltered index resolution is fast and filtering is slow. It is often possible to explicitly perform a search either unfiltered or filtered. 

Filtered Searches

In a typical search, MarkLogic Server will first do index resolution from the D-Nodes - which results in unfiltered search results. As a second step, ther Server will then do filtering of those unfiltered search results on the E-Nodes to remove false positives from the result set - which then results in filtered search results.

Unfiltered Searches

If you want to maximize your query performance, you will want to avoid filtering whenever possible - try to structure your documents and configure your indexes to maximize both query accuracy and speed through unfiltered index resolution alone. You can use the "unfiltered" option in both cts:search() and search:search() to test the accuracy of your unfiltered queries.

(8 vote(s))
Helpful
Not helpful

Comments (0)