The query time predictor receives a Solr search request and in real time (1-3 milli seconds) predicts if the query is going to be slow or fast. This prediction can be used by the search infrastructure in multiple ways. At Trulia, the slow or fast prediction is used to route some requests to either a slow pool or a fast pool. This is done to ensure that critical user queries don't have to compete with complex, time consuming queries for resources. This leads to instantaneous query execution and hence, a pleasant user experience.
The query pattern recognition tool uses probabilistic topic modeling to find commonly recurring patterns in Solr search requests. These patterns can be quite useful as seen in the example here (https://github.com/trulia/thoth-ml/wiki/Query-Pattern-Recognition).
Here's the Thoth Machine Learning repository link : https://github.com/trulia/thoth-ml