Best schema design pattern to store user searches
What is the optimal way for storing user generated search quires, for (near) Real Time retrieval, when an item is added/modified that matches the user search parameters.

In our case we have a large product database, that will allow users to save searches, and get them as push messages for mobile, email, rss, sms, etc. The problem currently is that as the number of saved searches and products goes up, there is a bigger and bigger time gap between the sending of the first and last push message.
We currently have our data stored in a mysql and de-normalized in SOLR for fast searching, upon save an event is triggered that start an async process of finding the users who needs get notified about the new/changed product(s).

Of course the application also has to take into account that the item(product) should not be visible untill all users are notified, so that all potential customers will get access to the same item at the same time.

Any ideas or proposals ?
Best schema design pattern to store user searches
===

What is the optimal way for storing user generated search quires, for (near) Real Time retrieval, when an item is added/modified that matches the user search parameters.

In our case we have a large product database, that will allow users to save searches, and get them as push messages for mobile, email, rss, sms, etc. The problem currently is that as the number of saved searches and products goes up, there is a bigger and bigger time gap between the sending of the first and last push message.
We currently have our data stored in a mysql and de-normalized in SOLR for fast searching, upon save an event is triggered that start an async process of finding the users who needs get notified about the new/changed product(s).

Of course the application also has to take into account that the item(product) should not be visible untill all users are notified, so that all potential customers will get access to the same item at the same time.

Any ideas or proposals ?