Some interesting articles on uses of the topic, that might answer the
questions you have above:

If you have a smaller number of alerts that you want to constantly monitor
the first approach would work well.

For massively scalable bulk alerting the second approach will work better.
In the second approach each alert would be stored as an expression in the
index. An executor would run the expressions and distribute the alert. You
would need to write an expression that performed the push. For example the
expression you stored in Solr to be executed could be something like:


You would provide the logic for the push expression.

Joel Bernstein

On Sun, Apr 8, 2018 at 11:33 AM, SOLR4189 <> wrote:

> Hi all,
> I need to implement percolator functionality in SOLR (i.e. get all indexed
> docs that are matched to monitored query). How can I do this?
> I found out in Solr TopicStream class. If I understand right, using
> TopicStream with DaemonStream will give me percolator functionality, won't
> it? (like here  Continuous Pull Streaming
> <
> decorators>
> )
> Is it a good idea to use *Continuous Pull Streaming* in production? How
> many
> queries can I monitor in such way? ( I need up to 1000 queries and I have
> up
> to million indexed docs per day)
> And one more thing, I debug DaemonStream/TopicStream code and I don't
> understand what is the advantage of this over simple loop in which I'll
> send
> queries each X seconds/minutes/hours to SOLR? Will it work faster than
> simple loop? If yes, why? Due to filter query on checkpoint version
> (*solrParams.add("fq", "{!frange cost=100 incl=false
> l="+checkpoint+"}_version_")*)? I'll be happy to understand all advantages
> of using DaemonStream/TopicStream.
> Thank you.
> --
> Sent from:

Reply via email to