Percolate queries: Schemaless and expression filtering

In this article we discuss how schemaless docs can be used in Percolate Queries.

The Percolate Query feature allows storing not only fulltext matches, but also regular attribute filtering.
Until 2.7.0 this was limited to a single numeric attribute condition.

Now filtering can work with string and JSON attributes. The JSON filtering is interesting as you can test schemaless documents against stored queries. The filtering also now supports multiple attribute filtering and usage of expressions, which allows more complex stored criterias.

Percolate Queries: docs_id option

In this article we discuss the docs_id option which provides an easier manipulation of CALL PQ result set.

Let’s consider the following PQ batch call:

mysql> CALL PQ ('pq', ('{"title":"butter is good as", "id":3}', 
                       '{"title":"was butter","id":4}', 
                       '{"title":"sas was butter","id":5}', 
                       '{"title":"bas was butter", "id":6}', 
                       '{"title":"butter is good as","id":7}'), 
                 1 as docs_json ,1 as docs,1 as query);
| UID  | Documents | Query      | Tags | Filters |
|    1 | 1,5       | butter is  |      |         |
|    2 | 2,3,4     | butter was |      |         |
2 rows in set (0.00 sec)

What is wrong with this output?

Percolate queries: Manticore Search vs Luwak

In this article we test how percolate queries perform in Manticore Search and Luwak.


Recently we tested the performance of Percolate Queries in Manticore Search and Elasticsearch. Today we are looking at Luwak, a stored query engine based on Lucene search library.

When we developed Percolate Queries […]